 Lady, what is this everybody and welcome to show and tell it's me Lady Ada will be Mr. Lady Ada We're here in the eight fruit remote headquarters And we're gonna be doing a 30 minute show and tell people from around the maker community to see what they're up to What are they making and 3d printing and turning into drone sense and more we've got a bunch of people from the aid of fruit Engineering club here. It's also everyone's chance to meet some of the people who probably write the code or Make the projects that a lot of you use. You know, sometimes you just see a name on a guide Who is that? Yeah, and you know a lot of the code that runs a lot of the the projects out there some of the people here Let's say hello. Let's start off with Jeppler Yes, what other people are welcome come by We have the link to the link to discord as things to the whereby in this form what you do What's new Jeppler? So this is the I won't get the name right It's the USB host feather wing or selling along those lines with the feather Yeah, it's a feather not a feather wing because it's like running circuit Python and everything in this case And yeah, so I've got a wireless keyboard plugged in To it and I bring my screen share back. I'll show you what I'm working on So Scott loves to create different workflows for circuit Python We have the original with the USB with the circuit pie drive and Bluetooth and Wi-Fi And so we're kicking around the idea of what if there was a workflow that didn't require a computer at all? so I've got here the wireless keyboard that goes with it that's plugged in and I'm showing the the Serial terminal on my computer, but imagine this is it like a display IOTFT Or maybe you're using another co-processor board to make it DVI and so I can go in and open up one of the Python files on my disk and Scroll through it just like a text editor. This is like nano, but even more basic So like if I didn't like this line, I could comment it out and then when I'm done I can go back to my file chooser and So I have to give a shout-out to somebody on github with scene lore gat who is CM on github they wrote this text editor in just like a few pages of Python code and It uses the standard library called curses to talk to the terminal And I implemented a version of it called dang that talks to the circuit Python terminal using ANSI escape codes And anyway, so that's what I'm up to someday. Maybe lightweight curse, right? That's kind of the idea. Yeah, everybody like I found somebody who called their version And it's like you got to have a cute name because curses is a cute name. Yeah But yeah, so it's like a screen editor in about six pages of code that does all the basics And you know, maybe we'll elaborate on it or maybe we'll just say here you go But someday circuit Python without a host computer to edit and run your Python scripts I like how we're just we're getting close to the the goal, which is the cocoa to or Apple to gs of Invented by your controllers is coming. Yeah. Yeah I was kind of inspired to do this by my run CPM project Which was recent that created a vintage Emulated system with the keyboard and display built in and no host computer And it's like well, that would be even better with circuit Python because you'd are the right Python code Then Ziggy a similar by a long shot. Yeah, one of the goals that we're talking about this on another show is starting off with a Circuit Python powered ruler and then working your way up to like a calculator or like a little keyboard And then eventually a full-blown standalone computer But you know, you need tools to do some editing and code and eventually you'd be nice to not have a computer Connect at all. So this is one one step closer. Dang is a cool project One request Jeffler just because I know that this this is always been me Can you have tabs displayed with like maybe a little arrow? I don't know about that I mean, we're a little limited in terms of what the display IO terminal can do So like there's no ability to go to a faint arrow But we'll we'll maybe figure out something because the other thing it might do is just not let you type in tab characters ever at all I sure didn't test that it might not work Oh All right, okay. Well, thank you so much. So let's have a good night. Thanks for this this I'm so excited about this board because we're gonna do so many things with it. Yeah And yeah, it was a huge collaborative effort to be like almost everybody on the inner protein you know is making this happen and Yeah, I was excited to you know, the funny is that USB host stuff originally I kind of pushed for it to be ported to the RP 2040 Yes to do it in in circuit Python, but I really need it for my tester boards because the TT 3.6 is Basically, just we can get any you're using it for our testers for a long time. We're like, what are we gonna do? I mean another device that has built-in USB host and it's inexpensive and is durable until you know RB 2040 chip was kind of the only thing available And that's what kind of made me like excited when I saw the PIO point of USB host So it's like, you know, we do things for internal uses, but then that work ends up kind of trickling down into The general computing and it must be pretty robust in practice if it's good enough for the testers Yeah, I mean we really like we and the thing is we got so many bugs is okay I'm testing it against so many different chipsets and mass storage. We got working and CDC obviously at HIV so It's it's kind of neat. It's like something that I want and the being something other people want Yeah, we we would love to add all those things into circuit Python, but it'll take a while Circuit Python 9 maybe about USB. I don't know. Yeah, maybe I mean that we you know what we should really do is get working with those USB floppy drives and we'll be able to My circuit Python code for a floppy would be kind of cool. All right. Well, I'll let you get on to other folks But I'm gonna hang out with you a bit tonight. Thanks Jeff. We're our next up speaking on Scott. What's your come on? I'm so excited about what Jeff is working on. Let me tell you um so I'm Also working on USB host and I think I showed it last week that I'm working on the IntelliQs And I was just Getting my demo going and I got this crash. So I thought I'd show the crash instead of just showing it working but what has happened here is that there's some assert in deep in the C code of circuit Python that's been violated and and Completely halted my demo. But what I was gonna show is that and when you and I had talked about this is that we were You said it was it was hard to do the IntelliQs because it re enumerates So the IntelliQs doesn't store its firmware. You load it every time that you talk to it So here what you can see is that we find the device With the PID where it hasn't been loaded and we'd successfully load it and then I just had that there's a sleep here That's two seconds and then it when I list the devices again. It comes up and it did work. So if I scroll You can see that what I was playing with was reading Just some string descriptors. So using a USB control Call to read the string descriptors so we can see that both the manufacturer in the product name here That's being read from circuit Python and one kind of neat thing is the way that the code is written is It it does the list and then it sees if it needs to load the firmware and it or if it doesn't so you can actually see here that We we saw that we didn't need to load the firmware again. So we didn't And so if we have time I'm just gonna unplug it and plug it back in and see what happens And how's the speed because I know you're you're working on it's pretty quick now And I hit the failure again, oh, you know what Okay, that's good to know though because I was I was just trying to Well, I Anyway, I have an idea what it is because I was I was adding a third descriptor load That was the actual device descriptor and I must be causing an error that I've not caused before Yeah, and now I'm getting getting this assertion failure. So I'm working on that And I'm excited to see that it does work with the re-enumeration of the IntelliQs Okay, cool. All right, and then before we go Special thanks to Scott had recommended this kid toy Like a month after we had a kid and yeah, I found the email and I'm like this is cool Why aren't we hacking this and turning this into something with Wi-Fi and you circuit Python and music? So we're gonna shut this off on ask an engineer tonight, but door-to-door about six months. It's I have a green screen So, you know, yeah, hello, man right, this is a Wi-Fi enabled kid toy you could put new songs on it and we think this is gonna be a fun development So kind of neat to see all of our creations go into different places different form factors different things. Yeah Like yeah, and gotta go to my sister different places Yeah, gotta yeah, the web workflow is gonna gonna get some polish. Yeah, thanks to my sister who got that toy for Ari Apparently these are standard issue. I was talking to someone. They're like, I'll have two of these I don't know where they came from They're common. Yeah, a baby shower. So the first thing the first thing is oh, well I have those by the wake. Do you know any way to change the sounds? So I was happy. There's two volume levels. There is we kept that Yeah, okay. All right. Thanks up. Thank you. All right JP. What you got going on? Hey, it is a Blade Runner time here is what I've got going on later in our time and it's time to put a Halloween decorations That's right. We're ready. So a lot of you recognize this is the Giant building the Tarell building from Blade Runner and what I did was I we had this idea of taking a dystopian drone synth that Todd Kurt had designed had written the code for in Circuit Python using some synth. I owe to just create these big sort of detuned fat sounding synth pads reminiscent of Blade Runner and other soundtracks of that era and Design it inside of an enclosure that is based on the Tarell building. So I got excited about this on Monday, I just gotten back from vacation. So I built this model to house it inside of Rhino 3d printed it out And I have a second version in the works right now but what I've done is I've added some copper strips right now to act as Capacitive touch pads to adjust parameters of the synth. So what I'll do is I'm gonna turn up the volume so you can hear I haven't plugged into some Powered speakers and I can show you what it's what it's running on underneath and when I hit the the copper pads, it'll adjust the Transposition of the of the keys that it's playing We should wait till the the wildfire start hitting. Yeah, you can do a very cool mini movie with this Yeah, I like the I brought in some extra little lighting on the side Is that Blade Runner for ants? Okay It's my iPhone as the Really cool. Yeah, you should you should put a like put an iPhone on like a little hot wheels or something He's like that forward and like your own truck in on it So there you can see if I'll show this on my show tomorrow more depth But I've got a little circuit here using a cutie pie and our little TRS S breakout all Happening inside of circuit Python synth IO, which is kind of mind-blowing and I was even able to use I've used just about every pin I think I have a spare or two, but I've got eight of those acting as capacitive touch And I've got plans right now. They're all doing the exact same thing But I've got some plans for little pairs of these that'll adjust synth parameters. It's cool All right, thanks so much. Hey see you on your show. Yeah, come on by Okay, we're gonna go to Aaron and then we're gonna go to Liz Then mouse and Tim and then Brandon and then Andrew. So we got a full House tonight, so we'll try to move along as quickly as we can and let's go on quick So I've just been working on this dress which is built on the ooze master 3000 code I'm gonna back up a little so you can kind of me and right now it has a Bunch of lights in it. Obviously that are running seven different drips all around the dress Eventually it's also gonna have a little drip flat at the bottom so that the drips actually are gonna land It's a really cool code. It's Bill B's ooze master 3000 code Which he's been using for Halloween projects and dripping skulls and oozes and stuff like that And I wanted to make something real elegant with it, and I think I succeeded. I love that. This is great Button right over here where if I hit it then it will go into carry mode where it suddenly starts dripping blood everywhere So yeah, I'm well working on this and I am writing it up this week So I'm gonna have a kind of just a high-level tutorial about how I made this up in the If you if you remember, can you send can you send me a tick tock formatted video for you? There's always a tick tocks like what's the fit and like, you know, you kind of like do the little new pixels. Yeah Absolutely, well, it looks great I love how it's a little bit of a joke on the wet look, you know, there's a wet look dresses It's like, okay, this is what wet wet look, you know Someone's going to make one of these and go to that cool giant Las Vegas LED ball and stand in front like you have the matchy-matchy now Yeah, building has to be leds and just okay. Thanks. Thanks. All right, Liz. What you got going on? Hello, I have something super simple and quick so I've been working on the quad rotary encoder breakout and It has a neopixel underneath but the clear rotary codes really hard to find so I just 3d printed a little Kind of riser for the encoder so they can still solder in and then you can still diffuse the neopixel So you can see all the colors still so when I work out project with it So be able to see the colors. So just a quick little thing. No, we just got these in the store to see Yeah, I know I gotta find those clearing It's just it's a bit of a thing. Oh, yeah, totally. So this is like a little like a good a good Yes, yeah, so I'll show the model up if folks are interested further on this. I think Started some mouse show off your watch you got going on That's him Okay, I'm gonna play something on my synth see if you can hear it This is a this is my model of since I've been working on for a long time a little while ago I showed off a prototype of a digital FM module based on a feather up to 2040 and I have the final sort of hardware here it can do different sounds And You've got the light up This is a glowy patch cables there and So I'm going to show you the hardware Sack, do you want me to take the screen off and just go to the Yeah, that's the screen is like patch editing software. It's got probably won't show because you've got a lot of people on today We'll come back. All right. Okay. Yeah, show it up next time. Okay. So This is there we go. So I use I end up using a keyboard instead of a feather because it's smaller and just a couple op amps and a D-day converter and I've got all the all the controls mounted here The USB connections a bit Janky because I didn't know if I could I didn't put on the front palps I didn't know if I could run the USB signals through these through a regular header connector So I just just put a little right angle thingy on the thing Yeah, and So I've been working I've been working on it for a long time And it's still not entirely finished, but It's getting to the point where it might almost might almost be done. So This is great. Would you mention? The end of the show and play us out with some music Okay, okay, so we'll keep going and then you know come back and show the interface, you know, we're here every week But yeah, if you don't mind Stick around because sometimes we have a musical guest to play us out. So okay Okay, all right mouse. We'll be we'll see you just a few moments All right Hello, I'm very good. Thank you. I have two things I'll show real quick one of them is a preview for some Upcoming stuff that I want to that I've been working on that I want to do for some text embellishments So I have three rows of text here The bottom two are the two that you can do easily today with the display text library And then the top one is the one that I've been tinkering on and I have a PR with some bitmap Manipulation over in the core that makes it nice and fast and this gives us the ability to make a bitmap dilate or grow a little bit or I should say a shape within a bitmap and then in this case we can Make it grow and then change the color of the part that has grown so that it will look like an outline And we can of course do that around text so we can have custom text with outline colors Right now. It's pretty gnarly. It's all just hard-coded in this like Super high-level function. That's just kind of doing everything But I am definitely planning to try to make it easy to reuse and make a special new type of label So the other people can do this and set it up much easier Then the code that I have with it right now So that's the first thing keep an eye out on the display text library for that If you're interested and then the other one is a super quick one that I'll just show the demo real fast For the 4th of July here in the u.s. I was just playing with the matrix portal a bit And I whipped up this little sort of firework animation where it just draws a couple bitmap pixels And then animates it to do this little explosion effect here So yeah, that's too much on it, but that was something that I was hacking around with on the fourth yesterday Which was fun. So I thought I'd try that too All right. Thank you so much Tim For folks who want to tune in so every Friday, there's a deep dive and then you sometimes do a weekend thing They're fantastic. I put them on in the background and and Listen and watch as I'm doing other things because the innards of circuit Python. It's it's literally deep dive So that's coming up this Friday 3 p.m. Pacific 5 p.m. Eastern, and then you also have I think it's every couple weeks Morning, so I usually stream as well Yep, you can find that on the discord as well if you hit up the live broadcast channel I've put slinks in there when I get going on the weekends. All right, okay. Well, thank you so much. That was very cool For sure. Yep. Thank you. See you all right next up. We're gonna go to Brandon then Andrew then we're gonna have mouse play us up Right and how are you doing? I'm doing well. I'm doing a lot of color these days That I'm not talking about color tonight It's really interesting that that your rotary encoder the idea of 3d printing an element under it Last weekend. I laser cut this little disc for the exact same purpose. Oh and so It's it's it's two millimeters thick and it actually works pretty well though Lady Aida I do have a beat on Rotary encoders with clear shaft for underlight, but I can't find one that also has a push button So it's either an either or They don't have a switch but also top is incredibly hard to get them to sell me stuff They just don't have my emails Well, I've got I've got a thousand coming in so we can So what all of these items are It's sort of like seesaw on steroids. So these are all I to see user interface devices But instead of having a low-level interface, they all have a very high-level interface So like this one over here is neopixels but it you can configure it with various colors and then it takes it just takes two values and You can set if you want to use it for VU type things you can have a an attack decay So like if I if I give this see it'll it'll just it'll and it kind of zooms in and zooms out Yeah And then I can I can also control what color it is so I can make it any color I want or I can go back to VU mode So that's a a pair of it's 20 leds And it just like I said once you've once you've sent it a couple of commands to configure it You send it just two values. I have to do every time you send it two values. It just updates me the next one over is To Touch devices, so this is a touch circle And so it gives you a continuous value even though it's it's a touch It'll give you a continuous value between zero and 255 or zero and 360 whatever you want to set it up for and Then the top one gives you an X and a Y And again, it gives you continuous value So this uses three touch sensors that are all interwoven and This one uses six across and six down that are all interwoven and so you can get all sorts of really interesting value data out of that one Rotary encoder you probably have figured that one out already and then of course a keypad and the keypad outputs the exact same thing that the they keyboard or keypad from Circuit Python does so it just simply outputs a key value and a press or a release and you can set colors for the buttons If you want or you just set them all the same. I've got the bottom row at red And then the top ones are displays and they support a few different modes So this is a menu mode and so while it's in menu mode It's actually not sending any data back and forth to the host But when you select when you hit the select button It records that and then the host can simply say what's the current selected menu item and it'll and it'll give you that information back So it'll do all that on its own and then the bar graph one you can see here it just it just simply takes a bar number and a value and It will reset itself and just keep painting it Again, all you're doing in the bar graph is you're sending it bar number two a value of a hundred bar number one And so It's really really responsive and it looks really kind of cool, but you don't there's not a lot of data going over i2c so and like it yeah, nice work with this stuff and and As you probably can tell they're all using an AT tiny 1616 You can buy it For the Arduino core, which is what I'm using works very well and like you know the i2c controller peripheral code Works great for it and I've had I mean it's you know you want to run it 20 methods, but it's I've really enjoyed porting all the San Diego 9 stuff Which is three or five volt compatible and you know has been support and is purchasable Yeah, I actually went a slightly different route So you may remember I talked about the little act one which is an AVR programming module for a programming course And it teaches basic AVR programming with just the you know the the AVR register code and stuff like that All of this is the 102 level course And so the advantage is like the rotary encoder. It's like 3k of firmware Yeah The touch panel is like two and a half of the anio pixels like 3k of firmware The only one that's really big is the display because of the graphics drivers and all the text and buffering that it does That's a seven and a half K This evolves I know you know we see this on the socials, too If you want to put a link in this board to where people can find out more But I know you're still working on this come back in as cool I love it as you continue to work on it Yeah, tons of tons of documentation because I that's the thing that to make this stuff really usable and people to understand Not only the code side, but then the usage side of it It all it all has a lot of documentation. That's my big thing right now. All right. Well, thank you so much Andrew and then Hey, hi, I got the E Inc the 2.9 And I've got it hooked up with an ESP 32 S2 Doing environmental sensing. I've got an SCD 40 So the co2 level is the big number and then I've got the BMP 280. So that's doing the temperature and humidity Pulling out a request Call to do the do a little XML parsing to get the little numbers which are the outdoor temperature. Yeah Are you really 700 meters above sea level? Yeah, I'm in the mountains. So that mountain is behind you This is real. Yeah Actually, and the one cool thing is that I actually had my very first pull request merged into the BMP 280 library, so thank Thank you to Carter Nelson. I added the ability to add a Altitude setter so I can just say I'm 700 meters and then all of the Calculations for the changes in barometric pressure get actually changed not in altitude but actually into Barometric pressure. So that's what I'm working on. It's a get a little 150. I'm using deep sleep. I learned tons of display IO The bounding box 800 it's kind of high it is actually and outside it only goes low as about 600 up here So we calibrate it then there's a calibration for the SC 30 does we calibrate it should be 400 outside unless there's something really weird going on it also has a Altitude setter as well. So the SC. Oh, yeah Yeah, as well, but anyway, I just wanted to show it off. That's kind of what I'm doing Congrats on your pull request. Yeah You can make it display as your your number of get-up stars in All right, thanks. Thank you very much. All right Our house band is here a mouse place out mouse it out Yeah That was perfect. All right. Thank you so much everyone eight o'clock on the dot We'll see everybody next week some 30 p.m. Eastern time every single Wednesday showing to your projects Thanks for making this the best happen hour of our week every single week I can hear starts as soon as I can press all buttons. See you in a moment. Bye everybody