 John Park's Workshop. John Park and some birds workshop because I had to shoe a bird out of here when I came in. I closed the door and heard some flapping, finch looking character just left. So goodbye little bird. In our chats, thanks for stopping by today. I'm going to let you know if you're looking for our chat, maybe you're over in Twitchland or Facebook and it looks a little quiet. Well, you might want to check out our Discord. That's it right there. You can go to adafru.it slash discord. You'll get an instant invite. And then you can look for the live broadcast chat channel over on the left side there. Kind of cut them off that you can see a whole bunch of different channels we have, including the live broadcast chat channel. And that's where people are hanging out. Also, we have people over in our YouTube chat. Keep an eye on that. Hey, Dave Odessa. Hey, our con-the-net, pronounce that. Greetings. And it was not a Christmas turkey yet, Dave Odessa. So what's happening today? We've got some cool stuff planned. By we, I mean me. I've got a coupon code for you that you can use to save 10% in the Adafruit store. I've got a recap of the product pick of the week. I've got a super cool, highly super cool, not to oversell it, but I think it's very, very exciting Circuit Python Parsec for you. And that'll tie into some stuff I want to do with the new camera board, the Memento camera board. We'll take a look at that. I'm just getting started with it, but I wanted to do some little code hack on it that I want to show you. And as I get to know that board more, I will be doing some fun little projects and guides with it. What else? I also will show you the kind of final PCB and enclosure for the fader wave project, which I'm going to be hopefully getting the guide finished this week, next couple days, later today and tomorrow, and should be published next week. So you'll be able to build one of those if you want. That will include ordering a PCB, though. So if you want to build one of those, you'll be ordering a PCB or five, usually that's the minimum, from JLCPCB or PCBWay or maybe Oshpark or, I don't know, maybe you want to fab one yourself, get some stinky chemicals out, etch it. That will be up to you, but I will be supplying the board files for that so you can make your own. All right, so let's get on with the coupon code I mentioned. So if you want to save 10% off today, until the end of the day, until midnight tonight, then head on over to Adafruit armed with that coupon code. Oh, look, yeah, so that one is out of stock right now, so you can't get that. But if you go to the main Adafruit site, click on products, you can hit the view all next to new products, see some stuff like this USB nugget. You want to get $6.90, just lopped right off the top of the price and get hacking with a little cool hacking board. It does ducky script kind of stuff. Check it out. There's the USB nugget. Or maybe you need a Flurk aluminum case for your Pi 5. Well, this coupon code will save you 10% no matter what you want to get in the Adafruit store. So GUI, G-O-O-E-Y, I think that's how you spell GUI, GUI. I'll get you 10% off today over in the Adafruit store. Let's see also, since I mentioned the store, I'll leave that coupon code up there. Andy Calaway says, shouldn't the coupon code be cheap, cheap? It should have been. I reacted quickly enough. One other thing I'll mention, let me bring back the Adafruit page here. If you just type in the word free after Adafruit.com slash free, that will tell you what kind of deals we've got going on right now with your purchases. So if you spend $99 or more, you're going to get a free PCB coaster with the Adafruit logo on it, lovely coaster. If you spend $149 or more, you'll get the coaster and a KB2040 board. It's an RP2040 chip in the Pro Micro format, perfect for macro pad, keyboard, game pad kinds of projects. So check that out. If you spend $149 or more, you're going to get that for free along with the coaster. If you spend $199 or more, you're going to get free shipping with UPS in these continental United States and the KB2040 and the coaster. And the top level, if you spend $299 or more, you'll get a free circuit playground express and the ground shipping and the keyboard KB2040 as well as the coaster. So this is your coupon code. Use that and get some free stuff. Spend a bunch and save a bunch with GUI, today's coupon code, brought to you by GUI Things. Thank you, David Glaude, for reminding me. I didn't say that. I usually do. This is good on physical goods. You can use that coupon code for physical goods in the Adafruit store. You cannot use it for gift certificates, subscriptions or software. So only physical bits. Atoms. Buy some atoms. Have the atoms shipped to you and then you can use that coupon code. Thank you, David. All right. So Tuesdays, I have a show which is the product pick show and on it I like to grab something from the store, give you a massive discount. We usually stock, we stash 100 of them. The amazing new products team will stash 100 of these things off to the side. Travis, Jelly, thank you so much. And anyone else who's involved with that. And we then unleash the hounds, release the Kraken with usually a 50% off. No coupon code during that time. Just the prices dropped cut in half. And then I like to do a little demo of it, show you the ins and outs, maybe some projects that have been done with it. And this week I have a one minute recap of that. So check it out. There. That's my product pick of the week this week. It is the B&O 0559 Doff Absolute Orientation IMU breakout. This is the one you want. If your project involves trying to figure out where you're pointing something or maybe where you're pointing yourself. The fact that it does the sensor fusion, which is to say it takes the magnetometer, accelerometer gyro takes all of that and does the calculations, does the math to figure out where the heck is this thing pointed in 3D space. It's gonna use the direction I'm pointing as it's sort of relative starting point. So you can see, even though I'm not pointing at my monitor back there, I was able to get the orientation to work. That right there is my product pick of the week this week. It is the B&O 0559 Doff Absolute Orientation IMU breakout board. Bunch of people said they got some of those. So we're looking forward to seeing what kind of projects you're doing with them. What sort of compass-y, orientation-y, control-ery types of things you might use those for. Very cool sensor. Let's see. Yeah, I was showing off the pressure washer nozzle there. I'll pull things down. Showing off that pressure. What? Here, you can hold that. And that's gonna fall disastrously. You stay there, Lars. I was showing that, of course, and Todd came back with this gem right here. A little nod to pulp fiction. I shouldn't be pointing that at you. That's rude. Maybe I should have pointed it off to the side. But yeah, all done with that sensor. Super cool sensor. Okay. Next up, what have we got? Oh, let me get set up here. Lars, what's up? Because I have a demo I want to do in the Circuit Python parsec. Let me set up my phone for that. We're gonna use the phone, as well as a controller that focused for you. Yeah. Okay. Here we go. Get ready for. Okay. Let's see if I've got this set up. I'm gonna just test a little. Okay. Yeah, we're good. Try to get that glare out of there. Okay. Here we go. Is that it? That is it. Okay. For the Circuit Python parsec today, I wanted to show you how to use micro OSC. This is a library for Circuit Python that Todd Kurt wrote. It's in the community bundle. And you can use it to interface over Wi-Fi with any device that can run an open sound controller OSC application. So OSC is sort of like MIDI, but a much more modern one uses 32 bit floats or 32 bit integers. And it has a whole bunch of other really cool features to it, including a lot of apps with these great UIs and you can build these UIs on your phone on your tablet on your computer. And we can connect wirelessly. You'll see this phone here is not plugged into anything. And my micro controller here is just getting power from the USB cable there. It's not not getting data. So it's a Wi Fi USB 32 or rather USB 32 chip. So let's show it in action. If you look at my repel down there, the little serial output, you'll see that if I adjust these faders right up here, I am getting output that is sent to the micro controller over Wi Fi and it's responding really quickly. And this can be all sorts of little dials and buttons and different pads and controllers. And all of that is working with one really simple elegant command in a library. So how does this work? First of all, I have my micro controller on my Wi Fi network. And then I have given it a server address that it's actually broadcasting that we can connect to. And then I have set up a couple of functions of what to do with let's say a fader or a toggle or a push button. So this is where you can say right now print things out. But in reality might have this controlling motors or servos or lights. And then we have this dispatch map, which is what tells different messages where to go basically which function are they going to use when they're when those messages come in. And here we're setting up the OSC server by giving the command micro OSC dot OSC server. And then we give it the socket pool UDP host and UDP port that we set before, as well as what dispatch map it's going to use. This is the default one, but you could have a different name if you wanted to. Then in the main loop, all we have to do is OSC underscore server dot poll. That's it. It's just checking for activity very frequently. So anytime activity comes in, that message is then sent through this dispatch map that says what are we going to do with it? Well, we'll send anything that's got this namespace one dash fader or this namespace one dash toggle and these are part of the really nice easy to work with aspects of OSC or these naming conventions that are used and then tell it what to do. So in this case, I have anything named fader is going to print out its value zero to one, as well as throw some asterisks on there like a little mini graph. But you can see we have a bunch of different types of controls. Here we can also have multiple pages. Here is a really neat x y controller. So you can see as I use that I'm getting messages very quickly transmitted over to the board of these two axes, the values on these two axes. And so you can see you can use this for all kinds of things. And the nice thing is there are multiple applications that use OSC. It's an open standard summer paid apps. This one's touch OSC, but you can also get some open source free ones as well and they all work. And it's a great way to interface over Wi Fi with your micro controller and build really nice UIs to control things. And so that is how you can use the micro OSC library inside of Circuit Python to use OSC surfaces to control your micro controller projects in Circuit Python. And that is your Circuit Python Parsec. All right, so one thing I should mention that I didn't is if you want to use this just simply go to the community bundle, you can find that on the circuit Python.org page in the library section, or you can just simply use circup, which is the command line library install tool and just type in circup install micro OSC, that will get the appropriate version for your micro controllers version of Circuit Python and put that on there. So really easy to use. In fact, I will share also the GitHub URL in the chat here. Let me find my notes so you can check it out directly if you'd like to. And there is example code there, mine is just a slight variation on that that example code. So there it is in two chats there if you want. And I'll just put it I'm going to just paste it in here too in case anyone watching this later wants to know github.com slash Todd bot slash circuit Python underscore micro OSC watch the capitalization and then tree main and that will take you to this page right here. So there's the library in there some documentation down below and a nice bit of example code that'll get you started. You can by the way in the example I showed here I just am using my micro controller as the receiver, you can flip that so you could have your micro controller be the sender, it'll transmit OSC things. So if you wanted to build a UI of some kind and then send that over Wi Fi to a computer and then use that to control who knows what synthesizers typically but visuals as well. You can you can flip that around. So there's examples for using that in both directions. And you can also look into I think check real quick. I think you can use the demo app for free. I find it is it touch OSC? Yeah. Many people have implemented OSC this is one of the more robust implementations Hexler industries or Hexler.net. And so you can see that's the the app I was using the version one or mark one version of that on my phone. But there is a if you see this screenshot, this is it running on a desktop computer on a Mac in this case. And so you can do all your GUI building there which is great for for setting up complicated schemes with multiple pages color coding labels and so on you can you can do that on the computer as well and send from the computer to your microcontroller and I've tested those things out. They were great. That one you have like a limited trial. I don't know what the limitations on it are but at some point you should click license and buy it so you can unlock the features or just have it stop nagging you I forget what you this. So there you go a really cool implementation by Todd for circuit Python that just makes it super easy to work with. And if you look here, let me go back to my sublime text. You'll see this is page three. So you can see page one page two page three. Those messages are showing up down at the bottom. So this is a page one fader one page one fader two page one fader three. So it has a nice simple human readable hierarchy of the naming convention. And you can send things simultaneously. So you can see here I'm getting messages for x y one and x y two on page three there. Todd says over in the chat I love OSC been using it on and off for over a decade. Wow. Very cool. It was meant to take over for MIDI it never quite did that MIDI has hung on but they coexist and they coexist nicely. And there's a lot you can do in OSC to bridge over to MIDI things. So it can be a way to set things up, even though your final sort of leg of the trip might be a MIDI message you can you can start things with OSC if you like. All right. So let's let's move on next up. I'm gonna put this away for now but this will come back because I'm working on an implementation for the Memento camera that I want show you and work on a bit. But what I wanted to show you next is the I mentioned the fader wave. So let me head over here and I'm going to just turn on my where are you? What is this thing called? What are we using here discord? Where's discord? So I'd like to be able to see the chat. Nope. More helpful messages. There's live broadcast chat. There you are. So you'll notice me looking over to the side of the monitor that I have behind this main camera died today. So I can't see what is framed on camera. So I'll be looking off to the side. I have a second secondary review monitor over there. So what are we looking at here? Let's take a look at the evolution of this design here. So this was my original version one PCB and sorry, focus is going to be really tricky for me to get just right. That looks like it's possibly sharp. Let me know if it's not. So this is the first version of the PCB that I did. I was calling it wave shape fader back then. But it's the 16 slide potentiometers, the footprint for an itsy bitsy, we can use them for the RP 2040 here, they'll both do synth IO and send over the same two pins. That audio goes over here to this RC circuit, which I had wrong on the first version, I actually had had hooked up the capacitors at the wrong spot in here to do their job. It still works, but it's not filtering the way it should to a headphone output or a TRS 3.5 millimeter output. So since I owe right to there, that would be enough. But we want to have control. So we've got this footprints for 16 faders. We have the two eight bit analog to digital converters those of the ADS 7830 I have two of those on I square C, little OLED display, rotary encoder, and then the DAC if you want to output control voltage for something like a older synth analog synth modular synth, that'll be kind of a fun experimentation there. And also put a little reset button up there. So very little changed on version two. I fixed that little error that I had with the RC circuit filtering circuit there, resistor capacitor, so that's fixed. Also added on the more suggestion old jumper there that lets you just bypass that circuit if you want or you can cut a little trace in the left and right. This is stereo cut a little trace there and you can use or not use that RC circuit. So it'll go straight to the left right outputs, or it'll go through that RC circuit based on these tool jumpers here. And then I fixed, I think a couple of little silkscreen errors that I had. And I also added a bit of art to it and renamed it. So that's fader wave, even though I'm still saying version 0.2 name changed through my little workshop logo on there and I made a sine wave graphic to put back there. So that's the board cool JLCPCB black version there. Then at one point with the original I had put it all together. So you can see it there. And I also made a little case top for it. This one's just cut out of some luon. Is that what you call this stuff? I can't really call this stuff, but kind of like a particle board, thin particle board, Masonite. I remember what this is. Just had some scrap laying around that was the test one. I hand cut this here because I didn't realize that the jack for the control voltage there on the DAC output was standing as high as it is. So I just, it's one of the nice things about doing doing this in an easy to work material at first, you can kind of hack some things out. I think I needed more space for my USB jack. So I hacked that out on the band saw and then took took measurements of those and rebuilt it before laser cutting. And then this was the first version of that on the laser cutter. I used some of this LED acrylic just because I had a nice size scrap of it. Not actually the look I want. I don't really I'm not doing anything interesting with these LEDs. They're just some on LEDs and I didn't really want those shining through. So I went to some opaque material for the later version, which is you can see right here. I can zoom out there and focus a little and I can get rid of this paper. It might be it. Close. So this is a piece of opaque acrylic, which one of the nice things you can do with it is raster eyes. So it's just a very, very light instead of the vector cut which will cut holes and things. I've rasterized like little dot pattern, very, very tight dot pattern 500 or 400 dpi to put some graphics on here, just this word fader wave, some indication markings for where you are in the fader just makes it a little easier to get back to some positions there. Made those corrections for for the holes I needed. And then I also did a bottom plate, which again, I just used that same graphic that I put on the PCB. I can't remember. Did I flip it properly? Yeah, so those those kind of match up. They're not not an exact alignment. You can even if you want I like the way this looks. It's just it gives it this. This is literally just from the rasterization, the light burning by the laser gives it this kind of matte finish and it looks sort of a gray light gray white, you can put paint fill like acrylic paint and wipe it off with a squeegee and it'll bond and dry just to that very rough surface that the raster graphic has and comes clean off the top. So you can do a nice paint fill might go a little deeper than that to do it. But I think this was this was good the way it was. So that's the case. It just goes on with some little standoffs here. You could get by without the bottom. I think I didn't try to see what height we needed to get past for the little rubber feet to work. But let me just pull this off and show you. I think we probably have enough so you could forego that bottom you could go at all if you want to. Yeah, I think we don't really have anything very deep. So the PCB you could just put some screws through that directly into this standoff. And then put some little rubber bumper feet on it and keep the whole thing a little, little thinner. But I went ahead and made a base for it. Screw back in there and you've probably heard enough demos of it at this point. So I'll spare you from that. I also don't have anything set up. But thank you. Oh, some people were complimenting the case. Thank you. Like doing these laser cut things, you could also do a 3d printed case if you want, which I'll supply SVG file that will be a good starting point for doing a 3d case. Also, Liz is going to build a project I think using the same board, maybe more focused on sequencing or control voltage or both. And I would not be surprised if she or Noah design a 3d printed case for this thing as well, which would be cool, much more accessible than a laser cutter for most people, I think. But that is it. That's the project. So learn guide is coming together. I will have that out pretty soon. I think try to finish it in the next couple days and go through moderation and maybe have it out next week. So that's the fader wave. Another use for it. You could do MIDI with it. You could potentially put a ESP 32 chip. There's actually a backpack for the it wouldn't fit in here the way it is currently, but there's a backpack for this itsy bitsy that gives it ESP 32. I don't know which one is it as to airlift kind of capabilities. So you could do Wi-Fi that way, which means you could turn this into a OSC controller, a Wi-Fi OSC controller. I don't know about Wi-Fi MIDI. I don't know if we have a Wi-Fi MIDI library in circuit Python, or if you could do it in Arduino, maybe you could use the nrf 52, 840 and do Bluetooth stuff BLE MIDI. So this could be pretty versatile. That's kind of my hope with it is that people will come up with some neat uses for that as a controller. Also, just to you know, if you have like a video editing, photo, color grading or music software with levels, you can do USB stuff just plugged in directly work great. So that's the fader wave. That's the state of things on that. So let's see next up, let me move on over back here. Oh, my gosh, that's disturbing with Lars there. Just had the guy sometimes. Oh, that's interesting. Apparently, the memento camera went in stock during the show. So grab that grab that coupon right there. And if you are interested, back out a few pages, we have looks like 100 of them went in stock, we have 90 left. So if you want to go pick up a memento board, this is a good time to do it. I don't know if the the there's one accessory for it right now, which is the front plate. Yeah, this enclosure kit. This is not available yet. But the main board, which will do all the things that that I'm going to show you here today, that is available now. So that's fortuitous. Thanks for the tip there in the chat. Todd, appreciate that. So what is this thing? Let's let's take a look. So here you have it this is a point and shoot camera platform that is open source. And you can control it using circuit Python. So you can make it be what you want it to be. At its core, it is a I believe five megapixel camera sensor. Is that right? Yeah. Excuse me, five megapixel camera sensor. It's got the little tft for previews on it. See right there, I've got the little case kit on it as well, which is not available yet, including the neopixel ring front there. But there's a whole that little camera lens is looking through. And that's an autofocus camera lens, which is pretty wild. It has I believe a tiny motor. It's actually a motor controlled focus that physically moves the lens, I believe. And so you can you can do some autofocus stuff with it, which is pretty wild. And then we have an SD card built onto here. So a lot of the demo applications will write images to SD. And I just wanted to show you a little demo of it in action. And then my kind of first attempt at modifying the demo code here is to add OSC control so I can take a picture using my camera remotely, which is which is kind of exciting and fun. And there's a lot of settings on here that you could adjust to like picking different filters, probably the focal length, although it might only be that you can control calling the autofocus, I'm not sure about that one yet. Resolutions that you want to use. And then eventually, with those LEDs, if you want to do some interesting stuff with those dial in some colors using the OSC control could be fun. However, you also got a UI on there, right? We've got the little D pad and these extra buttons, little speaker for some feedback and the screen. So got a lot of on screen control that we can do. So what I want to do is let's get this stuff out of the way here. And let's go back. Let's just go to a down camera focused. Leave it right about there. Yeah, let's in fact, let's leave it right there. That's good. So you can run this off a battery. I don't have a convenient lipo here. So I'm just going to run it off USB for now. So you can see here it is booting up. And it's ready to go. It has a live preview. So you can see if I put down there that's distinct. How did all the Lego mini figures leave the workspace? I don't know. There's a little wooden, wooden cube there get artsy. So there we go. See that. So we can use the left and right to go through and pick different settings. So nothing is lit up. I go right once. Now I can control the resolution. I think I hit select. And then I can go up and down. Maybe that select was unnecessary. And change what resolution photo we want to take. Let's take a 640 480. Normal mode, Solarize mode. See, sepia tone, bluish, greenish, reddish, black and white, inverted normal. And then we can also go and change the type of image we're file format we're going to save. So JPEG stop motion mode. There's a Gameboy mode, which is amazing. Has this dithered one bit image. Love that. GIF. And back to JPEG mode. The shutter button is right here. If I hold that, it will autofocus. And then if I press it a second time, snap, it just said just took a picture. So now we can, I don't know if you're supposed to be able to do this. I think you are. And it seems to work. I haven't corrupted the SD card yet. I'm pulling the SD card while that's live. And I'm just going to put it into a little SD card USB stick reader. Put that into my USB hub there. And I should be able to drag that image into Chrome. Let's see if that works. Just as an easy way to show it to you. So I'm just going to my finder, finding that SD card. And let's see where's the image I took? I have a bunch on here. Yes. Okay, that's it. And can you see that? Yes. Okay, so there's the there's the image I just took. Took. So that was just a 64480 pretty small image. But you can see it's very nicely focused on the top of the woodblock there. This is not your iPhone camera. This is not a super modern fancy high res camera. It is however a controllable through circuit Python hackers kind of camera. So I think it'll be fun for creating different kinds of projects, PIR sensor, things that'll take photos of birds, those kinds of projects that you want to have a little small, inexpensive camera setup that you can then hack to do what you want. So let's take a look at what the code looks like for what it's doing right now. So I'm going to go over here, guy right there. And I'm going to just open the code.py file, you're the only one in here. Yes, good. Okay, so this is actually the slightly modified version. What you'll see here are Jeff Epler's sample code. Right here importing time bit tools, display, gifio, numpy, py camera, that's the big one right there, that library takes care of a lot. Then some of this is me adding in some of the micro SC stuff. So I have a settings.toml file with my Wi Fi on there. The UDP host address of this thing because this is a ESP 32, S2, I believe is is S2 or S3. S3, ESP 32 S3. So this, grab my code again. This is now transmitting its little Wi Fi host so that I can connect to it from the OSC app on my phone. Same as before. These are my little handlers. So I've got a toggle handler. I've got a fader handler, those are the same as before and they're not really doing anything. They're just printing. But then I created this one here, the push handler. So there's there's momentary buttons in OSC and they show up as the name page or tab. So slash one slash push zero or push one, I can't remember if they start on one, I think push one, push two, push three, push four. So that would be for push buttons. So that actually kind of start to mimic what physical controls we have there are. I am just to make it work and keep it easy. I'm just saying let's look at anything that's on page one with the name push. And I think any of them, yeah, I'm not filtering. So any any of those push buttons will do the same thing. So I'm saying if it is something that's called a push button, then we're going to do exactly what the shutter control does in Jeff's example code when you're in sort of the normal JPEG mode, which is supposed to make a little beep on the speaker. And then it's going to display that message on screen, it's going to capture a JPEG, it's going to put you back in the live preview mode. And then it's going to try to save that to the SD card. So that's all the OSC stuff there. And then here we go, here's the main juice right there, pi cam equals it through pi camera dot pi camera. He's initializing the autofocus. And I believe that has specific settings for the camera that is available here. And that's part of the library as well. And then there's some setup here for things like doing the different modes like onion skinning versus GIF versus JPEG. We've got a little debouncer for the keys. And what else is of note? SD card setup. And then going through the different filters and things like that. So with it set up like this, I'm going to grab that SD card back out of my computer and hopefully not corrupt it because it just yanked it unceremoniously. Plug it in. It says mounting SD card when you plug it in, it says SD okay, so that's good. And now, what I'll do is reopen that OSC app. And in the OSC app settings, I'm going to specify this host address which happens to be one prior to that feather that I was using for the original demo. So this is 571921681.57. That is it. These reports that it's using both for sending and receiving. That's all good. So now if we go to page one, these are the momentary push right here. This should, let's get a new, let's take a picture of, did I touch it? There you go snap. So it just took the picture there. And I don't think I don't think we have a way of reviewing images on here, but I could be wrong, I've spent like really maybe 20 minutes with it so far. So it's a lot, I a lot, I don't know. But pretty cool. So that means that this thing would work remotely using, I should have just taken a picture. Let's find out if it did. Who knows what I was pointing at. I'm going to grab that SD card and handy dandy USB SD card reader to Chrome here, that SD card. Hey great. Oh my gosh, the quality of this photo. It's kind of pointing off at a light. But look, there I am. So that was triggered with the thing, probably should have used autofocus as well. So that would be something I have to set up, which I haven't yet in the OSC. So that is the first hack, my Mezzo hack, but really cool gizmo. I'm looking forward to setting up the lights on there, controlling those for things like effects or a flash or bracketed color coding kinds of images, get up to some wacky stuff with 3D maybe. So that's the idea there. Actually this might make for kind of an interesting stereoscopic camera setup. If you had two of these, you might be able to get them to talk to each other to make yourself some nice stereo images. Yeah, that's totally my new profile picture. That's definitely going up everywhere. Good idea. Thank you, Andy. So let's see. I think that's it. So let me know if you got any questions over in the chats. I'll mention again, we've got a coupon code today GUI, just because I was doing these kind of GUI things. That's why I came up with it. But if you use that coupon code, you'll get 10% off in the store today. So go get yourself some cool stuff, including the memento camera. That's really fortuitous that that right there is is available. Let's see how many we have left. Let's let's refresh 83. Okay, yeah, we got them. They're not they're not impossible to get. So maybe go grab one of those if you're interested and save 10% off that'll slice $3 and 50 cents roughly off of the price there. So almost just a $30 purchase. Why not? That is gonna do it for me and Lars there. This is been John Park's workshop, Radio Fruit Industries. Thank you all so much for stopping by and I will see you soon. We've got I believe a deep dive possibly with Scott or Tim tomorrow. I'm not sure. I can't remember if Scott was available or not. It can it can change. But that is Friday. There may be a deep dive with Tim on Saturday. We have a another probably pick of the week coming on Tuesday Wednesday will be 3d Hangouts in the morning show and tell Ask an engineer and then Thursday will be looping back around here. So thank you everyone for stopping by. I appreciate you and I will see you next time. Bye bye.