 Welcome to the show is me John Park and you are just in time for John Park's workshop. Thanks everyone for stopping by we have people over in our YouTube chat as well as our discord chat and if you're somewhere else I recommend checking out discord you can go to a to Furu dot IT slash discord and Head right over here to this live broadcast chat channel. You can see we have a whole bunch of channels there Including the welcome the general chat pet photos live broadcast chat and then a bunch of help with Depending on the subject you're interested in helping or getting help with circuit Python 3 printing audio Git projects radio res reply and so on and so forth so that's our discord go check that out if you're wondering where the chat is and I'll say hey to Jim Hendrickson and see Grover Johnny Bergdahl DJ Devon 3 and E Callaway nice to see you all and over in our YouTube Dave Odessa also Johnny Bergdahl again Charles Bernerford Good to see you all. Thanks for stopping by Let's see. What's going on? I Have an exciting development for today and that is the return of The John Park's workshop coupon code That is the coupon code for today right there floating right here in this space This is going to get you 10% off in the store on anything and everything other than software gift certificates and subscriptions so Throw whatever you're interested in your cart and type in walk this way into the coupon code section on your way out You'll get 10% off that coupon code is good until Midnight tonight Pacific no eastern time midnight tonight eastern time So you've got some time to to sift through and maybe you've got some projects You've been working on some repairs you want to make some preparations you want to do Dream big and get 10% off with the coupon code walk this way and if you head on over in fact to our Main page right there you can see we've got So pretty snazzy new little items to throw in the store including these type-c to type-c USB cables that have a type a tip that you can remove and these also have the magnetic end so you can swap in These sort of mag safe connectors that you can plug into a USB C port and that way have some Some safety when you trip over a cord you won't yank your laptop off the table. That's sort of the idea It's also a right angle connector for that this magnetic right angle USB type-c adapter and Also this nice-looking hex set. I have so many hex sets that I'm not sure I'm gonna get this one But I don't know maybe you can't have too many I do actually always have to steal the metric set from from my workshop if I'm doing something inside with it So maybe I'll pick one up. Also. This looks cool. This little pi Pimeroni Pico lipo power shim that gives you a little battery Adapter for lipos and on off switch Actually didn't check does that have charging on it? Let's check Let's see and pull that coupon code off of there for a second This is Does it have charging? Yeah It is a charger. That's great Power and charging LED indicators. Yeah, nice. So that's that's an item you might want to check out if you're doing some pie Pico projects But anyway, I'll leave that as an exercise to the viewer to go find some stuff that you want But this coupon code is going to get you 10% off So walk this way type that in on your way out any time today until midnight eastern time in the US Let's see what else is going on we have our jobs board that you may know about If you check it out right here There it is. You can see there's a new posting here called create an mp3 player. Hey, that's interesting That's related to something we'll be working on today total coincidence actually and this is the Mar Mfg is is the company I suppose In Fredericksburg, Virginia looking for some help. So it's freelance engineering job Look for someone help create an mp3 player to play from SD card reader control track selection and volume from an LED screen Hey, maybe Maybe today's walk person Projects will will inspire someone to to pick up a gig a little freelance engineering job So that's at jobs.atorfruit.com and go check that out What else is going on on? Tuesdays today's Thursday on Tuesdays. I do that show right there. That's JP's product pick of the week On it I like to grab something new from the store or an oldie, but goodie and give you a big whopping discount on it I think we have 50% off this week on this tactile switch assortment and I'll do about 15 minute show 20 minute show, but I like to reduce down a little one-minute excerpt So here you go if you missed that check this out The tactile button assortment you get 25 different kinds of buttons 10 each nice little smorgasbord of The buttons here and a little parts tray. I also get the different colors on these but these are I think a typical six millimeter This is one of these right angle ones that has some good support for the board these I love I'm crazy about these. I'm putting these on Jay's Midi button board. They just have a really nice it's a 12 by 12 millimeter, but they have a really nice tall I think 10 millimeter Button the sounds of these switches because they are good and clicky a little contact microphone Module this guy right here Little tiny one. I'm gonna use some tweezers to click this one actually The tactile switch assortment 25 different kinds of buttons 10 each That was fun. I did a bunch more of those two both on the show and before it's fun to click those So let's see what else is going on. Hey Let's do a circuit python parsec. I'm gonna get prepped here So my demo is good and ready to go Let's do it All right, sorry, I think that was a little echoey there For the circuit python parsec today I want to show you how to do this which is create horizontal progress bars right inside of circuit python using the progress bar Library it couldn't be easier and it's a really great effect really useful And here's how you do it in your code The main thing you're gonna do is this import right here from a to fruit progress bar dot progress bar import horizontal progress bar Then we set up our display in the usual way in this case I happen to be using a pipe portal, but I'm setting this up just using board display so I can use board Or rather so I can use display i o and Then I am creating a display i o group inside of it. Here is the key thing H underscore progress underscore bar is the name I'm giving to the progress bar object and the way we set this up is horizontal horizontal progress bar and Then we set up the position on screen so x y position I've got 10 pixels over and 90 down and this is from the upper left corner of the progress bar and Then the width and height I'm making it just about the width of the screen minus 20 So I'm just sucking it in a little margin And then the height of it. I'm making it is 24 It's easy to change then I'm using some predefined colors here for the outline the background and the fill color The size of the border if there's a margin or not the direction it goes These are the defaults to go from left to right, but we can swap that right to left and then a starting value I have it set at zero. I add that to the display group and then during my main loop I'm just iterating in this case through a range from zero to one hundred and one and every time we iterate We increase the progress bar dot value so it starts off at zero makes its way up to a hundred and when you Increment that value it draws the graphic for you. You can see it's nice and smooth and fast I have a little bit of randomness set up so that the speed varies each time as if we're doing a download or something like this So it's great for a visual effect It's also great for real feedback for things like rotary encoders or touch screens or data that you're streaming in from the internet Anything you want to display visually with a progress bar. This is a great way to do it You can see here in fact if I head back up and change about the height of it Let's make this half the height so I'll make a 12 pixel progress bar boom it updates And it's ready to go. So that is all it takes to use a horizontal progress bar inside of circuit Python And that is your circuit Python parsec I will also mention there is a base Progress bar class that the horizontal progress bar uses and there's also a vertical progress bar Much to some people's chagrin. There's not a diagonal progress bar because that would be bonkers You can one thing I haven't done with these is I'm sure you can mess with them and and Get the speed to decrease as you increase the size I think a hundred pixel high progress bar is probably going to be a little slower to refresh there In fact, I'll take out my delay so that it tries to draw as fast as it can so this will be the Not bad actually it draws pretty fast I see only a little bit of screen tearing on in real life. This is a little added delay with the video re-broadcast of this, but really super useful I First started using this for the mp3 Walkman or walk from person project And you'll see that in action in a second there. I'm using it for a couple things there both the horizontal and the vertical so really useful and Andy Callaway asks what about a pie chart as a progress bar? That would be very cool I don't think there's anything in the works for it, but I wouldn't be surprised if if someone could Create that maybe a Tim C kind of project foamy guy that sounds up as alley I know Brent Ravel was one of the people who worked on this and I'm sorry I'm forgetting at the moment the other in fact Let's actually jump into I'm gonna bring up a chrome window. I want to jump over to the read the docs for this so I'm just gonna Google this so ate a fruit progress bar There is a learn guide right here Which is it's called the mag tag progress bar basics But it really will work for for any any display that uses a display IO and if you look at These read the docs hopefully I've got the right version of that Here you can see Hugo doll was the was the I think the original creator maybe and Brent started working on it with him I think I have that right So here you can see this is the base class just progress bar And then we have the horizontal horizontal progress bar And the vertical progress bar so you can you can go to docs circuit pipe on org and search for progress bar to look into that I mentioned actually let me bring that back for a second because I mentioned it, but didn't actually do it if you Change the direction so I'll re comment this To one now it will fill backwards Oh, yeah, you can see my adhesive fell off on this Pipe portal. There's just a strip of adhesive there This is kind of meant to be under a frame and I didn't I just grabbed a raw one It's falling partly because the heat So that's the the reverse direction. I don't have any I'm not changing my code to change the percentage number that I'm displaying there though and So you can do bottom to top or top to bottom if you use in the vertical Otherwise they're very similar I mess around with things like the border thickness and of course that the colors as well so if we wanted to let's say Change the color out on this just change those three there now. We got a nice yellow one Let's make a red one There we go. That looks Terrifying for some reason So we're first reverse the direction back here That's default. You don't actually need to say zero defaults to left to right and You also don't have to Let's just comment this out here You don't have to animate them. You can use it for other things. So if we just change this value number right here Say start at 50 You can just create a graphic of sorts. So depending on your needs Just setting a static value that could be useful as well All right So, yeah, let me know if anyone's got some cool uses for that. I Have seen it in some of the IOT projects and now I've been using it in the walk person project Okay, so let's see next up I wanted to do a little bit of a gear report and Thankfully I think we've got Todd bot in the Chat over on discord because I'm gonna show And you know, I'll switch over to my bench camp for a second. I'm gonna show some cool PCBs that I got Recently from Todd you can see him there. I'm gonna switch over to this Workbench over here. I'll move this out of the way So these are just a few open source projects that Todd has been working on. Oh wow, let me see if my I Think the spotlight might be on full key light here full blast Is it? No, that's a 25. I think the camera this camera setting is a little overexposed but actually I'm gonna switch to Main cam there, that's what I meant to do there I Don't think I have a quick easy way to adjust that when I got to get up on the workbench to change it, but I'll try to Get at least get the glare off of there. So these are some open source projects If you go to github.com Todd bot this one is called the pico 8 encoder pico the number 8 and the letters ENC so this one uses a raspberry pi pico and It connects it to 8 rotary encoders so that you can do whatever type of inputs projects that you want and Todd if you're in the chat remind me, I think This one is just yeah, this one's just for use with the with the microcontroller This one is a seesaw based knob control and this one is I believe this one's a More of a developed project a music project. So this one uses eight pots rather than encoders And it uses one of our seesaw boards or seesaw chips here So that you can connect to i-square c Into another microcontroller and now you've got eight Potentiometers, which is really really neat really helpful. So I'm looking forward to to looking at that putting that together this one has a Todd bot.com or rather github.com Todd bot see knobs sek and obs So snazzy little procedurally generated silk screen on that too I Don't remember what these are on the side. You'll have to remind us of those buttons over there I think those are some tactile switches this one is similar except it has space at the bottom here for a cutie pie and a Midi or rather audio output. I think this one does audio Or maybe you can do both. Yeah, you can do both midi and audio This one's at Also at C knobs, but this one has code for doing a drone synth So you may have seen Todd demo some of these on our show and tell before but go check those out Also, you can just check out Todd's Todd bot on Twitter to see a lot of these videos Usually they're embedded in the github, but really cool little gizmo I will get the parts together and maybe put some of these together and show them off sometime on the show And there are some other other exciting ones too that I got from Todd. So thanks for those And I look forward to putting those together and playing with those so let me head back over to the chat for a minute to see all the Important conversation and possible corrections at least. Oh the links are there. Okay, so let me pop this up I'll go to my discord view of the world So you can see links there for Pico 8 encoder. Oh, thanks Andy you were saying that I think the the camera looked okay The C knobs is the other one both for just a input device as well as the drone synth Yes tactile switch buttons. Hey, I wonder I've got a big assortment of them. Which one's fit? Let me Let me see. I've got so many tactile switches Because of the product pick of the week Jump to the down shooter here Where are you down shooter down cam make a smaller me there we go so these From just some of the assorted ones I had here are you using that size? I think so yeah, so these little six millimeter ones will work. Well So you may have gotten some of these recently and this this would work with either the red ones or the blue ones Those have different stem heights so you might want to just go with one but I Mention we do have the party platter as Phil B called it Which are I believe all the same stem height? That's this guy right here. So that gives you These little six millimeter switches, but in white blue black red Orange yellow green and that brown it is brown So lots and lots of tack switches to pick from there. In fact, let me bring that project product up I've never I haven't done that one's a product pick of the week and it doesn't get enough love let's go to Back over to here What's this one called? Switch it's not the switch assortment. Have a button. No, let's try assortment No Here's a new segment called had a search on my own website. Yeah, it comes in that switch Holder, I swear. I didn't dream it this exists. What is this one called? Let's say tactile It's got to be under tactile Switch Shoo, there it is deluxe party tray. Okay, the the cute naming actually caught me. So, yeah, this is ten bucks for 160 switches. It's called the six millimeter rainbow tactile button deluxe party tray Where in the world is the part I need So this has I Get 20 of each. Yeah, 20 of each color. It's great And I think these are I'm gonna guess these are six millimeter or six millimeter. Maybe it's like a five millimeter actuator Yeah comes in the cool tray. I actually kind of want one of these trays for our our big batch I just have the The bag there, but this is 25 different kinds of switch. So I need a bigger bigger thing there I should probably just go to the deli and get a big party Platter and eat all the meats and cheeses and then swap in some switches And by the way, I'll use this is another opportunity to mention coupon code walk this way I'll get you about a dollar off of that. So that'll that'll be nine instead of ten dollars or ten percent off if you use the coupon code walk this way and Oh Someone in the in the YouTube chat said they just totally purchased it. I hope you knew about the coupon code I hope you were watching it from the beginning Did you psych? Really hope so Anthony Becerra says cheese All right, so that is that thanks for indulging in those So next thing I want to do is a little update on the walk person. So Someone asked about the naming. Yeah, so this is The unlike the walk man, this is a MP3 player instead of a tape player I think Sony did try to do their version of MP3 as a player one time I think they maybe maybe even have like a crazy high-end thousands of dollars super High bit rate player now, maybe they're using their their walk man name on it, but this is the walk person and Part of the reason there is because I could fit the word MP3 into there. So the walk person is an MP3 player and I'll go show it to you right now. How's that? so Started this project a little while back and built it on a breadboard then I built sort of a prototype case for it Got the proper headphones that you need to play this sort of thing in fact I will Plug it in for my own amusement enjoyment. You won't be able to hear this, but Show you what it looks like in action. So see here I have Audio jack to plug in my 3.5 millimeter headphones and I got the power switch down here So you'll see the screen does a little dance Lists the files So those are I'm printing those to the repel and the repel is is what's on right now Oh my gosh, that's so bright. You know what I'm gonna do. Let me try this Try to turn on this light and turn off this one So it's a little dark on me, but it's a lot better for the object here, so Now you can see I've got Bartle beats someone someone just mentioned that in the chat. In fact, he had Bartle beats is is the Musician that does a lot of the Adafruit songs And this is off the album frequency So if I hit the white button here, it begins to play it. I'm hearing it you can probably hear it if I put this around my neck Put that near my lav and you can see here if I Crank that volume up you will hear it a little better and now I can fast forward to the next song I'll turn that back down now One thing I didn't implement, but I wish I had and maybe someone else will or I'll get around to it is mute by clicking the encoder I don't have the click encoder doing anything right now, but I think it would be kind of cool to to mute that So we can also just pause but I didn't want to pause yet because what I'm showing on here one thing is we have the Horizontal progress bar in action and that's showing us the percentage that we are through on the song So it just lets you know how far through the song you are I didn't implement any kind of sort of scrubbing or partial fast forward Maybe a 15 second forward would be cool if it's possible in in circuit Python. I'm not sure if it is with the mp3 decoding It's a bit of a miracle really that the mp3 decoding in Directly on a essentially it's a m0 because I'm doing this on the rp2040 so One core is doing all of that of an m0 And it loads them off of SD card So it's playing each song off of SD card and you can see I can instantly switch to the next song Let's go backwards so you can see I was on clay guys now. I'm back to Daisy now go back forward to clay guys. I can Pause right there. So you'll see the progress bar is going to stop updating and resume and It's always kind of a question of What is pause play versus stop when you're not dealing with a tape because typically on a tape pausing? I think if there was one on a on a on a Walkman It was going to let you resume instantly without moving the head I could be wrong on that. Maybe that didn't exist. I just make that up, but with Pause play here. I'm essentially stopping the playback where I am and then it resumes it. I'm gonna take this off of my my Neck there in case that volume is too loud. In fact, I'm just check my check my chat real quick to make sure that there aren't any audio difficulties Before I keep going To Hey There we go. Oh Hey My thumbs aren't being capacitive. Okay. Good. No, she's audio. It's good. Thank you, Janescu so the pause play does does the Resume from where you're going the play button will essentially restart it from the beginning So if you're part way through the song, you just want to restart that song That's what I have that one doing. So you'll see the progress bar jumps back and when I switch to a new song either forward or reverse It always just goes to the beginning of that song So let's see some other features on here I'll go ahead and turn it off. So that's that nice little recessed switch there and on the side here We've got a couple things going on. We have refocus Close we have usb-c. So that's for charging or for noodling with your code But you don't need to plug into data to change the songs because we have the little SD card. So this is essentially like a tape mix tape player I only have one of these right here right now with songs on it But if you have a little bandolier of these or a tape case full of them You can just insert that into the little card extender So here I'll pop this out so you can see it. So there's the little There we go, there's a little SD card extender. These are really cool So it's not spring-loaded. This just clicks in But then this this goes into the spring-loaded reader if it happens to be one, which is what I'm using That is part of in fact, let me show you The screen itself Let me refocus here So this is the two inch 320 by 240 TFT and It has an SD card reader on the back. So normally you would Go like that, but being inside the case. We're a little far away from that. So I Designed the prototype case originally and then no I did the the finished one In those beautiful colors. This was my original which is actually a bit a bit tiny by comparison I like the very much like the added space that we get with this bigger one that no way redesigned it to be you can see my original Kind of lives inside of that one the space was necessary for the wiring and So that's how that that clicks in and out, but you can still access it from outside the case And in fact since it's a little easier to take take apart this one Then the final there which I'm still working on the guide for so I want to take some photos and videos and things but if you look at The way the top is designed here. This is similar to what no ended up doing. We have the See that the spare one of these. Yeah, we have the Neo key One by four in there over stem of QT and into that. We've just got four of our little Mechanical key switches there with some see do I have any juicy key caps? I have no key caps right there I probably have some here So that just lives like that and then it's recessed down inside like that so that you can click those buttons and That runs then to a Rotary encoder that is off on the side so you can see on this one here Lives in the side the design is a little different on this one, but it's living inside of This box right here and so that is Running to the Neo keys and then all of them are running to the feather And then lastly I have one of our little 3.5 millimeter Jacks I am running this as mono out and I think the reasoning was I don't think the I2S amp that I was using was stereo So you could probably put two of them in there But this was a big added complication and I decided to keep it mono. So while this is a stereo jack I'm just running the same audio to both sides. So depending on the on the music you you Really ought to remix it down to a single mono track, which gets the size down as well and helps with with playback And then also you can see here in the case. There is a reset button Let's see that in action if I have this. Oh, I don't have a it's gonna yell at me because there's no SD card So it's I don't have a fancy. Hey put in a tape, but just tells you there's no SD card So that's the reset there. That's a nice little sort of living hinge spring type of Design in in the the model itself anointed and That is about it. So in fact, let me turn this off for a second. I'll See if I can plug the SD card back in and then let's check out the code for this This is a bit of a there we go There we go a bit of a trick to get that in So I can unplug that and let's bring it over to Workbench. I just committed the code for this Clippership in YouTube chat says I love the colors me too. They're beautiful I think no, I knocked it out of the park with the colors on this really cool looking So let's see. Let me jump back to how about that view of the world get that thing off my head and I will go ahead and plug in USB-C to my workstation here. Oh, that's not USB-C That is all right and We focus Do I got a recolor balance it because it is that is not green in real life. That's That's much more like it So I'm gonna open up that code Close this one here So originally I developed this on a feather M4 But those are pretty much out of stock at this point or if not they're close to it We can't get that chip. So I swapped it over to run on the feather RP2040 I did leave a comment comment outable comment in a ball piece of the code that you'll see that lets you switch over to the feather M4 instead of the RP2040, but there is a Wiring change of what you're plugging the I2S audio amplifier into so you can see here we have a A ton of Imports I'm bringing in time OS board bus IO SD card IO storage audio mixer audio bus IO audio mp3 I've got my neokey To use seesaw to read those those button presses Seesaw itself for the rotary IO Display oh terminal IO. I'm not using any fancy fonts here Text label the ST 7 7 8 9 is the driver for the display and then I've got our friends horizontal and vertical progress bar First thing we do release the displays, then I'm setting up the tft display on SPI The SD card also on SPI See how those are set up there. There's also the chip select here reset here then we have I squared C for the Neokey I'm setting up the bus which will be used both for the neokey and the rotary IO and then the setup of the Neokey some default colors I wanted to use can't really see the LEDs they kind of show up You can see here if I cover this a bit you'll see that's that's kind of illuminated And so when I press a button they they change but it's not really meant to meant to be lit up that much I did it because it was there, but we don't really need those the setup on the key states Then I've got seesaw set up there to read the rotary IO encoder mp3 file system setup and I Check the SD card For a directory named SD and then I just list all of the mp3 files that are inside of there And then we print them. So that's that's why we see When this first starts up Restart this you should see Files get listed. So on isn't the card is just called. Hey, I don't think they're in a file I think just the SD card is is named SD and so I have the Files on the root level of that. I think that's right I will find out because I got to write that up in the guide. So there are my songs and you can see I'm sorting them alphabetically and that is what allows you to do a mix tape order Otherwise if you just went by names it could be in whatever order But if you have a particular album or order that isn't alphabetical or if it's a mix tape Then you can just prefix everything with numbers and that'll that'll work pretty well Then I have so this is some some code that Todd bought wrote to create a Record of the size in bytes of an mp3 and that's how we're using we're using that to determine the percentage that we go Through a song so that we can update that Horizontal readout as well as get get to the next song when we're done the track text, this is a little bit of code that I'm using to Get the names of the text to print up on on top there and then here's my I mentioned I have the Setup for the i2s Which has different pins depending on feather rp2040 or feather m4 and it might be the case You have to check there's actually a pretty good little mini guide about how to Find out which pins on your microcontroller can do i2s Happens to be I think there's just two pins on the M4 that work for i2s There are a lot of them on the rp2040, but it they have to be consecutive pins So I couldn't really use the same ones between the two Oh, yeah, DJ Devin said thank you. He says yeah, there's no actual SD directory. That's part of the virtual mount of the board Thank you Then I've got some colors that I'm setting up to do The progress bars. Oh, I skipped over this is setting up the mixer object So audio mixer I'm using one voice a sample rate that I'm encoding all my mp3s at single channel and bits per sample All of those are then played on mixer voice zero You could do multiple voices if you want to fade in and stuff like that I've done that before in projects, but I wanted to keep this simple In that vein of a cassette tape, which does not cross fade unless you make it that way to begin with Let's see then setting up the display with display. Oh, I've got this static bitmap I mentioned on show and tell last night that originally I was gonna see if I could do some animation of the tape reels, but really it just eats up too much resource and is slow so it wasn't it wasn't Gonna gonna happen for me. Maybe someone could figure that out Maybe it would need to be an Arduino to do it. I'm not sure but I decided to keep it simple and the fact that I was able to get these little progress bars Working without messing with the audio. I was pretty happy with Then I create my little labels for the song name artist name those are just derived from the the naming of your File so that you can see it down here the track number underscore artist name underscore song name is Is how that works and you'll see here it does Not like I can't remember if that's running off the edge Or if it just doesn't like the the fact that I put that underscore I think small selective should have a hyphen instead of an underscore Because it's not gonna do the space that way might be other ways to get around that, but it's also pretty big words I was gonna get cut off Set up the progress bars like I showed earlier both horizontal and vertical Whenever a track gets changed either because we've reached the end of the track and the new one starts or we hit Forward or reverse we are running this little Function here, which gets the mp3 file name derives the song name From that the artist name from that the mp3 file gets opened the stream is created in the decoder We check again how many bytes are in it so we can do our progress stuff And then we return all of those to the function that was calling it or the call that needed it Then we're just about done with the setup. We print the word walk person there for kicks. I set the play state to false the last debug time is what is being checked against Millie's for the track timing position and This I don't need actually just noticed that I got to get rid of that reels anim frame. I'm not doing that anymore I was originally going to use a Sprite sheet for that David Esa asks in the chat on YouTube. Does it have Bluetooth? It does not this is not a Bluetooth thing You could add to that. I'm sure but I did not I just went straight old school Plug in some headphones style Zero Deneo asks so what are you using for that shortcuts keys? I'm not sure I understand the question So maybe you can reiterate that Let's see then the main loop of the program here after we've started the mixer itself and waiting on that Just prevents some noise from happening. There are some things that can cause noise during setup So I don't actually start the mixer object until we're done with setup then the main loop here We're checking for the encoder And all of this is just about if I change the encoder is the volume going up or down and that also sends a call to Change that vertical Display readout If the play state is true, which I believe I have it set true to begin with or no no I have it so it doesn't play by default. We have to hit play So it's waiting on that If it's not playing Sorry If it's not true waiting to press a button, so let me jump down to what the buttons do These are the keys the four keys that I'm checking Key zero is the previous track One is play pause To is play the track from the beginning. That's what just jumps it right back See there and three is next track. So if either of these gets played Let's do the simple one if I play pause then I pause the audio And set the play state to false Or if it wasn't playing I resume audio and set the play state to true So when play state is true moving up here play state is true Here we're gonna check to make sure that we aren't done with the track And we're just playing the song And moving our progress bar along If it was not playing that's because we've moved to the next song So we kick kick through all of the renaming of the of the text up top by running that Process up there the check change track and then whatever track number we're going to Oh, I like this over in in discord Someone has posted a nice Sony Walkman that had the five channel equalizer on it. That would be a nice feature Do some EQ? The other two buttons do the same sort of thing except they just increment the track number or decrement the track number Within the the length of however many we have in the list And that is it that is all it does. So I'll be working on the guide now now that's put together Thanks again to no way for putting together this cool colorful version of the case the files will be available for that and You'll just need I think two M3 screws with nuts and two M 2.5 screws And that's probably the nylon ones we sell would work if not you could get some Some chrome plated or stainless ones like here Or nickel plated so or any screw really Let me know if you have any other questions Oh DJ Devon 3 says ladies revamp of the easy link might have Bluetooth classic That's a good point This is yet Janiscus says the touch slide bar would be kind of cool. Yeah, you could do that with the pipe portal I was demoing before this is a not a touch touch display here And I was trying to trying to make this less like a iPhone playing your music or an Android device playing your music and more like an old-school Device so I so I went with big ridiculous chunky buttons up here and humongous volume knob All right. Well, I think that is it for the project and I will just Before I go remind you that we do have the return of the coupon code. So We did these forever on this show and then the pandemic hit and we stopped doing coupon codes for a little bit while we tried to Minimize the the bleed of money there when no one could really work But now it's back. So 10% off you can expect these each week and this is good just today so load up your cart with stuff on the way out type in walk this way in the coupon code section and you will Be able to do that on pretty much any item other than gift certificates subscriptions and software All right. Well, thanks everyone for stopping by today It's a lot of fun hanging out with you and thankfully it's a little bit cooler today than it was a couple days ago So I was able to run the run the AC and here without browning out Southern California and survive it That's going to do it for me for Adafruit Industries. I'm John Park. This has been John Park's workshop. Bye. Bye