 Welcome to the show, it's me, John Park. It's time for JP's product pick of the week. You are here just in time, and so is Lars. So thanks everyone for stopping by. And when I say stopping by, what do I mean? Well, first of all, just watching the show. But also, if you are interested in chatting about the show during the show, you can head over to the YouTube chat. Hey, Squirrel Oak, Devin's Workshop. Quinman 16, nice to see you. Thanks for stopping by. Or you can head on over to our Discord. So we have a Discord server, and there's shenanigans going on over there. That's pretty funny, DJ Devin. Nice work, fast work. And if you want to join that chat, just head to Adafruit.it slash Discord. Look for the live broadcast chat channel. Hello, Sir Princealot, Todd Bot, Kiyoshi, Devin, Segrover, Jim Hendrickson, D-Bodog, Deba Dog, Debao, Ba, Ba, Ba, Ba, Ba. Mike P, hello. Jim Hendrickson, Dexter. Thanks for stopping by, everyone, DCD. And thanks for the heads up on the busted link. Speaking of links, before I go any further, I'll tell you, you can head right over here to this product page. 5650 is the product ID. You watch this show inside of the product page, and you will get a big humongous discount on the product pick this week just by showing up and throwing that in your cart. Ooh, I don't see the discount happening yet, actually, let's see. Oh, mine's not refreshing. I don't know what's happening. All right, well, if anyone in the chat can get in touch with new products or with Jelly and see what's going on, it looks like no discount yet. That's a weird one. All right, hold on one second. I'm gonna see if I can ping someone real quick. Thanks for your patience. Yeah, discount is not shown for sure. Weird, Harold. Mm-hmm, mm-hmm, mm-hmm, mm-hmm, mm-hmm, mm-hmm, mm-hmm. One second, we'll see if we can do this in real time. Mm-hmm, mm-hmm, mm-hmm. All right, we'll see. Hopefully this'll take place during the show. If not, stick around. I'm sure we'll get it put in place later. But either way, head on over to this URL and you can watch the show from inside of here. And before I go any further talking about the very cool product pick this week, I'm gonna have Lady Aida jump back in time a little bit to, I think, maybe the end of December it was, and introduce this for us. So take it away, Lady Aida. Kido is a Scorpio, so this is... Scorpio. So this is an RP2040, and this board is feather shaped. It has all the feather pins that you know and love. But on the end there, there's another two by eight header. One row is ground, the other is eight contiguous pins connected to the PIO state machine inside. And they're contiguous, and so they're really good for driving lots of NeoPixels, especially since the RP2040 has 264K of RAM. So there's a ton of RAM. It's got the PIO state machine, which is excellent for driving NeoPixels. It's a dual core, so of course you could have all your... In addition to having all your NeoPixels DMA, you could have two cores if you wanted to do extra computation on one core and then blit in the other one and maybe get wifi data or something and use that to calculate or adjust what the graphics should be shown on your NeoPixels are. But the RP2040 makes for a perfect NeoPixel driver. And so this board is basically designed specifically for, you want a feather, you want an RP2040, you wanna drive a ton of NeoPixels and we've got Arduino and circuit Python code that does that again, all with DMA. So you don't have to sit there and like toggle each pin and hold your processor hostage. The RPIO peripheral goes off and does it and you can check when it's done and then you can compute the next frame of data. So on the left hand side, you get the business end, USB-C battery, the reset button, regulator, battery charging, middle is the RP2040 chip. There's a small NeoPixel on D4 if you want to have onboard notification to tell you what the status is. There's eight megabytes of flash memory so you can use that for your program storage or of course, both in Arduino and circuit Python, you can put a file system on it if you want to have images and configuration data, what have you stored on that flash memory? There's tons of flash memory. Boot button for entering into boot mode that's also available as a user button. I think it's on GPIO 7. So you can once the RP2040 is booted, that button becomes a user input button. There's a vertical STEMI QT pin and then below that you see a chip and some resistor packs. That is the logic level shifter. So even though a lot of modern NeoPixel strips are happy with three-volt logic, not all of them are, especially if you're giving them 5.5 volts of power. And so there's an onboard logic level shifter that'll take those eight signal pins and shift them up. I think it's pins 16 to 23. So those GPIOs get shifted up from three volts to five volts, whatever is on the USB port. And then there's 100 ohm resistors just to kind of reduce any ringing effect, especially with long wires going into your NeoPixels. And then on the back, if you look at a quarter shot, there is, if you happen to want to configure it, on the back you can change the VLogic, the logic level output from five volts to three volts, say you don't want to drive five volts signal into something you're driving non NeoPixels or something that requires a lower level voltage. And also you can change the direction of that shifter. It's nominally only output, but if you want to turn this into, say, a logic analyzer, you can change the direction to be inputs and it's five volts safe because it's using a five volts safe level shifter. And then that signal could come in and you could turn this into, say, like an eight channel logic analyzer and use some open source software to do so. But we really think this would be great for people making LED art because we've seen a lot of art projects in New York and online where people have massive displays of NeoPixels. Oftentimes using unfortunately chips and microcontrollers are no longer available or they're very hard to get right now, but the RP2040 is really easy to get. So we think using the NeoPixelate library that we've got or you can even, because this chip has enough RAM and is pretty fast, you can use the NeoPixelate HDR library and that adds dithering, some pixel subsampling which basically means that not only do you get that eight bits per color, 24 bits per pixel color, but you also get another two by doing some temporal dithering. Very good for when you're doing gamma correction or you have low brightness LEDs. A lot of people notice that because the LED brightness is linearly PWM'd, but our eye is kind of a logarithmic. LEDs that are at the lower brightness level, the brightness shifts change more dramatically than at the higher level. With dithering, you get an extra couple of bits. It smooths that out and makes it a little bit more of an elegant distribution at the lower brightness levels. All right, and that's a score. I love PT whispering, that's a score. Kiddo is a Scorpio, so let's see. I can't get enough of that. So first of all, if you were wondering where that discount went, Angelica from New Products just went and updated that, so it is live now, so sorry for any consternation or confusion there, but we're all set on a big juicy discount on this week's product pick. Here it is, check this out. Look at this beautiful board. Even the trace routing is stylish on the back of this, huh? Look at that, Scorpio, little tail section there. I like this passive that's on the RP20, zero. But let me fire this one up for a dramatic introduction to this, this right here, that's the product pick of the week this week. It is the Feather RP2040 Scorpio. It's an eight channel neopixel drive-in feather, so we can use the neopixel eight library inside of Arduino and in circuit Python to really beautifully quickly animate neopixel LEDs up to eight strips or rings of them, and it's all using a PIO state machine, programmable IO, so it really leaves the other processing free for you to do other stuff on the board, such as read inputs or write to displays. So really, really excellent DMA over these eight channels that are broken out especially just for neopixels. Let's see, what more can I say about it? Let's, first of all, let me jump over to, there's the page right there, I wanted to show you that that now has a 50% off discount. So for $7.25, unbelievable, mind blown, you can get what is, first of all, just a heck of a great feather. It has USB-C on it, it has battery charging, it has all of the normal feather pins that you've known to, you've come to know and love. CRP2040 chip, it's got a ton of RAM on it, ton of storage on it, and it has these eight consecutive pins broken out right on the tail there so that we can hook that up to different types of connectors to run our neopixel strips. So let's, first of all, jump into, how about this? Let me show you a little down view here and take that screen off of there, there we go. So in it, I don't have all of them here, but we do pack in a couple of really great double pin header rows, double row eight pin headers. So this one here is this nice right angle one, that's the one I've got set up on the one that Lars is elevating up to the skies with. So that can go in a couple of different ways, but this is a nice one right here, just off to the edge and you can plug in an IDC connector into that, you can plug pins into that from sort of single header pins if you want. We also, I forgot mine, but here's, I've mocked one up with two normal sets of headers, but we pack in there a double row of straight header pins so you can plug something straight in from the top, depending on your configuration that you're using. And the, if you check out the learn guide here, you'll see some explanation of some of those methods of connecting. So you can see here a whole bunch of neopixel strips, it doesn't have to be strips, it could be other configurations, but strips are nice and pretty typical. Here are the head out and you'll see at the bottom of the usual feather pin out diagram, we have all of these GPIOs that are reserved just for this use. Now, looking at the bottom of the board, as Leigh Data mentioned, you've got a couple of jumpers there that are configured for the most typical use, which is your outputting using five volt logic. And that presumes that you are driving your neopixels from five volts, either just a few of them from the USB five volt on here, but more typically from an external power supply. So I've got a five volt, 10 amp power brick running this one right here. You can, however, use three volt logic and there's a jumper you can cut for that. And you can also change these from outputs to inputs. So if you wanted to use this for something such as a logic analyzer, you can use all eight of those pins as inputs instead of outputs. So let's, if you keep looking in here, we've got this little section on assembly. This will show you how to put together your usual header stuff. You've got same choices you always do with those. However, if you look at this eight by IO section down at the bottom there, we've got those are a row, it's actually two rows, if you look at those, see the ones that are numbered there, that's on the bottom view of it. Those are the IO, the eight IO pins. They're actually zero through seven. We're just, one is cut off in that view there. And then under it are a bunch of ground pins. So you can use those to ground all of your strips. And then if you look at some of these options here that Phil B put together, here's a really nice setup where he's got some, an eight by two row IDC header, which is then this ribbon cable being split out into a bunch of logic or rather data and ground. And then he's got separate power for those and then a DC power supply. I'll show you how I've got this Lars one setup in a second, but first what I wanted to do is show you something kind of cool. You can, when you're testing these out, let me put a little view of my down shooter there. I'll try to stay out of the way. So if I take, that's not it, if I take, that's a different feather. If I take this one here, I'm gonna just, since I've got some torque, I can get some torque on this. I can actually just temporarily, this is not a good idea. Don't do this, but I've done it. Since I didn't wanna solder this one in yet on the second one, what I'm gonna do is I'm just gonna set it like that. I'm going to pull power on this feather here. And I will try to lift this up so you can see. So here you can see I've got a feather running to a ribbon cable. And I'll show you this full setup in a second, but first what I'll do is I'm just gonna plug this one in. This has some different code running on it. And so long as I keep decent pressure on that, it's gonna keep contact. Don't do this, this is a bad idea, but I'll go plug this in. And now we have one of the strand tests. I think this is, forget which one this is. One of the strand tests from the Arduino. I believe this is the HDR one. So this one has nicer dithering on it. You'll see more subtle changes to it as they fade. And this one just happens to be a different pattern running in different direction. So again, power is not coming from my feather, just the data and then a common ground. So I'll plug that first one in. And this one is running, let me get this out of the way here, there we go. This one is running CircuitPython, also using the NeoPixel 8 library in there with some demo code that was written by Jepler. And I'll show you that in a second. So what I wanted to do is show you how I have this set up because what you get with the NeoPixel 8 library and these Scorpio boards is a great opportunity to do a bunch of wiring because you're probably plugging a lot of stuff into it. So I will, first of all, ask Lars to step aside. And so this is just eight 60 NeoPixel strips, eight strips, 60, so that's 480 I think, NeoPixels that I'm running on here. And that's definitely something you want an external supply for. I'll go ahead and unplug power on this and I'll unplug my feather and I'm gonna try to find a neat way to plop this down here without breaking anything or knocking over my coffee, there we go. So here is a down view of this. And I'm just gonna try to focus on some of the lower sections on there of kind of a narrow depth of the field here. Okay, so here's what we've got. We have Feather Scorpio there and that has the right angle headers and then I'm using one of these IDC ribbon cables. It's actually the same ones I used to power Eurorack modules. So I have a lot of these things around. The red stripe in this case I'm using to indicate the zero, the first pin there, zero. This is not keyed in a sense. You can put it on backwards, don't. So you gotta pay attention to which way you put it on. And then I'm following that to, actually I'm using one of these really cool breakouts that we have. These are I think DIN connector breakouts for IDC and this one is keyed. So you can't put it in wrong, which is kind of cool. And the main reason I did this is that it meant I didn't have to do any soldering of all of these. So all the white wires there are the data lines going into all of the eight neopixel strips and then all the black connectors or wires there are connected to grounds. So the odd numbered pins essentially here are the even ones on my feather. Those are pins zero, four, zero, two, four, and so on. And then you'll see I've got all of the power side, power side of the neopixel strips broken out to some of our really cool snap connectors here. And I'm being extra cautious here or maybe going a little above and beyond by essentially I have two ground lines to each neopixel strip. Don't really need those, but they're there and you need at least one, one ground for common coming from the DC power supply. But I didn't want to cut all of these entirely off so I decided to just keep them neat by going into some of these connectors here. So that's, you can see one strip here has the four wires. Some neopixel strips will only have three wires and that'll make your life a little easier. And then I have this running to one of our old DC breakouts and then I have the five volts, 10 amp connector. So that is just one way that you can connect those up. And I just happened to have taken all of their reels and kind of kept them onto their reel. They come on these little reels and it makes it a little easier for me to hang these. Now I'll put those back up there. And there are neater or rather there are smaller wiring options you could do. If you look at some of the ones that Phil B did, he has some really nice, really nice example there of a much smaller, you probably wouldn't want to jam all this into a costume unless it was a big one. But I'll plug that back in there and we should get our little light show going back again. Let's see the code examples I mentioned. If you go to the learn guide, this one has a section on Arduino. If you follow that, it'll basically point you at our NeoPixel 8 library and how to get that set up and run some examples. And then there's also this circuit Python example here using Adafruit NeoPixel 8. So you are importing the NeoPixel 8 library which is gonna run all eight of those strands. And then this one, this example is actually also using the LED animation library. So it's using both of those together. That means we can do things like Comet, which is what I have running right here. And I'll show you kind of a neat little shift I can do on this. These are right now running with sort of an offset which looks really cool. If you look at my code, since this is circuit Python, you can iterate on it really, really quickly. Let me pull some screens off of there real quick. There we go. So right here in the code, there is a section that offsets the timing of the strands, advance the animations by varying amounts so they become staggered. So I'm just gonna comment that and save it. And now you'll see we'll get a group of them running together. And this runs really smooth. I think there might be a little bit of a frame stutter just with the video that I'm broadcasting, but in real life these are super, super smooth. And there's some nice little easy things you can do when testing and playing with these. We could say, let's flip that reverse equals true. I'll save that. And now we're running from top to bottom. We can change the colors. We can change the number of strands. We can, if you tell it you've got, let's say, 30 instead of 60, whoops, I said 300. If you say you've got 30 pixels, then you can test just a little small section running here. Let me hold that up so you can see it. There you go. Nice little section there. I don't know why that's still running reverse. Oh, I said reverse is true. Okay, change that to false again. This is the beginning of the strip even though I have it mounted upside down. Let's save there. So now we'll see 30 running out of there, which is kind of fun. So any animations you wanna do, if you can do them with NeoPixel 8, that'll make this really straightforward to use. And also by the way, I'm running at I think 60% brightness. Let's see, I haven't tested this at full brightness. Let's go to 1.0 on the brightness. It'll probably look almost white in the camera view. Wow, those are bright now. Let's set that to the full 60. You probably be able to tell the brightness a little better just by looking at it reflected off of something like Lars here. You can see that's quite a lot of light. So you can use these for lighting. If you wanna do some creative lighting for photography or video, that's definitely a possibility for sure. All right, let's see. What kind of questions do we have? Yes, the discount is live. It's like I fixed, thanks again to Jelly. Yep, people talking about power consumption. So I didn't actually do the math on this. I think at most lighting, maybe 10 or 12 of them on each strip, just because of how Comet is arranged, times eight. So I'm not doing any full white. So it's probably not 60 milliamps per. 60 milliamps per is kind of a rule of thumb if you have one pixel at full brightness on all three colored Iodes. So important to do the math if you're trying to figure out battery life, if you're trying to figure out if you have the big enough power supply. I just went big and went with the 10 amp supply and I'm fine with that. But you'll see actually, if you go into Learn Guides, there's a, I don't know if it's out yet, but there's one that Noe was working on, which is a small Christmas tree and it just has maybe 200 pixels total. And he's running it off of just USB five volts. So depending on how you're animating stuff, you can get away with not using an external supply. All right, so yeah, the glow is definitely everything in the shop is going to glow now, right? We can glow the board over there behind me probably. That splash effect of that light. All right, so don't forget head on over there if you want to get the discount 5650 as the product ID, you're going to get that for a half off, maximum of 10 per customer. DCD asks, is there a shopping list to reproduce your demo? There is not, but I think if you look at just that main Learn Guide and the Neopixelate Guide, that'll get you really close. I can throw something up in the chat after the show, but it's a nice little breakout that we have that made my life easy for hooking that up. Oh yeah, there's the Learn Guide is out. I can pop this up in the Discord there. That's the holiday tree with the Scorpio that Noah just put together. And I think that's going to do it. So let me grab this one here and a little hanger. And I will say that right there is the product pick for today. It is the Feather RP2040 Scorpio with eight channels of Neopixel driving goodness. All right, thanks everyone for stopping by. Don't forget, go throw those in your cart. You don't need a coupon code or anything. It's just going to be this 50% off just through to the end of the show roughly. Pick some up and do some good Neopixel Scorpio action. Oh, I've got a nice, yeah, we've got a little animated scorpion right there. He's super cool. All right, thanks everyone for Adafruit Industries, I'm John Park and this has been JP's product pick of the week. See you next time.