 and welcome to Descalady ADA. Hey everybody and welcome to a Sunday night Descalady ADA. We had a fun, exciting weekend hanging out with our friends but now it's hanging out with our internet friends. You guys. Everybody's our friend and we're looking forward to seeing more people in person. So because, you know, things are getting more chill and everyone's vaccinated and doing all the right things we were able to catch up with some folks, folks who ran Maker Faire in the past and then folks who've done a lot of things in computer security over the decades. It's true. So it was a lot of fun to see people that we know, people we haven't seen in a long time and we're really happy to wrap up the weekend with Descalady ADA. Lady, what did you do that's on your desk this week? God, I don't know what I did this week. There's a lot. I did a couple of things. Actually, you know, so a couple of weeks ago I churned out a whole bunch of hardware. So this week was a lot of working on testers and getting stuff manufactured and ready for release. So one thing that's in the store right now you want to sign up for, for when we release it is the Feather ESP32 V2, which just came out. You want to maybe pop to the overhead real fast. No, won't you do this and I'll do my thing? This is the only thing I'm doing. Okay. Why don't you have to like, check the chat and like, you know, make sure everyone's happy. Now I just press one button. It's all automatic now. Oh really? No. So this is the Feather ESP32 V2. So I think I've shown it just a couple of times, I think on the show. This is actually really like Rev A was like ding dong, done. So this isn't one of the rarities. It says Rev F, but it's actually, it's Rev F of the ESP32 board, but it's the first, the first version I did of this was pretty much perfect except for I just needed one pull up resistor on the button. But it uses the ESP32 Pico because I downloaded from Digikey, I got the package for it. I didn't have to do the package layout so the pinout was all corrupted and everything. So this is an ESP32 dual core. It's, you know, it's an older chip at this point because I've been using the ESP32 S2 and S3 but there's still a lot of projects that use the classic ESP32. And because it's so much smaller than, you know, the large ESP32 module, actually this has a classic size ESP32 module on it. So you see how much smaller it is. This took up like, you know, almost all of the board and you know, I didn't like went up to here. And so I only had space for like the button and the reset button, power supply and the USB serial converter. But what happened is that the ESP32, sorry, the CP2104, I think we mentioned this, CP2104, which is a USB serial converter chip I use for like everything. It wasn't end of line, but it was kind of like, we're, you know, it was nearing the end of life. And normally you can get chips for a couple of years but because of silicon shortage, SILabs really quickly moved to like, hey, the CP2104 is no longer gonna be available. We're moving to the CP2102N. And it is very similar, but it's not quite the same and you need a resistor divider on the VBus detect pin. Probably because there used to be an old issue with CP2104s where I'd see them pop sometimes and maybe that's why. So I guess, you know, they fixed that issue. The CP2102 is a really nice upgrade. But since you need a new resistor divider, it's one of those things where it's like, if you're gonna fix one thing on the board, you might as well fix everything on the board because you're gonna have to do a board re-spin and you're gonna read to reprogram it. Duh-duh-duh, all this stuff. And like, it was like, look, if I'm gonna go through and fix that. And then I was like, well, let's just fix some low power stuff. And then it was like, well, you know, maybe I should update to this Pico module, which is smaller and has PSRAM, because I've always wanted to have an ESP feather with PSRAM. And I was like, well, you know, I should add a NeoPixel. And then I had to, you know, I was like, well, I could add a stomach UT port. And there's like, well, maybe I should add like another regulator so you can go into ultra low power mode. And then basically like the whole thing got redone. And then like, you know, USB-C. So the whole thing got refreshed, but it's pretty much the same price. About 20 bucks, but now it's got, you know, a lot more going on with it. I think people are gonna like it. You know, one thing that was fun, I had a little space out of another button so you can reset and the user button. But I forgot the ESP32 has input only pins and not only input only, but there's no pull-ups. So yeah, I needed to have an external pull-up resistor on there. So you see, there's a little resistor pack down here. And one of those resistors is the pull-up. But I even did a check with the PPK to check the power draw. I love my PPK. It's like, I'm using it every day now. And I got that to 70 microamps. So that's like pretty good considering that, you know, I'm not going with a special regulator or buck supply. That's ultra, ultra low power. So I think it's gonna be a really nice little upgrade. So this is coming up shortly. You can see I didn't go with Enig, no gold on the pads because it was Chinese New Year and I didn't want to delay my boards. And they're like, if you know, if you don't do Enig, we can actually get your board out a little faster. So I just went with lead free hassle. So fun. So this was the original, this was the first board and you could see very few things changed. I just added that resistor pack down here. I replaced two resistors and resistor pack to add the pull-down or sorry, the pull-up. But that's pretty much it. The rest of the board actually came together. So it's always kind of happy new year, right? Happy later in your year when you get your board right the first time. So do sign up for it. It's gonna be in the store this week. We're just prepping and testing the design right now. Next up, fun project. FOMI guy did is a little Winamp player. So let me reload this. I'll say one thing that was, you know, it definitely works, but it made me think like I really want to redesign the pie portal and see if it's a Winamp. So this is a, it's a very simplified interface because we don't have like an equalizer in Circuit Python. Well, you can. We can, but we haven't done it yet. I should mention one thing. So we could like work on this forever and do a perfect clone of Winamp that's fully implemented in Python, Circuit Python. But we wanted to have something out there for people to start doing stuff with and playing with. So you can do like, it looks like a Winamp player. It kind of works. I mean, it does this, the timing's correct and the scroll is correct. I think we could probably like, yeah, I mean like everything can be done. There's purists out there that are like, this isn't identical. It's like, yeah, not yet. So this is a start. Yeah. Like all good things, they start somewhere. I think, and yeah, I have some ideas also about stuff. So you're saying you want to redesign the pie portal? I do want to redesign the pie portal because, you know, it's got the M4 plus the ESP32 and, you know, now that the ESP32 S3 is out, I really want to revise this to not have two chips on it. So it's less expensive because the pie portal, the reason it's expensive is like, there's two chips and they're both not inexpensive. Like each chip is like three or four bucks. And then the TFT is like, you know, 12 bucks. And then before you know it, your bill of materials, $20. And now your product is 50 bucks, right? So I want to, I think you're going to redesign it was just one ESP32 S3 and put maybe the TFT on the high speed SPI because that's another thing is like, the reason this uses a lot of pins and a lot of pins available is that this has a parallel port interface, 8-bit parallel port interface because the SPI on the SAMD51 doesn't go above. It goes to 24 megahertz, but it maxes out there and 24 megahertz isn't very fast. So to make this really fast and allow like really quick updates to do like animated gifts and stuff, you want with the 8-bit parallel interface. But like, you know, now it's like, if you have an ESP32 S3 and I can use the high speed SPI, you know, you can run at 80 megahertz. And the TFT is not, it's not rated for 80 megahertz but you can run at 80 megahertz. And that'll save a lot of pins and then you can have more stuff on it. And like, I could, you know, there's a couple of pipe portal was like a very new design for me. And I made a lot of mistakes with it to be honest. It's still totally usable but like going back to it now, like four years later, I'm like, oh, you know, I didn't do the M log power supply right. And like I didn't do the level shifting on the. And there's a request for the Stema QT. Yeah, like Stema QT didn't exist yet. So I had the old Stema. All right, well it sounds like we have a blueprint for the next one we're gonna do. Yeah, I wanna do a couple of things. And you know, I think I'd have an I2S amp maybe but like the idea overall is good. I mean, there was nothing like this at the time, the whole idea of like, oh, it's circuit python, internet connected TFT screen, like believe me, like now you're like, this seems very boring but at the time there was nothing like it that was as easy to use. So I do like to, you know, just like the Feather ESP32 got revised and I think this is a really nice revision. I learned stuff as an engineer. I'm learning stuff, I'm building. There's no better way to learn than to build stuff, release it, get feedback. And then I think maybe I'll redesign it, you know, again, make it less expensive. With the ESP32 S3 I can do it, like when this came out there was no, you know, like it didn't exist. Like there was no low cost Wi-Fi enabled microcontroller that was high power. There is now. And so I think that could be kind of fun. So check out this demo, you know, you can forward track which I think is cool. And it's like, it's kind of a retro nostalgia going on here. And I like the scrolling text here. And then you can take PNG images of other skins. I'm using the classic skin here which of course whips the loma's ass but yeah, you can get other skins. Like I think I had a Sakura skin or something or some like anime skin when I was a teenager but this is very nostalgic for me. So that's another project. A fun little project to build. And then maybe people could, it's absolutely a really good demo how to make a kind of advanced user interface with scrolling text and this scroll. So cool stuff. All right, any other questions? No, thanks. Yeah, let's keep going. Okay, let me get it on time. Great. So the next thing I did is we got some samples of LCDs and I got like one big ass LCD and a bunch of these little duels. And I got one triple digit LCD which you can kind of see here. And I was like, oh, I wanna get this running. And you know, I know that you can activate LCD segments with just a five volt power supply because I've done it before when we have the LCD shutter glasses in the shop and those you just power them with five volts and they turn on and off. And I was like, oh, so it must be really easy to just connect this LCD to like an Arduino or find an Arduino library and I'll just get it running. And it's actually totally not there. Like nobody, I could not actually find any evidence that anyone has done this before which is just connect an LCD to GPIO pins. This is a QT PI, SAMD 21. And I just have all the pins in a row and then there's one pin that would have been a power pin. So I kind of like connected up here to A0. But I just kind of folded the pins over into the GPIO pads and multiplex them. And it turns out that this is like not really done. And I see why. I mean, there's a little bit of ghosting and you can even see it like here, especially, see if this digit is kind of flickering. It's quite hard to power and depower the pads correctly. You know, you also have to have a timer. You use a lot of power because you are, you have to toggle your GPIO pins really fast to keep this display refreshed every couple milliseconds. It's a low power operation that doesn't use a lot of current but it uses like, you have to have something you have to have something with a clock that's like kind of refreshing the pad. So, you know, if you're using LCD, usually you're doing something low power, you wouldn't want to do this. There are micro controllers that have an LCD driver and I think the LCD driver can like run in an ultra deep sleep mode. And you know, I think the CircuitPythonWatchee project is an example of using like, I think the SimL21C, there's chips that have a built-in LCD controller that'll do the toggling for you because it's something that you'll want to have on while the rest of the chip is in deep sleep. And you can do it with like shift registers and a square wave. But this is just doing it with GPIO pins. But it does work. One thing that's interesting about LCDs is they are not like LED, you know, seven segments. LED seven segments, you know, you turn on the LED, then you set the common low, you set the segments that you want, you wait like 10 milliseconds and then you turn off the common, you go to the next common and you turn on the segments. For one, it isn't split up the same way as LEDs where you have seven segments and then a common for, you know, one anode for each segment, sorry, for each digit. The comments and the segments are like, on LCDs are like, they're kind of mixed. And I think that's partially because of the way they pattern the glass to make it inexpensive, to pattern the ITO glass for the LCD elements. There's this, it's not like one digit per pin. It's kind of this weird intermixed multiplex system. And second, you know, you don't just turn on the LED and then turn it off. You actually have to like invert the common pin back and forth and un-invert with the ones that are awful. You have to kind of do a little bit of like a flippy flippy because it's expecting an AC waveform, not a DC waveform. So it's not like set the pin, set the common low, set the segment high. It's, okay, set the segment high, common low and then flip them and then flip them back and forth constantly. And then if the segment's off, you don't flip them. You keep them the same. So I thought that was kind of interesting. I've never worked with low level LCDs because it's always been like, you know, a seven segment display where it's like all ready to go and it's, you know, a dot matrix something all finished in a module. But these are very low cost and you know, you can get them custom made. And so I thought that was, and you know, you see them in products a lot. So I was like, well, what's, what's up with this? So I learned a lot about this. So if you're, you know, if you're ever interested in LCDs, you can pick one up and you can drive it from GPIO pins just by flipping it. And there's a good app note from Microchip, the AVR 241, which is like literally called like how to drive an LCD seven segment using GPIO pins. And they do tell you how to do it. It doesn't look great. Again, there's a little bit of ghosting, but it's fine for like, you just want to get going and maybe test out your design before you, you know, go deeply into a electronic layout with the LCD driver or LCD chip. Okay, so any questions about that? No, let's, you want to do a great search? Yeah, so let's go to the great search. All right, the great search. All right, every single week, lady uses her powers of engineering to help you find what you need to find online. One of the best places is digikey.com. Lady, what is the great search this week? Okay, this week's great search is on the topic of LCD drivers, never searched for an LCD driver before. And I was curious, so can we go to the overhead and I'll just quickly show this off again. So we've got these, this little seven segment LCD, I'm driving with GPIO pins and here's some bigger LCDs. And a lot of people when they make a product, you will go with an LCD display. It's a very common, very low cost, very low power user interface device. It's daylight readable. You can add a backlight. Now it's readable at night. But again, very inexpensive, very low cost. You can get custom segments. It's a very, very popular way to add a user interface, like, you know, multimeters have them, calculators have them, stuff around your house is going to have an LCD. So chances are you're going to integrate one into your product design if you're an electrical engineer. So let's look at how to find a driver for these bare LCD modules, where you just get the commons and the segments brought out. So let's go to the computer. And this was fun, because I had to do this today because I was curious. So we'll learn what I learned. So the first thing was like, I had no idea what this was called. So I just tried LCD driver. Sometimes the part of the trick is knowing what to find. So it turns out that was actually a pretty good guess because there's display drivers, there's display monitors, but this I think these are like ready to go dev kits and stuff for TFT. So this is kind of a full thing. Like, you know, this is a full TFT driver. These are OLED drivers. But what we really want, and these are modules, of course, they do have modules if you don't want to do the work of driving a raw display. This is what most people think of when they think of LCDs, right? And we stock these. These are LCDs that have the backlight and the module and the metal plate and they bring out the pins and it's like the HD77 something, you're ready to go. But these aren't customized, these are dot matrix. So, you know, if you want to customize it, you're going to have to do your own driver. So, going back. So, back to PMIC display drivers. So, you know, what's interesting here is that these are considered PMICs and I kind of see why, like they are in a sense sort of power management ICs, but they're also like kind of not. So I'll say that there's a couple of different kinds of products mixed into this category. So the first thing is, this is something that I'm going to want to use now. So I'm going to go with active. And, you know, there's like, you know, a dip and there's QFN and there's like kind of some ridiculous stuff here. I'm going to go with non-marketplace products. I just see like the original components. And I just want LCD drivers for now because LCD is quite different than OLED or LED or vacuum fluorescent. And I also only want service mode. I don't want through-hole. Okay. So when I got to here, what's interesting is there was a couple different things. So there was a mix. There was like some of these like really large pin devices mixed with some of these like, this is like, you know, a 40 XX logic device. So I'll say one thing that was interesting is there was a couple of these like really like ancient devices, but they were like, you know, this was like a 20 volt device. It says copyright 2003, but this was probably originally from like, you know, I don't know, the 80s or something. And these are for, you know, old LCD devices where like there was a microcomputer, but you needed something to help you drive it. And this is not what we want. We want something that will actually do the scanning for us, sort of like seven segment LED drivers that I've got, the HT16K33s, they do the multiplexing for you. And that's what I want. This is not doing the multiplexing for you. This is assuming that you're gonna like, do all the work. So this was a little hard to separate out, but what I did notice is that first off, there's like different configuration segments and second, the interface. So this was considered like a BCD interface like binary coded decimal because there was a driver that was controlling it. So I want to get rid of the BCD because I don't want that kind. I really just want like I squared C and then like SPI and serial, you know, those are fine. And then when I filtered those out, I was like, okay, you know, now we're getting somewhere. So these are, again, there's a couple different types. There's segments and there's dot matrix. And the one I'm talking about, like the dot matrix is of course, you know, 64 by 32 dots, but I want segments because I want like the, you know, seven segment or whatever designs. So what I'm gonna do is I also don't need like 500 segments. I was like, let's do, you know, like if I have a seven segment, let's say heck segment, right? I have 15 elements per. I was like, I don't really need more than like 148, 150 segments. So let's just limit us because there was definitely like massive, massive chips, I don't need a massive chip. And so then they actually kind of got very reasonable and the prices weren't too bad either. Like you can see that they're a couple dollars. And then I was like, well, I have a lot of choices here. Looks like Rome has a series. TI has a couple of series. This is PLCC, not so interested in the PLCC. I was kind of like, I was gonna get a little spoilt for choice, to be honest. So what I decided to do is like, well, first up, let's look for stuff in stock. And then second, I want ones that are I squared C only. So I picked two wire serial, which is like another word for I squared C. I picked serial also in case like you got categorized that way. And I started by price and I actually got a couple options. So OnSemi has one chip and a lot of these are, let's see, this is serial. Let me actually look at this one. Let's look at this one, the LC75. So a lot of these are like general purpose. They can run from three to five volts, which is wonderful. Let's look at the usage. Okay, so this one, you can see the segments in the comments are driven up here. There's an inhibit, there's an oscillator, but this doesn't have I squared C. This actually has like a kind of a three pin serial. So I'm gonna skip that. And then I was like, oh, let's check out this Rome one, which I kind of liked that it had, there's a couple different Rome boards. Looks like they have eight different sizes or configurations. They're a 48 segment and an 80 segment. So I checked up this one. Hold on, this is like a big data sheet. It's a chunker. Let's see, I already downloaded it. And this one was actually really nice. So first off, it comes in a very cute QFN, 24 pin QFN also can run three or five volts, which is great. They have two versions, you know, 80 segment and a 48 segment. No oscillator needed has integrated oscillator, no external components, low power consumption. And it's like, I like love this block diagram because it's like power, segment output, ground all the test pins and I squared C. And then inside is a DD RAM. So it has the RAM for you. It has like a blink generator. And it kind of does all the work. And it's very simple. I kind of like the simplicity of this board. And then you just have to figure out in your software, you map, you write to the RAM and they're like, this is the DD RAM. So you have internal RAM that's refreshed for you. You tell it which segments you want on and off by writing to the RAM over I squared C and it does everything else. It does all that multiplexing, the AC waveforms beautifully. So this is actually an adorable little chip. I kind of like it. And it looks like there's a couple of different modes. You know, if you have a chip that has built-in LCD driving great, but it could be that you don't, it could be you're like, I'm stuck with this free scale chip or this NXP chip or this AVR. It doesn't have built-in LCD driver. So this would be a really good alternative. So this was my pick for the great search because it's in stock, it's inexpensive. It's I squared C to QFN. It's really simple, doesn't need any external components and looks like it's a very easy chip to use and integrate if you'd like to add LCD interface. So check out the Rome BU-97 series of LCD drivers. I think I might make a STEMI QT board out of this. That can be really handy if you get LCDs and you're like, I want to quickly start it up. Having a breakout would be cool. That's a great search. All right, I'm gonna do a couple quick questions. Can the Pipe Portal be programmed with the Arduino ID? The answer is... It can. Yes. Next up. Where'd you get the little tiny four by one LCDs you're working on last time? Four by one. I don't have any four by one. These are three by one and I got these on AliExpress, but I don't have the link on me. But they're just like... Would you consider making a feather with an RP2040 and a Lora module? I would, but I've got just got a huge pile of redesigns I gotta take care of first. I can enter this one. It'd be cool if to search on aideford.com. It's filters for active and in stock. Like, did you keep... Yeah. We have a discontinued... We have that. No, we have in stock. There is a filter on the right for in stock and for discontinued. By default, you're not gonna see discontinued and by default you'll see stuff whether or not it's in stock. But you can select a thing to say only in stock. You can see that. And things go very fast in and out of stock now because that's the way the world is. And the last one is, any insights on what causes the ghosting? That was for that. I think it's just... I think that the ghosting is caused by not pulling the charge off of the LCD plate in time. And one of the things that's a little annoying is it's like nobody else has done this. So there's like no analysis. And so I kind of got this demo running in like an hour or two and then I was like immediately like squirrel, move on to the next thing. You know, got it working. I don't really care for it. So I just, I was like, somebody else can look at why the ghosting happens. I don't, you know, there's no information and I kind of know why it happens. But like I messed with like the turn on off times a couple of times, you know, a couple of things. I couldn't really make it go away. And I was like, ah, you know. Okay. It's probably some detail. Do you have a good alternative for J-Link? I need to program the boot loader on a SAM D21. You can use the AVR ICE for that. I believe they're still in stock. It has been pretty good about keeping their tool chain stuff in stock, but it's a shame because the J-Links are quite nice. Okay. And that's it. We'll see everybody during the week, normal week shows. Thank you. We won't give everyone any updates and more. And thank you so much for joining us. This- Oh, 30 minutes on the dot. Sunday. And I want to do hug report and shout out to FOMI guy, Tim, who did an amazing, excellent job getting us all started on going back to the future with winning. There's a cool thing to see, a physical win-in player on a screen. It is funny. It is super neat. You look over at it and it's just like, that's comforting. We all need a little bit of comforting. All right, let's hit it right away. All right, thanks everybody. Bye.