 Welcome to the show. It's me, John Park. It's time for JP's product pick of the week. And I want to thank you all so much for stopping by. Hey, thin man, thanks. Yes, I'm doing well. Hope you are too. Who am I talking to? You may ask. The chat right over here is in our Discord server. So if you're looking for the chat, head on over to Adafru.it slash Discord and look for the live broadcast chat channel. We've also got some people over in our YouTube chat. Hey, Dave Odessa and Tech of the World. Nice to see you. And off we go. So we've already got some Photoshopery going on. That was quick. Thank you so much for that. So I'm going to actually, first off, point you at these URLs, because we've actually got three discounted products. They're all related to each other this week. So if you go to these URLs, you can go to any of them. If you head to that QR code, it's kind of the main one. But this video plays from inside the product page. Just scroll down a little bit. You'll see some icons down there for video. And this show is happening right in there. And like the sign says, you get a big discount during the live stream. So we don't use a coupon code for this or anything like that. We don't extend rain checks. We don't back order things. We just say if you are here now during the live stream and you want to get in on the discount, I believe we have a 50% off on each of these three items, a maximum of 10 on them. That's usually what we set it to. Just throw them in your cart and buy them. You don't need to do anything else special. Just get them for that good price. In fact, I'll double check that those are happening. They are. They are. And we have a stock of these that we reserve for the show. People sometimes ask how that works. We usually have a stock of these that we hold so that we know we have a certain number of them before the show starts. Hey, Liz, BlitzCity DIY just showed up in the chat. So anyway, yeah, head to these URLs and QR codes to get a jumpstart on it. And the next thing I'd like to do is have Lady Aida introduce us to this product from her new, new, new segments. Please take it away, Lady Aida. Product 292, a classic. This is our I-squared-C and SPI LCD Backpack. It got a huge update. I was going to update this to add semi-QT and then I was like, while I'm here, let's kind of fix all the stuff that I wanted to update with it. So this is a backpack you saw around the back of your 16 by 2 or 20 by 4 character LCD with a backlight. And it's just a very simple, but very effective I-squared-C or SPI, you know, we've latched, it's a 595 chip controller. It basically means you just need 6 GPIO to control LCD. You only need 2 or, in the case of SPI, 3 of them. And it just works very well. We have library code in Arduino and in CircuitPython. And this board's been around for so long that people have been using it and there's lots of projects. So the new version is mechanically the same size, right? Like the holes are in the same place. Actually, I added another mounting wall because I made the parts a little smaller. But it adds, okay, so go over here. It's 2 semi-QT ports in the bottom and the right because I wanted to keep the terminal blocks in the same location. There's a small on LED that'll let you know when it's powered. The thing that I like the most is that I've updated it to have a little boost converter. It now has a switch cap converter that will take the input and give you 5 volts, which means that you can run this off of 3 volt power. The previous version was 5 volts only. LCDs tend to need 5 volts for power and logic. Sometimes you can run them on 3, but you know, if you want the backlight to be nice and bright, you want 5 volts. So this will boost the voltage from 3 to 5 for you. So you can use it with your QDPy or your RP2040. I also updated the contrast potentiometer to be a lot nicer. The previous one was kind of this SMT potentiometer, which they work and they're very reliable, but I wanted one that was easier to turn with a simple screwdriver. Other than that, it's the same design and so you can use all the code that we've got. A semi-QTFI just easier to use overall better. Wow, that is a ringing endorsement overall better. So let's check it out. These are actually the three product picks that I've got this week and I'll leave this screen like this while I say. These are my product picks of the week this week. It is the SPI i2C LCD character backpack as well as the 20x4 and the 16x2 LCD displays. So let's take a look at these one by one. So first of all here, let me jump let me jump back to here. This is sort of the main boss here. This is the most important part. This allows you to connect to your micro controller either with two pins using i2C or three using SPI and control your characters. We have nice libraries for Arduino and for Circuit Python that allow you to set things such as the characters scrolling, moving them around. You can use special characters. You have up to eight custom characters that can be any design you want. I'll show you a little bit about that in a second. And one of the really nice things about this is that it mounts to the back of the display. So here's a typical display. This board mounts to the back like that and now you don't have to have your micro controller with a bunch of goofy wires and terminal blocks and so on. You can actually just use a STEMAQT connector. Something like, let me take one apart here, something like a QT pipe plugged into one of those STEMAQTs and you're off to the races. You can use either a battery to power all of that or you can use USB. It's a pretty common way to do it. And then we have two different displays here. There's actually more than these two in the store that will work with this but these are kind of the two that we recommend and these are the ones that we have on discount today. So these are a 16 character by two lines and this is 20 characters by four lines that you have. Both of these are reverse displays with white on blue so there's a large LED element under there that's blue. And why don't I show you these, I'll show you in the overhead in a second but I can show you, here's one in action. So you can see I've got a QT pi, I've got my backpack back there, and then I've got the display. Camera's a little bright here. Let's go to the overhead for that and I can adjust my exposure down to something that'll look nice. So here you can see, just a little bit. Okay so here you can see I've got four lines on this one, I've got some blinking cursor which is part of the library. Notice the J and P, those are custom fonts so I did a couple of custom letters. Same with that little sort of space invader guy who's who's flying along on the bottom there, it's a custom. So I filled three of the eight custom slots and then you can just call them using an address. Here you can also see I'm doing some of the sort of automated scrolling, moving here I'm using the little move right command and then I'll run this set of text and then you scroll to kind of move that off to the side and rearrange that. And as Lady Aida mentioned we now have on the back here sort of smaller nicer little potentiometer for adjusting the contrast. So I'll see if I can still have, yeah we can still have a focus on that. So I'm going to take just a little screwdriver, put that in the back there and you can see you can go all the way from this almost non-reverse look which is kind of cool and then in the opposite direction we can go about right there, it looks pretty nice. You can depending on what you're doing you kind of get away with lower contrast and getting rid of those those visible blocks or you can just go full blown like that. So once you set that it's pretty stable so you can kind of set that and forget that and leave it like that. So that's a large one, that's the the big 20 by 4 character display. One thing I did here with the board you can see the board has I think it's 16 pins here for soldering down to this fairly standard backpack set of connectors. You can, if you want, solder that directly on there and and clip those and get a nice svelte display. You can also, let me adjust my contrast or my exposure a little bit, you can also flip it up like this if you're trying to go minimum thickness. So depending on what you're mounting this into you may want to go, you may have bezel space but you just want it to be really thin like you're putting up against a wall or something. This can go in that direction or that direction and buy yourself a little bit of extra space. You could also mount it from the top like that and that would that would eliminate sort of any any points on the board being lower than your display. You can also use a set of headers if you want some versatility especially if you're prototyping. So I took our board our little LCD driver board there and put some socket headers on there. You can plug that in like that. Obviously that sticks out a lot more but now you can swap that onto different displays for testing. In this example actually I've also hooked up a rotary encoder just to give a sort of pseudo example of a project. So I'm going to take cutie pi which is plugged in over stem of QT to my rotary encoder and then I've got that plugged into the display and now I'll give power to my cutie pi and that's boosting that up to five volts and let's let this start back up adjust my exposure there and a little closer and yeah that focus looks good. So now I've got a couple of functions I can do with my little knob here. I can rotate that to move the text around oh that's a little take that exposure down that's a little better. So I can move that text side to side with a fairly simple bit of code. I'll show you the code in a second here. I can also cut the LED so you can turn off the backlight and depending on your exposure here you can now use it as a essentially a non-backlit and it's an inverted display. We have both regular and inverted displays that you can use with this. So you can see depending on your your conditions this may be what you want maybe more legible or you may want to go to the turn on that that LED there. I don't believe we can control brightness from the library but it's possible you could just PWM the the LED from a different pin but I don't think the the library allows for brightness control in case anyone was wondering about that. Here you can see actually also I have what I consider to be the minimum viable Adafruit logo so I made a little custom character here and I can call that from address zero and it is the tiniest little Adafruit flower that I could draw in the essentially five by eight pixel space that each character occupies that's the size of size of those there. Yeah so someone asked the LCD screen needs five volts yeah so the three volts is coming from my Qt Pi over i squared C and there's a boost happening on the LCD driver board that brings that up to five volts for for use by the display. So let's see before I go further let's jump into product page here so you can see we have this one's product 292 that's a pretty early one it's just been revised a whole bunch with this latest revision also including pretty pins to or not pretty pins penguin to use nicer looking silk screen graphics on it in fonts. We've got the two stem of qt ports on it and also the new contrast potentiometer on there. If you want to get a display these are the two that we have on sale today as well for half price so there's the 16 by 2. It comes with a 10k trimmer pot that you don't need depending on I think back when you're hooking it up on a breadboard to an Arduino or something we I think we recommended this but you don't need that anymore so that's just a little freebie that's in there and you've got more than enough header pin there to plug that into the board and then we also have this much bigger one the 20 by 4 get a whole lot of text on there with that big guy right there and these have a nice sturdy metal frame around them by the way so the the display isn't going anywhere and the integrated led backlight is underneath there so it's all on one nice handy package there with mounting screws so you can build that into a project. If you take a look at the learn guide here you find mine this will tell you everything you need to know about the pinouts on the board take a look here tells you about the power all of the io pins of course you don't have to use stem acuity you can connect up over the wires there are these terminal blocks that come with it and those can be soldered right to the bottom of the board there and then you can run some wires stranded wires work best and screw them in from your microcontroller you could also solder to those points directly or if you don't want to use i2c you're not going to use the stem acuity port you can go over spi as well and this board essentially has two multiplexing expansion chips built onto it so there's the mcp 23008 which is the expander for i2c i think that gives you eight pins i think there's one free maybe seven are used for the lcd and there's also the 74 hc 595 which is the spi expansion pin so both or chip so both of those are built onto there if you want to use spi there's a jumper for that if you want to use multiple of these boards on a single i2c bus on one microcontroller we have address jumpers on it let's see if we have those let's see we can do i'm not sure what the maximum we can do on there is how many boards you can run but if you just look on the bottom no i'm lying it's on the top yeah on the top of the board there are your i2c address jumpers so you can switch that to a different different address if you want uh there's a little discussion here actually about which lcd to use so one thing we do have are there are rgb leds here's or lcd's rather so it's lcd with an rgb backlight this is a different model i'm not sure which one this was i i've had this one just in a drawer for a decade probably but this will work so if we take a look here let me go back to the down camera for a second i'm going to go ahead and unplug this one and you can see there's the convenience of having that on a header rather than soldered to it and now i can plug in this is an rgb lcd backlight it has two extra pins that i clipped because i had them already soldered uh just because we're not going to use those these these have 18 and the the board has 16 so those two extra pins are for the blue and the green element this board does not control rgb just want to want to repeat that so the rgb displays can be used but you will need to run two spare gpio pins from your microcontroller so it's going to be a wiring situation up to those pins that said there are still uses for these so i've got the first pin connected which happens to be red so if you plug in rgb board in like this you're going to get a red backlight reset this board come on you can do it i'm not sure what is happening with this one i say you can use these and i promise i've been i've been using it this one's decided to uh fail let me pull the rotary encoder out of the mix there by the way we've got stem acute on the bottom and also on the side depending on how you want to plug that in oh turn up the potentiometer thank you who said that tackle the world of course it's the potentiometer i bet uh let's let's see so well yeah that's a great sometimes this is this is a real easy way to fool yourself it'll look like your display is just straight up not working and then if you adjust the the pot sometimes it uh comes to life let's see if it's still working with the the proper display it's not a good demo for for the hey yeah i promise it'll work with other displays for some reason it's not right now i'm sure that's something i did i didn't test it on this usb oh no you know what it does look like i have uh done something terrible probably to the code on this board let's um while things are still working i'm going to plug this other one in without messing with it uh just so i can show you a little bit of code on this one so let's see how's this one doing okay so this one's still working so i'll go back to that in a second but since since this is actually up and running uh i wanted to show you the code for this uh so let's see if we jump to this view give me one second to point to this screen capture at the right thing i was messing around with wirecast before uh so i'm just gonna open code running on uh the little cutie pie that's on that board circuit pie drive code uh and so you can see here to to talk to these displays by the way before i go any further i did want to do a live um protective film peel here we go uh so if you look here we've got the library ate a fruit character lcd uh importing that as character lcd and then uh in this code i was actually preparing it for running on both types of displays the 20 by four or the 16 by two so i had a um a variable for this called is big true and then i have different things happening in code i kind of abandoned that wrote different code for that other one so i don't know if we'll see that up here anywhere else but the the key things that happen are we set up an i squared c bus here in this case board dot stemma i squared c uh and then i create an object called lcd which is the character lcd over i squared c there's also a variant for spi uh and we feed it the number of columns and rows in this case 20 by four um and then if we check out uh some of the commands that we get lcd backlight equals true on that other demo the one that's not working right now is actually turning that backlight on and off using the potentiometer knob so you can do that while it's running uh you can maybe do do a little sleep if you're trying to do a low power consumption thing you can shut off the lcd when it's not in use these are some special characters that i made so i made a check mark a triangle that little space invader and then that j and the p so when you see the the j p's product pick uh text go by the j and the p are are kind of fancy and those are just custom built pixel art essentially with this little five by eight bytecode for which of the little dots are lit up what patterns lit up there's a really nice generator i believe if you look in the main guide actually let me bring bring that learn guide back up uh if you look in this guide under i think the circuit python usage it's probably also listed in the arduino usage but this is the one i was looking at uh you'll find is it in here oh it might be in the docs i yeah i might have gone to the read the docs uh to find there's a link to a website that lets you do character lcd pixel art and it outputs the the bytecode that you need for it so yeah if you look look in the library uh look at the um read the docs on this that's where you'll find that and maybe i'll maybe i'll go to that at the end um so back to the code here so yeah i'm creating these arrays that are these special characters here's where i've actually cast them into three of the eight available memory slots on the uh driver board so create char and then i'm putting it in a location zero one and two uh and which pattern char j char p char invader um and then if you uh take a look at the main code here this is just kind of this little attract loop thing i have going here it's just not optimized code but it's just uh doing what you see so first thing that happens i turn off blink and i turn off cursor i clear the screen i set the cursor to the home uh position zero zero uh then i write out this message which has the fancy j the fancy p apostrophe s product pick so that's that first line uh then i set the cursor in a specific position so you can move the cursor around here i'm saying four over one line down then i'm saying of the week wait a little bit move the cursor uh i think i don't know why i moved that cursor actually clear it write a different message that's that little space invader i'm using the lcd move right command to move the little space invader guy across clear it go back to the home uh and then i'm writing a different message and using the move left to sort of scroll that across so this is uh real simple this is based just on some of the example code that you can find there nothing all that fancy um but out of stubbornness let me see if the code still exists on the other cutie pie and see if we can get that to work oh by the way that that was not going to work with uh the stem of qt rotary encoder unplugged i'm sure was having a i square c bus error trying to find that let's see if that just some unplugging and replugging fixes things or not and let me try to see if i can open the code for this one okay good sign the code still exists uh let me point my window at that okay uh so here you can see oh the demo came up okay that's good i won't mess with that other one for a moment uh so here you can see i'm able to do the same sort of stuff i've set up the display this time as 16 by 2 and then in my main loop after i have already drawn what i'm going to draw so i have these little custom ate a fruit flowers and then the message ate a fruit lcd 16 by 2 uh then the main loop here is just using the rotary encoder to change the lcd move right and move left so that command lcd dot move right just moves you one character over to the right you can go right off the screen it doesn't mind and i think i i didn't set any limits so i could keep scrolling for a mile over that way if i want but i'm gonna have to unscrew to bring it back over here uh and then i set that uh encoder it's a better demo if you could see so here's here's me moving that encoder to move the text around and then i can click that to turn the the backlight on and off if we boost that exposure uh you can see the text is still there that's exactly what it looks like just normally we're shining through uh with with that blue backlight there all right so let me know if anyone's got questions uh in the chats i'll check those out um mike p says curious would the code be able to determine which lcds connect automatically big screen versus small screen not that i'm aware of no i don't uh i don't know that there's any anyway for the driver board to know what's plugged into it it's just talking to some pins maybe but i don't think i don't think i know who i uh yeah and uh thanks dj devin three let me bring let me bring up the discord here uh you pointed out there's the three url so these are three separate things we don't if you just buy the driver board uh it's a neat driver board but it won't do anything for you without a display actually that's not quite true you can use it to drive other things if you want to uh it could be just any general i o expansion that you want uh but it's with the libraries it's designed for uh these displays so pick up one of these displays per uh backpack that you get or you can like i said you can use some of the other displays uh i just broke it but let me try it again so i'm gonna carefully power down the qt pie unplug one lcd i'll plug in the other lcd that looks good uh pick up the usb cable that fell to the floor and let's just see let's give it a moment i won't rush to any assumptions i think this one did take a little while to start when that blue one came up a moment ago yep there it is not sure why it's taken that long i think i was just being impatient before so here you can see the uh this is one of the rgb leds this one is a positive display not not the negative type but same code running on it doesn't the board doesn't know that that's any different here you can these are better for if you're going to turn off your backlight these ones are easier to see these positive versus the inverted displays and then due to uh some good luck and the way that this is arranged you can safely jumper some of those red green blue diodes so here you can see this is straight red and then i'm sort of mixing in a little bit of the green by jumpering those uh so you could i don't have a cable that'll do it you could bring in some of the blue instead you could go for all of them uh but like i said this there's not a direct way to control rgb from uh this backpack so it's all it's all shenanigans and and hooking up to pins there if you want to do that so and it's a subtle difference this one going from red to yellow-ish so that's uh that's an example of one of the other displays working they will work but our ideal displays are and the ones that you're going to get the nice big discount on today are these blue ones yeah this one's just taking a long time to boot up and that's uh who are you esp32 s2 cutie pie i don't know why that's taking so long to to start up i don't think the other one does let's check the other one's an rp2040 let's do a very um casual experiment here this is seeming like i'm gonna say 20 seconds for for this one to to boot up here oh i know why it's trying to get on my network isn't it it might be trying to get on my network i can't believe it can actually because it's set up for a network that's uh that's in a different building so that's what that is yeah so watch here's here's the uh the much simpler rp2040 that is not trying to jump onto my network like i think that maybe that esp32 is boom it's up and running so that's nice and fast okay i think mystery may be solved there as to as to what was happening uh okay so that is it right there that is my product pick of the week this week it is the lcd character backpack driver and 16 by 2 and 20 by 4 lcd displays let's go ahead and bag up at least one of these things and put it back on the rack uh and let me actually let me get the the name fully right because that'll be a lot easier when i make this into one nice neat youtube video later what's this guy's name exactly there it is it's written on it isn't it that's my product pick of the week this week it is the lcd character backpack with i squared c and spi and stemma qt connectors all right thanks everyone for stopping by today uh just a reminder you don't need a coupon code or anything if you want to go and grab any of these head on over to the main site uh the the uh discounts are automatically applied and we have uh products 292 is the backpack 181 is the 16 by 2 display and 198 is the 20 by 4 display all right uh thanks everyone so much for stopping by today frayderford industries i'm john park and this has been jp's product pick of the week bye