 Welcome to Escalator. Hi everybody. I'm welcome to my desk. It's me Lady Aida with me is mr Lady Aida on camera control. I know some updates from my desk some samples This is gonna we're back to a normal schedule this week We've been kind of back and forth a little bit, but we're gonna have this in the great search So any news or updates? Do you want to give people? No, just we're riding the wave every single week being the water that flows into the container that is provided for us, so Should be yeah, just trying to chill Because every week is a new and interesting challenge with part shortages with international affairs With all sorts of things that make doing engineering just part of the puzzle that we get to solve every week So Lady Aida, what is on your desk of this week? Okay, so this week. I got a cool sample I thought I'd show off and do the overhead. I got a couple different OLEDs and this one This is a clear OLED So, you know, I do a lot of displays here and it's like there's always more displays to cover We've got OLEDs and TFTs and sharp memory displays. This is kind of interesting. So You know, I think that this is It's not gonna be like super bright, but I think you know one thing about OLEDs is that They don't need a backlight right they self create the light and so this OLED doesn't have a backing to it And so that the each each individual pixels should light up So it's got like a 24 pin connector and I think it does I squared C and SPI and it's like an SSD chipset So even though it's I've never used this. I don't think it's gonna be too hard for me to put together a Quick breakout for it and probably the breakout, you know be separate like this won't have a PCB behind it because you'll want to you know, you probably want to mount it somewhere To to have it, you know backlit and all that good stuff. So From whatever you want to make. So this is a sample I got Another thing, you know working on this week is we're doing a lot of revisions and updates. You've noticed on the Adafruit site You know, there's a lot of lockdowns and shutdowns everywhere. So not a lot of products coming in Especially from other makers like we've booked orders and stuff. It's still being made or not in yet But we are, you know doing a lot of revisions for our own products Updating them to use parts that we can get And also just making what we can, you know, one of the one of the chipsets that I can get a lot of is Stuff from Espresso if they're there, you know, whatever they'd be the book time ahead of schedule or They've bribed TSMC with donuts or whatever, but they're able to get parts and so We revised the ESP 32 S2 feather this week and I think we might have a couple left in stock So this feather uses ESP 32 S2 mini module which has four megabytes of flash Two megabytes of PSRAM and it's perfect for a feather. You see it's like it fits nicely with plenty of space for like a STEM IQT and LDO and some buttons and Neopixel I think this This might have a neopixel demo running on it. We'll see Maybe not but Here I can put it in bootloader mode so you can see it light up You know get Neopixel and LED and battery charging and all this stuff and I really like the S2 It's a good Chipset and I had to revise this feather because I made a mistake on the previous Version, you know, this board has a BME 280 and I had the pull-ups going to the three volt line Instead of being controlled by the power control switch for the QT and so In low when trying to go to deep-sleep mode if you had external I4C sensors that were high currents They would They would draw current from the QT port through the pull-up resistors and kind of self-power That's having high current draw. That's fixed now because we have a totally separate regulator and then once I fix this One of the things I designed if people remember is I made an S3 version of the feather It's basically identical pinout the the module is identical pinout the chip is not But with the mini module the S3 and the S2 are like almost identical There's like one or two pins that are different But the differences are you know, there's like two extra pins basically But I just didn't connect them anyways, so the When we made the S2 feather Because I fixed, you know, I actually had ordered the PCBs for the S3 feather with them It's you know the earlier power mistake and then I was like I don't want to fabricate this and then have to fix it So I just I just e-wasted the PCBs and then when this board was run this week I asked the machine's team. Hey, you know right before you put the last panel through Remove the module and put S3 module there instead Because that'll give me like, you know a beautiful perfect prototype peak because it's like I don't want to have to Hand assemble it if I give the pick-and-place do it and just swap out a board So I did that so this one is marked. You can kind of see it says S3. So this has an S3 mini module on it So this weekend I mostly worked on getting this to come up. So This is actually running Circuit Python, I think but one thing that's nice is first off We've got a lot better circuit Python support for S3 Thanks to Scots in trepid hacking on the S3 and the S3 box and also Arduino added Sorry, it's price of added Arduino support in their Arduino Boards for package in a branch and so we were actually able to make the full test program as well like all the code that I need to do to test the board You know I was able to I prefer to write that in Arduino and not IDF or you know Micro-Python or circuit Python. I'm always willing to do it But of course it's ideal to do it in Arduino because it's it's fast and it's consistent and it's very reliable but mostly just very fast and So I got that going and I've got a tester made This testers actually from a while ago because again, I ordered the PCBs and then you know realize that I had made a mistake with the design So this is the the tester And you can oops you can see it says yes p32 s3 and then You know you plug in the board And you put it down on the test You know the testing area and then I press the test button and It goes through a full test of all the hardware and programs it So this is actually ready to fabricate. So I ordered the PCBs for this and Because it's the same Because that mini modules identical the the pinout and the shape and the stencil and the program is the same as the S2 I can see here. It says it passed it tested all the GPIO And then it's got a little bit of a rainbow swirl to show that it's working This should be really fast to get into the store the modules. I got don't have ps ram They have eight megabytes of flash, but that's just because that's what was available But that's I kind of the first thing that expressive released But they did tell me they're gonna have a version with ps ram. So I'll make another version of this board When the ps ram version of the chip comes out, but the s3 has 512k of s ram compared to I think like maybe 320 k on the s2 And so already it's got like way more ram. So like Circuit Python without ps ram on the s2 is like it you can do stuff But it's hard to do Wi-Fi things you run out of memory very quickly But on the s3 even without ps ram I was able to to run a bunch of Wi-Fi programs No problem. Nothing huge, but you can read like, you know, you never have an extra hundred or 200k of s ram left over for Doing Wi-Fi stuff. So this is that tester and then I'm gonna just Shut this down any questions. No keep going people have well, you know, I thought I had I could I could show Little quickly. So this is shut down. So I'm gonna put this away I'm gonna leave this with the machines team tomorrow. This little tester jig you see with the plastic That's good So the next thing is The cutie pie board so this is also I designed and I had it ready But I made a small mistake on the board and then also there was no Arduino core support and circuit Python was iffy So I wasn't quite ready to release this But now I am so I thought I'd show how I'm going to add Arduino support to the board support package. It's already has circuit pythons and I can go through that But I'll show how to do Arduino support for this so people can see what it what is it what's it like? So let's go to the computer And first off, I do want to mention if you want ESP 32 s3 stuff they do have like chips and modules in stock right now so Yeah, so if you want like like this module has 32 K of 32 megabytes of flash and 8 megabytes of RAM, which is kind of ridiculous, but it's like runs like a full computer So that is available. So The first thing that I do when I want to get a board working is you start with the generic Definition that expressive mix for their deaf boards. It's like full featured, but it's It's in there. So first off, I'm in the the Branch I'll show you so I'm in a if you see the at the bottom right, I'm in a branch called ESP 32 s3 support So they made a branch where they're they're doing the work It's not a hundred percent ready for people to use use use, but it does work So if you just want to bring up your board, you can you can use this. So I went to this branch And I got the toolkit That you know when the get tool command to download the compiler and everything and then in the In here at the top Where they have at the very top they have all their deaf boards at the very beginning I picked the ESP 32 s3 dev module. So again, it's it's the generic definition So then you have to go through and you have to like pick all the the, you know Set up so upload speed doesn't matter USB mode So hardware cdc and j tag. This is actually some of the c3. I can tell that they reused that So the rom bootloader is this hardware serial You know, if you don't it's not on the go. It's actually a separate like rom CDC and j tag open ocd Debug tool. So just to get started. I'm going to just use that and not the usb on the go I'm going to disable the usb cdc I don't want mass storage. I don't want to Df you on boot. I will I do want to set the upload mode to use the internal usb, which is not the default Um, and that's because I'm I I'm not using a separate usb serial converter um, and then everything else Flash size. I don't I actually didn't change that because you have to set up the partition if you want something different Um, I didn't change the partition scheme. No ps ram on this chip So I made sure that's off And then I put the board into bootloader mode by holding We set boot and then we set to have the comport and you'll notice it says esp32 c3 dev module. That's the again that hardware cdc um JTAG, uh, you know built-in setup. So the next step I want to just I have a little blink program that I like to run because it it blinks a pin I just have to pin at the top and it can also test at the serial port and so Um, I because it's not my board definition. I have to use the hardware gpao pins So um, the s3 qt pie uses the same pin out as the s2 and so I can look up here Um, what's the gpao name because like I call it sda, but it's really gpao 7 So I'm going to start with a zero which is gpao 18 And then I've set up here that the led is 18. I make sure everything is good here and then I click upload And then um Meanwhile, um over in the esp32 is going to take a while to to program um Under boards dot text. That's where you add new board definitions and you see there's like, you know hundreds and hundreds and hundreds of board definitions Um, and you can start, you know, what I did for the feather is I actually started with the um esp32 s3 dev module and I kind of like, you know copied that around Um to make the feather s3 Okay, so this is done uploading So then when you go to the overhead you go to the overhead real fast. Yeah um, so usually I use my scope Okay, and hardware reset and then I check on my scope that the pin is toggling, but you can't see my scope. So I will have a gpao pin so uh a led is blinking so that means I was able to upload code correctly Um, which means now all I have to do is create that that pin definition um So, okay, you're the computer again So like I said, I started by copying the esp32 s3 Uh setup, but um, I'm gonna actually start you know, I'm gonna copy my Feather setup because I did you know the chip on the feather and the chip on the cutie pie is the same the same Like partition and setup So I'm going to take this Beep beep beep beep and this this is how you do hardware development copy Paste great. So then I just have to replace um Feather esp32 s3 With cutie pie esp32 s3. Boom Great. Um, so next up I'm going to um I have to okay, so change the name up here Great. No psram The next thing I need to do is oh, I'm going to disable the tnu of two thing for now Now that's the we have basically upload the boot loader for you But I'm not going to do that at this moment because I have to get the boot loader ready um Okay, so make sure that the variance and the board are the same I do have to set up the vid's and pids And I do that I have a um In production I have a csv Oh my god Hide, okay. I have a csv and at the bottom of the csv I can create um, basically new allocations for Um, all our vid's and pids. Sorry. All our all our pids for the vid we have Um, I actually think that I already did the cutie pie Yeah, it's here. No psram. We already had two questions. Yeah So here I've got um the I keep forgetting that my screen maybe can make me a little smaller Because I'm like kind of the entire screen doing I could shrink you yeah, because it's like I kept up I'm always looking forward and I realize that it's like half my screen is Yeah, can only shrink it out. Yeah, shake me now There you go. That's great like that. Yeah Um, so I've got the should get a sound effect. Boop boop boop boop. Yeah This is actually better also for a great search because that way I'm not great trying to find me Um, I'm tired. Let me say let it be done. Let it be done. It's fourth today. This is the new size of radiator. I am small Um, okay, so I've got the pids the pidi and the vid is set up So under boards, um, I just have to enter in That this is a different number set I like to have a new a pidi, you know for the bootloader for Arduino and circuit python all unique And then The variant I have to set up. That's the actual tough part. There's the defaults some of these Entries I might delete like for example, you're never going to upload via uart zero But for now, I just left the menu menus in even though like You're not like I don't see how you could ever upload without using usb because we don't expose even the uart I think and the ps ram isn't there so like why even have the menu, but I kind of just wanted to keep it You know matchy matchy with the s3 dev board because it's always easy to delete menu sections from the board definition file Um, okay, so the next up I have to create a variant so and esp 32 under variants um I'm going to do the same thing I did before which is copying paste since I have a board that uses the exact same chip Find the closest thing to what you've got copy paste it and then edit it. That's the easiest thing to do so uh esp 32 s3 feather And then I'm going to change this to cutie pie And then inside of here. Um, so as I mentioned, there's The boot loader and the teeny uf2. So that's you do a little trick with expressive where Um, every time you upload arduino because it erases the whole chip. It doesn't use the boot loader It uses like the built-in like wrong esp tool thing Um, we always upload the uf2 boot loader So it's always there if you want to switch back and forth to circuit python or you know, make a backup of your drive So that's what that's what that's all about um And then pins arduino is where like that the the magic happens. This is where you actually do like the definition So again, I need to do the pid Correct and my arduino pid is 8 119 I'm going to change the name All the number I know it's like a number of digital pins. I actually keep that the same and then um There's no led built in so I remove that and then what I do is I go through the pinouts Uh, and I go through the pinouts and I um add that to Here so for example, the neopixel power pin is gpio 38 So here's 38 and the neopixel pin is 39 There's no i squared c power pin. So I delete that um So that's that tx is five Because I remember the gpio rx is 16 sda is seven um scl is six ss is not really used, but I'll leave it 42 um most c is 35 sck is 36 misa is 37 I believe that's with the hardware gpio pins. That's why we use that and then a zero is 18 a1 is 17 a2 is nine a3 is eight And then you know, I like to have it a4, you know all the way around so a4 will be Um, the same as sda is seven a5 is six a six is five and finally, um a7 is rx, which is 16 And then delete the rest. There's no more analog pins um for the touch pins not a lot of touch pins are exposed. We only have Uh t5 t67 8 8 8 9 so I'm going to just delete this t5 t6 Whoops t5 t6 t7 t7 What happened here? Let me edit this weird. Okay t5 t6 t7 t8 t9 and that's it so delete the rest and that's it. That's my variant. So now I'm Now I'm actually done. So it's actually not it's not so bad So next time I so if I quit Our do we know I'll save that change and then I restart Okay, and then uh, are there any uh, yeah, let's let's do the questions. Yeah, why are we for? Yeah, so the first question was without the ps ram is a s3 faster or better than the current s2 feathers It's gonna be faster because there's two cores But it's like better. It's like it doesn't have ps ram if you if you have a project that requires it Then you're you need it. It's like Okay, and then when you were going over the risk five stuff a person I question is uh, that's a patent licensing benefit for makers Um, not really. Um, you know, it's it's kind of unique and interesting Um, it's gonna be a little bit cheaper, but I don't know if for makers you're gonna really notice a 25 cent difference Do you think um, this is my follow-up question on that Do you think because the risk five architecture can be manufactured by others? We might have other companies licensing putting their names on it doing stuff instead of So like arm architectures or yeah, if you're making your own chips It's easier definitely to put a risk five core into something than arm core So I might see more more companies use that instead of maybe uh different choices that they had in the past Yeah, I mean it's no choices more more choices for sure. Okay. So more choices is good So now, um, if I did this right, which usually takes me a couple tries. So if I didn't get this right, that's okay So under here Yeah, so now there's the cutie pie s3 And I can select it And arduino is going to be thinking about that I don't know why arduino runs very slow on my computer, but I also have like a ton of Of stuff installed. Okay So now to have everything kind of pre set up so it pre sets up the internal usb and the flash size Um, and the port so now what I should be able to do is if I select A zero is the led Because I have a board definition that knows what these pins are Um, I should be able to upload it in the same panel will flash But I didn't need to know the low level gpio like number like 18 I can just use the naming that's on the The pcb itself and then we'll go into The great search wait, there's an error compiling. All right. Well, oh shoot. I forgot the variant file Um, well, we're committed. So why don't you do that? Yeah, I'm almost no. I forgot so for my, um For my other boards, there's a power pin Um, and I forgot that I um in the variant file you can have a function called in it variant which is a weekly um connected function and so Um, if you want to have something happen to your board at the beginning that's where you do it. So I have you know pin uh For example, like the neopixel power pin Because people forget to set it high to enable the neopixel power But by default I have it off to reduce power drawing deep sleep um in the um variant file I I turned on but I forgot to remove the i squared c Power pin because there is no i squared c power pin Okay, this is gonna Hopefully go and then you know once this is done I commit and I um I do a pull request and I found that if you do a pull request for um new board definitions expressive will um Merge it into the mainline branch very quickly. Although this is in the s3 branch So, you know, it'll go into the s3 branch very quickly and then um, they don't do releases very fast So you will have to tell people hey you have to install Um from the the master branch Okay So now it's uploading So give it a second Okay, upload upload upload upload upload Okay, and then I hit the reset button To make sure and then I have to get this led Okay, and then if you go to the overhead I've got the led blinking again, but again this time is with um, you know self-defined Board definition with all the pin names set up and their word amount of flash and everything and so The last thing I'm going to do which I didn't do yet is in td uf2 I created You know, I think I even have already the the bootloader definition But I have to go and just verify it's still correct And then have the bootloader file included in the arduino board definition and then I'll submit that pr So when people get this board, they can just drag and drop. They don't have to know what to select in the menu They just select qt pie, you know, no ps ram and um, It's ready to go. They can just use the names on the silk screen Okay, I think it's you want to do the great search. Let's do the great search All right, the great search brought to you by digikey and aid for your lady to use their power zone gearing To find things that you're looking for on digikey.com It is hard to find parts, but with lady to help you could probably find the things that you need lady What is the great search this week? This week, sorry, I was expecting I was expecting you to say something else I was expecting to say something too, but then I figured I was kind of done I was like, you know, I think I've said it all. Okay Um, so this week we got a little bit of a mail bag someone wrote in and they said, um, I want a 16 bit Dack and I think you should have a stem of qt board because we have a 12 bit DAC board And I was like, you're correct. We do we don't have a 16 bit DAC board and There are some times where you want 16 bits of resolution. We have 16 bit ADC, so let's go to the computer and I'll I'll show all this stuff off so, um, we have the A couple of different we have 12 bit DACs the mcp 47 25 is a fine DAC. We also have the quad version not in stock because you can't get this chip anymore Um, the 47 28 actually these are our two DAC boards. Um, but there are people who want to use Um, our ADC boards, uh, we'll notice that we have 12 and 16 bit ADC So, you know, they're more expensive like once you get past 10 or 12 bits. You're you're definitely going to be paying more. Um But if you really need that resolution You know, you want 16 bits. You want 16 bits? So let's find a DAC board. So I'm actually just going to search for DAC, um, and there's a lot of DACs and here's something to watch out for when you're searching For DACs first off, there's a two bit DAC. That's like that's just like a single resistor divider guys Like do you really need a whole chip do that? um So for DACs, um, you know, there's there's 13 000 of them. So let's filter out what we want. So You know, we want 16 bits or better um, and we want to be surface mount because we want to put it in our uh, stem of qt board and we want it to be i squared c ideally so that we don't have to have any sort of um You know converter or translator So let's go to number of bits and let's select Well, there's like a weird 12 slash 16, but we pretty much want 16 and up So let's apply. Okay. So now we've reduced it to and let's also look at only active Chips because I don't I don't care for the unactive stuff So um, oh, and then you know, there's a lot of like look at these beasts these monsters But we don't want these we actually really want surface mount Only because we're gonna put this on the board Okay So now now we're back to to normal. Um So one thing to watch for is um A lot of DACs In DACs, there's actually kind of like two two kinds of DACs. There's more but there's kind of two kind of DACs There is um You know if I sort by price There are um, you know the c s 4 3 3 4, which is actually kind of a famous I2 s DAC So when you're looking for DACs, there's basically like three interfaces for DACs the most part. There's the i squared c Kind of slower DACs, but you know, it's i squared c so it's very easy to integrate Um, there's spi and we've used spi DACs before like our wave Shield to play wave files We could you know, you basically pump in spi spi data and the 16 bits gets converted to n long output And there's um i2 s DACs so technically anything that is i2 s to audio is a DAC Um, but you do have to you know, you can't just send and set data with i2 s You know one thing is that they're quite inexpensive and so there's definitely going to be cases by the way if you if you need if you are constantly Setting an analog voltage You you probably could get away with i2 s if you have the interface and and you can stream that data out But you have to continuously stream data or you're going to get like popping Most DACs do i2 s DACs do not like it when you stop sending data. They're not going to they're not going to hold that last value also, um You know, some of them have limitations on the voltage range Uh, some of them have both limitations on how fast they can update So, um, there's a lot of uh, you know a lot of times when I was looking at these DACs There's a lot of i2 s DACs. I'll tell you another thing sometimes, you know, it's very easy to um People mistype when they're categorizing these and i2 s and i2 c like You know, I make the mistake of i2 s i2 c. I confuse the two Um, so just be aware when you're searching for these like You know, this top one is is labeled i2 c, but it's not it's it's definitely i2 s um, so the first thing is I'm actually going to remove An only look at 16 bit And maybe you know dash DAC because the 24 and 32 bit DACs are all The i2 s DACs um So let me apply that and then The next thing I want to look at is um The interface The number of converters. So I want like one or two And then the interface down here um, because I want this to be for A stem IQ t board. I really do want it to be you know only i squared c I'll also pick up this dash here, but I don't want parallel or spi or or serial Okay, so This is what I came up with and so all of these were actually pretty good options. Um, I'll say that None more in stock pretty much except for this One from ti um, I did search, you know, and this is you know once in a while. It's like You know, it's like I'm trying to pick apart that's in stock What with these like none of them were so Given that none of them are in stock I thought let's pick one that would be a really good option And then I'll just sign up to be notified when it is and then when it's ready I'll I'll you know, I can get samples and then I can maybe design it in um So for pricing once you get to the higher pricing, there's basically the two options that seem pretty good are um, you know, if I want something in stock right now, this is the only one that was in stock right now, but this, um, adi won the ad 56 93 actually looked like a very, um Like a very nice design um, it has iSquared C the voltage analog and digital supply is Uh, up to 5.5 volts, which is really nice Um, it's a voltage buffered output. It's 16 bits. I also know that adi makes really really good analog stuff so, um, I think if I'm going to design a 16 bit deck board with static ut for iSquared C to 16 bit deck out I think that this is the um This is what I'm going to uh go with so I'm going to um I can't order it right now, but what I will do is I'm going to add this to my You know, so you can subscribe to get told when it will be back in stock I think it was going to be A while, I don't know. It doesn't have doesn't have any time even. Um, and then um, when this is available You know, I can design the pcb and get it ready and then when it comes into stock I'll um, I'll be able to design something with this. So uh the ad 5693 so the nice person who mailed um, this is the 16 bit deck that I would pick. That's a great church all right, um Couple questions. Yeah, do you have to define the stem of connector separate from the standard iSquared C and the board definitions? Or is the same for this board? Oh, actually, you know, this one does have a separate one So I forgot to add it so add a separate s3. I forgot the s the c3 had the same But the s3 doesn't but I would have noticed that when I checked all the pins Yeah, someone noticed the s3 cutie pipe appears to have two iSquared C So she'll probably go back and add those to the pins when not on camera. Yeah, it's like by the way I usually do not do board definitions on camera because it's like there's a lot of I usually go to the schematic And I'm like super careful and I check every page. Don't worry. This isn't live. Uh, we'll edit it in post Yeah, I'll wait. It's live. We never edit in post. I mean, it is the beginning This is how I start and then you know, I'll um, I do stuff like I test the neopixel Poor and the sqt port so I catch the mistake eventually. This kind of goes with our theme. Um, you know for years No one no one's allowed to show That the process of engineering Mistakes are made no one ever shows that because you don't want to appear that You make mistakes or you have to do updates. I make mistakes all the time And we have to normalize this because this is one of the problems with from computer security to everything else Um, everyone just doubles down and they're unwilling to change directions when they get new information I totally made a mistake for this design But you know what like but the thing is if if we can all just get past that and what I've noticed is people would Rather hide or even quit than just admit that there was a mistake and they got new information and just Updated things and made it better So I'm thankful that we have a good community and audience that like we're all cool with this It's like this is what it looks like to do engineering you and we do it live Every week we show things and we're like oops made a mistake and I and I'm thankful that We have a place for that. I hope that we can become contagious Uh in that way. Yeah, and more industries and and more companies in our space Consider just showing that sometimes, you know, you got to make updates All right. Well, that's that's what I'm up to So let me finish this qvpi definition and order those pcb So you'll see those s3 chips and boards in this in the shop probably in about two weeks, which will be very exciting Um, so if you pick up some of our boards to help support us because I as you can see it's very hard to get Yeah, please buy something informative fruit.com was in a while. Yeah That way that way But I also try to make stuff that you don't want. I'm not like don't you don't do it at charity Although, you know, it's funny. It's like every I read videos like like and subscribe And like that just helps like youtube really. Uh, yeah, which is fine But uh, you could just buy something from the aidaford store and you know exactly what's gonna happen We're gonna turn it into electronics and pay our team. All right. That's it. So let's let's uh answer any last questions And we gotta go that's it. Thank you so much everybody See you during the week. Bye