 It's time again for John Park's workshop. Hello and welcome to the show. Thanks for stopping by. There is a lively discussion about coffee going on over in the Discord. I think it's lively, at least I've been talking about coffee. Andy has tea. Hello. So if you're wondering where the chat is, if you're tuning in over on LinkedIn or on Facebook or somewhere else, a lot of the chat is happening in our Discord. And you can get there by going to adafru.it-discord and you'll get an invite immediately. You'll launch right over into the Discord and you'll want to head to the live broadcast chat channel. That's where this is going on. So there's Steve. Hey Steve, there are worms in your coffee. That's weird. Also we've got our chat over on YouTube. I keep an eye on that one, but it seems like most people are over in our Discord. So come on by if you want to hang out. It's also a good place for a variety of topics, questions about projects, Circuit Python, Arduino, Raspberry Pi stuff, 3D printing, audio, Git, help with projects in general. So head on over to our Discord if you're looking for conversation and advice or to help people out. It's a great place. All right, let's get the show on the road. Synth of all Lars synths. I saw Lars back there somewhere. Oh, there he is. He's chilling, wearing some goggles. That's good. It's good to be safe, Lars. What else is happening? I'm drinking some delicious coffee and one thing I, recommendation I want to get, I can't remember if I mentioned this before, but I get a variety of coffee. I get a new bag of coffee sort of on a regular subscription but from different roasters around this nation. And it's through a company who doesn't sponsor me or anything. I get no nothing from this, but I've been using them for I think two years now and I really like them. It's called crema.co. And I think there are other services like that, but they just aggregate, they kind of curate different roasters and when you sign up, then you can use their website to pick and say which things you like, profiles of coffees you like, particular roasters and then you get stuff, you put it up in your queue and then coffee comes to you. So I don't remember which one this is. I'm drinking right here right now. Well, I think this is from San Diego. I think I got this one outside of that subscription. It's modern times from San Diego, good coffee. Ah, all right, enough coffee talk, I guess. What else is happening? We've got our jobs board over at jobs.aderfruit.com. So if you are looking for work or if you're looking to hire someone, it's a pretty good place to do it. This is what the site looks like right here. Head to jobs.aderfruit.com. You can see there's a few different posts up here in the help wanted section. The available for hire section is next to that. There you can click there and post your own resume or look for individual people to hire. But this is where you can post your job positions. It's all vetted through Lady Aida and Mr. Lady Aida. So it's all good stuff and there's no cost for anyone involved with it. So it doesn't cost anything to post. It doesn't cost anything to put up your resume. It doesn't cost anything to go and search for jobs through that. So head on over to jobs.aderfruit.com to check that out. Also, other thing, I've got a little show on Tuesdays that I know some of you come by, but if you don't, please come on by next week. It's called JP's Product Pickup, the week I do it Tuesdays at this same time. So it's one o'clock Pacific time, four o'clock Eastern time in the United States and Canada, I think. Do you use the same time zones? You should probably know that. And on that show, I go over a new product pick. Sometimes it's something brand spanking new. Sometimes it's something from our archive of cool products that are in the store. And I give you a little demo of it. I go over some of the salient facts and show some videos of when it was first launched. Sometimes take a look at data sheets, coding examples. And I always have a big discount. This week it was a 50% off discount on this really cool little relay board. So when you wanna hook up a relay, there's a bunch of little auxiliary stuff that goes along with that capacitor and a diode to avoid the collapsing magnetic field ruining your day and so on. And this one makes it really easy because you can plug it into a three-pin JST connector, we'll call it the Stemma connector, not QT, but just Stemma. And then control it from any microcontroller pin really easily up to 250 volts. And I've got a little one minute video to give you a taste of it. Check it out. It is the Stemma mini relay breakout board. So I have a QT pie here so I can plug in my power ground and signal. And then I've got a standard sort of 110 light socket here for my connection over to the Stemma QT relay board. I have a lamp plug that's plugged in to my AC power. And then I'm using one of these nice Wego connector nuts to connect one line. And the other is going into common. And then my lamp wire is going into the side of this. And I'm initially setting it to false which means it's not going to trip the relay. If I just simply change this to true and hit save, bam, we have our light bulb going off. So you can see I'm sort of terrifyingly underlit now. It is the Stemma non-latching mini relay breakout board. Hey, you were about to get the bonus one, little repeat. So that was the product pick, super cool one. So come on back next week to see what's next. I've got a cool one actually. I know what it's gonna be. I have some stuff to build over the next few days in preparation because I wanted to demo a few different things with this upcoming one. So come on back. Wego connectors for the win. Yeah, there was a question last week. Wego, Waggo, I call it Wego and they're great. Love those little clicky connectors. What else? All right, hey, how about we do a circuit Python parsec? That'll be cool. Yes, circuit parsec. All right, let's get set up. Here we go, find my coding window. For the circuit Python parsec today, I wanted to show you how simple it is to set up capacitive touch sense inside of circuit Python. So this is an example where I have a little cutie pie here and I'm gonna use one of its pins as a capacitive touch pin, which means I can touch it or get really, really close to it without even touching it and it'll sense the difference in the capacitive storage potential of me versus the air and effectively close the circuit for me or touch it to create some sort of an effect inside of the code. So in this example, I just have one pin on here, the RX pin, and when I touch it, you can see it's acting like a button. I just have it turning on a bunch of these LEDs here. I've got a funky, I've got a broken neopixel ring here so ignore these busted ones over here. But that is just the same as any kind of button or switch that you could close, except it doesn't require an additional mechanical part. This is also really effective for when you want to cover something because you don't actually have to make contact with it so you can use a piece of paper or fabric or something like that and still be able to touch something. So let's take a look at how this works. I'm first going to go into my screen view here, screen, whoops. All right, and yeah, touch, touch, touch. There you can see. What's happening in code? I'm importing the board for pin definitions, importing time so I can put a little delay in, importing the touch IO library, and I'm importing neopixel. Then I set up a variable called touch pin, which equals touch IO dot touch in, and then the board dot RX pin or whatever pin you're using. Then I have a little bit of neopixel set up and then it's just so simple inside of the main loop of the program, I just simply check to see if touch pin value is true. If it is true, then the things inside of this happen, LEDs get filled red, I print the word touch and then I have a little sort of debounce pause there. Otherwise it lifts the pins back up to black. And so that's how easy it is to set up a capacitive touch pin inside of circuit Python. And that is your circuit Python, Parsec. All right, yeah, someone noticed that Lars is encroaching on us. What are you doing over there, Lars? Let me get, he's just freaking me out. Stay. All right, so let's get on with the build. Last week, I started the build of the arcade controller, remake of the piano arcade, and this is using these great little gizmos here. This is the LED arcade button one by four. It's a little STEMA QT board, so it uses I squared C to communicate with your microcontroller button presses as well as the LED PWM state. So we can have four buttons with four LEDs inside of them. So I have four of these set up so I can use up to 16 buttons, which is actually exactly how many I'm using in this build. If you take a look at the workbench here, I've got just a bunch of parts going on, a bunch of stuff here. Oh, this has nothing to do with it by the way, but I wanted to show you this. Let me jump out of that for a second. This is just cool. I got this at sort of a state sale junk giveaway thing. I don't know what it is, but it's some sort of really nice plastic hemisphere. So probably that's gonna go into some sort of project build maybe at the top of a UFO. I don't know. Give me ideas, what should I use that for? It's pretty cool. I only have one, so it's gotta be, it's a one of a kind. Unless someone knows where to get those where that came from. The state giveaway I got it from was a sculptor and model builder. So maybe it's a form of some kind? I don't know. Let me know in the chat. All right, so yeah, so you saw here, let me get back to that view. I've got, last week I had the buttons sort of just held in a little frame. Now I've been going through some iterations of the enclosure to hold all these buttons, some front buttons, joystick, ports and buttons on the back, ports on the side, lots of wiring. And so what I want to do today is just go over some of that iteration process that I've done in designing the enclosure and then just build the thing. So yeah, Garrel Gamp 237 Dooms says that totally looks like a UFO. Very much like a UFO, in fact. I'll lead you ring to work there. Boop, boop, boop, boop, boop, boop, boop, boop, boop, boop. Let me set that back there. So let's talk, let me head over to the work bench and I'll talk about sort of how the build process has been going for this enclosure for the Piano Cade or Arcade Synth controller. Backing up a bit, in case you don't know what I'm talking about, I'll show an example of the inspiration. Here, this was a chip tune synthesizer and MIDI controller that was built, I think maybe a hundred of them were made. And I, sorry, I don't remember the name of the builder who made this. They made one limited run of them and that was it. They're gorgeous, there were two sizes of them and made out of like a stamped and bent metal enclosure. Really cool. So you can't get that anymore so I wanted to make my own version of that because I was sad I didn't have one. So that's what I'm working on. I have a Feather M4 inside of it and the Feather M4 is running the Adafruit fork of the Teensie Audio Library which means I can do synthesis right on the board and it's got stereo output because the M4 has two digital analog converters, I think 12 bit. And that means we can make sounds. We can generate synthesis synthesized sounds in it and output over a stereo audio jack. Also can do USB MIDI control and classic MIDI control. So those are all the things that I have on there. I've got the octave plus one key for playing notes, holding maybe chords, could be polyphonic. I was doing it with some arpeggios. I've got some ideas for doing these little patterns or riff generation as Todd Bach called it, trying to come up with the right name for it, little sequences that'll play. And then the joystick allows us to increase and decrease the tempo if it's a sequencer and arpeggio and increase and decrease the octave for the sounds. I've also got three function buttons on the front which I've played around with using for things like changing the waveforms, could change the patch up, do a lot of changes to the audio patch. Other things, who knows, change the functions of some buttons. But I wanted to focus today on the physical build of it. So let me head over to the workbench here and let's get into it. So let's shift over here and pour a little more coffee and excuse the mess just because I've been deep in the build here. Got stuff everywhere. Here's how the iterations of this have gone. I started with designing inside of Rhino. I took some measurements and then inside of Rhino CAD program I designed the, drafted out the case in 3D, extracted 2D curves from that. And then I've been laser cutting the cases. So first version was just kind of the minimum viable thing. Can fit the buttons in there, can fit a joystick. These little joysticks, by the way, there's like $15 in the Adafruit store. We have them in stock. These have four limit switches in them, little clicky switches, and that's how most arcade joysticks work. So that fits up under here without that on there. And then it screws in place. You screw that little knob back on it and there's our joystick. So that's sort of version one top. The base of it, you can see I've got a lot of stuff to hold and I also need space for the wires. So this is about as short as I could make it because of the constraints of fitting all that wiring in there. So my per button pair of cables, so there's four conductors per button, two for the switch, two for the LED, go into these arcade STEMA QT boards and I've got four of them chained together on the I squared C bus. So they have four unique addresses. I think it's three A, three B, three C and three D and you can adjust those addresses by cutting a little jumper. There's four jumpers you can cut in different patterns to get that set of sequential addresses. And then for the brains of it, I was using originally a four, the quadrupler for the feather allows us to put a feather and a couple of feather wings kind of on a flat plane which is kind of nicer than a big chunky stack in this case for this design. Turns out I only need three so you'll see I've revised that. Here is, so I'll need to pluck those parts out. Here is, after I put that together, here's the front, here's the back with holes for the midi and then there's a couple of side pieces that look similar to that. I think I might not even have them here. I learned some things after putting this together. I was for some reason intent on not doing some tab and slot construction. I was gonna try to glue this up, put some braces and then I decided that's too much of a pain with laser cut stuff. You kind of have to accept that the real strength of it is the precision of these types of little finger joints and T slots. So I found that this was just falling apart too much and not worth the effort. So I also wanted to have a slightly cooler looking shape to the top and bottom of it and you can see here my next revision was in medium density fiberboard. MDF is, it's a little faster to cut than the acrylic and it's a lot cheaper. So I got some eighth inch or three millimeter roughly medium density fiberboard and started my revised design cutting it out on this. So you can see now I've got a little bit of a trapezoidal sort of shape here. I don't know what to call that, but a little taper somewhat inspired by in fact, the Pimeroni Picade, they have an arcade cabinet that has acrylic and MDF and they have kind of a nice tapery shape to it or I don't know what to call that, diamondy shape, hexagonal, barely hexagonal. With the sides still being flat, so we just have a little bit of an overhang. As you can see here, so there's no, there, like that. Oh, I moved it, did I? No, yeah, there it is. So you can see there we have that little shape there so we don't see the sides as clearly they get hidden a little bit and I have a little bit of overhang I think on the front and back of it as well. So after putting that together, things were good. I just made a couple small revisions to some whole placement and realized that I wanted to mount my hardware up on little six millimeter standoffs and so since those are up a little higher I needed to adjust these holes here to fit. You can see on the MDF you can also just pencil in some stuff, power reset, MIDI out, MIDI in, audio out and USB for power and programming. So that's the MDF version and once I made a couple small revisions to that I cut out the acrylic and I'm using also three millimeters so that means I don't have to change any of these measurements so three millimeter thick acrylic in some cool different colors. So what I'll do, that's an old version of that, get these out of here to avoid confusion is we're gonna pull some things apart and we're gonna assemble the acrylic version and for the acrylic I decided to go with some different colors for different parts of it a bit of an homage to colors of the Nintendo Entertainment System so I like that it looks cool, cool colors. The, by the way, the main way that this is held together is with these 80 millimeter long M4 screws with the hex head cap heads at the top and a nut at the bottom and then the tabs that hold things structurally so I have six of those around here and then I have the four screws for the joystick so see how all that goes together. And one thing I want to do, I just want to pop up the chat window so maybe I can see that while I'm over here working if there are any questions. Mike P. had a question I think from the Circuit Python Parsec if any pin can be that or if it has to be a cap touch pin it has to be a cap touch pin that the chip has on it that's been broken out to some trace that we can touch so if you look at the spec sheet on different microcontrollers like the QT Pi I can't remember if this was the M0 or the RP2040 it'll tell you which pins have capacitive touch. All right, so let's try to get semi-organized here. Let's start off with the base here so as you can see I've got four nylon M2.5 screws here with nuts that go through the base and I'm going to put some feet on here at the bottom of it, some little rubber bumper feet so that things don't skate around on the little nuts there. So we'll pop that off and now we're done with this. One fun thing about the MDF is it's laser cut, it's wood, it has sort of charred edges and so you get black sort of soot on your hands which I really don't want to get onto the acrylic, I have some textured light gray acrylic for the top that I don't want to mess up so I'll try to keep my hands clean if possible. So here let's take a look at the build on the hardware here. So I've got everything screwed down now so that way we can use the MIDI jacks without worrying about things falling off so this is a feather wing that's in the feather tripler, this is a feather proto feather wing onto which I've added the I squared C breakout, little spark phone I squared C quick stomach QT breakout there. Then I have a couple of JST socket pin headers here that I've got for two of the buttons that go on the back for the reset and the power that's on the enable pin. Then I have a RC circuit, so a resistor and a capacitor per audio channel and those go to pin A0 and A1 on the feather and then out to this 3.5 millimeter audio jack so stereo ground two lines of audio and ground and then I've got the feather M4 there. This is the wiring for ground and four of the GPIO pins which plug into the joystick so the joystick actually when you get one of these it comes with a little wiring harness you just kind of got to figure out which switches mean what but black is ground the other ones are the switches and then in software you can decide which direction means what for that. That's actually one of the only wires that I've hardwired onto something I originally had a little header I think last week when I showed this I had a little header I could plug into but I realized that was unnecessary and taking up more room than I wanted so I soldered that down there. So that's my little brain of that build so I'm going to set this here for a second and then let's take a look at the some laser cut acrylic that we're going to be using this is the base here, focus for you and so into this we're going to have the board that I just pulled out here there's the six larger screws are going to be for holding this together with the 80 millimeter M4s and then the rest of these are for the StemAQT boards and by the way one nice thing with these is they are the same footprint as the other StemAQT stuff so this is what one of the boards looks like on its own this pattern spacing is the same as our slider that's a potentiometer with four LEDs underneath it NeoPixels and the four button keypad one so once you get that spacing you can use that all over the place now again these have a I need some clearance here because these have their StemAQT quick connectors on the bottom so again I'm going to use these little this is from the 2.5 millimeter M2.5 nylon screw set and I'll have to see I have a few others and I'll be digging some out of the other because I'm running low on these are the ones that I'm using at the bottom their little six millimeter standoff goes in the bottom and then you can screw stuff down into them so that's how these four are going to be in here and it's kind of nice to use all four holes you could do it with two but it gets a little wiggly when you're plugging and unplugging so let's let's steal these four off of here and the arrangement that I did here was just to try to kind of keep them oh did I get that off? That's not quite exact is it? Did that change? Did I fix that? No, looks right. So these are all daisy chains together with StemAQT cables and they go in a pretty specific order that I don't want to forget so I'm going to leave it wired this way I didn't mark them on the top side but that I can show you the jumpers on the bottom or how these are differentiated so let's go ahead now in this prototype build I just used two of the screws. Boy I wish I had my iPad over here I guess I can open up Discord on my phone can't I? Why haven't I thought of that before? Let's see what happens. And well that's going to make life easier, sure. Okay so let's see, okay Iran says solution for laser soot wash the wood edges with an orange pumice soap like Gojo. Hey that is a great tip, thank you. I've never heard that or tried that. That's excellent. For those of you who don't know okay Iran is a very proficient designer for lots of things including laser cut enclosures under his Denki Auto brand. Look that up D-E-N-K-I-O-T-O and you'll find cool synthesizer gear with very lovely laser cut enclosures. Dexter Sarbert uses graphite to short the address jumpers so that's interesting. Some of our jumpers need to be shorted some of our jumpers need to be cut. This is one where they start, they're all cut and you can just use a hobby knife or other blade to cut it. I don't know if you'll be able to see it on here that well but I'll zoom all the way in. So you'll see this is the set of jumper pads there's four pairs and they start off on this board connected and there's a tiny trace that you cut between them so I've cut the A0 trace on this one which means I've added one to the I squared C address on this board so this one becomes 0x3B. The uncut one here is 0x3A and then you do the sort of binary math of the other ones to get up to what you want. Okay so let's now remove all of these. I don't have a cooking show version of this today so we're just gonna build the whole thing. We'll see how quickly I can do it, how much time we have. We have about a half hour. Seems just about right I think to assemble this. I love doing laser cut stuff for this type of a project. It's fast, sturdy, fairly sturdy and you can do fairly large stuff quickly compared to doing it all 3D printed. You could just do some parts of this 3D printed, some laser cut. I know some people don't have access to laser cutters. Plans for this you could of course use for making a stencil and hand cutting stuff, sending it off to a service bureau to be done on a mill or a laser cutter so there's a few ways that you can replicate that. I will leave those. I don't need those, those are just screws not standoffs so I'm gonna leave those there. All right, one downside of acrylic is it's very, very static-y so it loves to pick up little bits of dust and things. Okay, so we will now start adding in these six millimeter headers and we'll find out, you know what actually? Since it'll be faster for me to build this with two and not four of these and that way I won't run out. I think I have others, but I think despite what I said before, for now I'll do this with, why is my phone dingin' that down? So I'm gonna do these again. I'll redo this build to do some photography so I don't mind doing it part way this time and then I'll be rebuilding it again. So we'll repeat this sin of just using pairs of standoffs. By the way, these little nuts that we have in the Nylon M25 and Nylon M3 hardware sets in the Adafruit store, one thing about them is they actually have one side of the nut with a little bit of a chamfer as it heads into the screw which is the easier one to thread into and then there's a flat side that's not quite as easy to thread into but if you have very, very tight clearances on things like you only have just a little bit of a millimeter of screw thread to get into a nut, you can usually flip it over to that side and catch it quicker. The threading gets caught quicker. I don't know why they're built that way but they are and in a lot of cases it doesn't matter which side you do but if you're finding it hard to get a thread started on them sometimes flip it over. Okay, so that's my one, two, three, four of the cutie boards there and let's go ahead and put those on. I think by the way, while I'm here I may go to one wire, we could probably go to shorter wires on all these, I just don't have them right here. Let's see, but I do, yeah, so we've got these little, what are these, 50 millimeter. We've got these little 50 millimeter ones. These probably would work instead which is nice to use shorter wiring. This one here on this end I made pretty darn long so I'm gonna switch that out for a 100 millimeter instead of a 200 millimeter. I think that'll still reach the featherboard here where we need it to. So that'll go like so, like so. Sure, I think that's okay. It's a little tight, but I think that's okay. Careful with these, they can only go in one way and after you've used these for a while you'll get used to the fact that that one way is with the yellow, which is the clock line, wire all the way to the right, it's the easy one to see. So with the orientation that we put these on, on our boards, usually the yellow is on the right. How's that fit? Yeah, that's pretty good. I think that's a little better, I like that. Okay, and then I'm using the shortest, these are probably, I don't know, three millimeter screws in our set. I don't use autofocus on this one, even though it has a pretty good autofocus for humans, but for objects like this it gets confused by high contrast, busy stuff, which you find all over our circuit boards. So I use manual focus a lot of the time here. So again, if I had a bunch of those a little short, I would switch them out, but I don't know if I have enough of them right here. Nope. So probably I will opt for those when I do the full build. This is the ones I'm talking about here. And by the way, these are a pain to put in once they're screwed down, so, let's see, will that one fit? It probably will, but I don't think it's worth it in this case, so I'll leave it be. Downside of these nylon, Todd says in the chat that I should put googly eyes on my circuit boards so that the autofocus will work. That's a good idea. All right. Yeah, downside of the nylon screws is that you can't just put them on the end of your magnetic tipped screwdriver and hold onto them because they're nylon. See, look at this. It's done in half the time since we only used two hardware standoffs. All right, last of these. And as I mentioned last week when I was showing how to wire up these buttons, the color coding helps a lot. Having things plug in on both ends helps a lot because once you get to actually putting stuff together, sometimes you find it's painful to come in from one direction or another. So having it as modular and accessible as we can get away with is a big help. Worth the little extra effort to make that work. Andy Calloway with the big googly eyes in the chat. Okay, so I'm gonna go ahead and screw in place. Oh, look at that, all the dust. It's a gross sawdust and other things to pick up. So I'll screw in place the feather tripler board, all those parts there. I do have a little socket set somewhere that's small enough for these. It does make life easier for screwing them on, but I don't have it right in front of me so I will do it by hand. The last move with something like that usually is lock tight or a similar thread locker to prevent things from shaking apart. So that's on there pretty nicely now and what you can see is that I've got, the orientation here allows me to have MIDI plugs on the backside of this and the USB and audio on this side of it. So that and that is where those kind of main access ports are gonna be. All right, so let's build up the sides on here. So for the sides I decided to go with some black acrylic and with any luck we'll get some neat peels here. This is fresh, freshly bought acrylic. Usually that means it peels nicely. When you have acrylic plexiglass, perspex, whatever you wanna call it, when you have that laying around a long time, these can become a nightmare to remove. Oh, I didn't know this was textured or I did and forgot. Yeah, how about that? Ah, that means that I probably have a random chance that I cut some of this the way I wanted to. Look, I love that. I'm never happy with the glossy fingerprint covered shiny side. This has a beautiful textured side. So which side was that? I think that was on the white side, the white paper side up. Okay, that means this one is wrong. No, this one's right, oh good. So for this one, the orientation doesn't matter. It's this one's symmetrical in all ways. This one here, I had to set the plexiglass on the laser cutter in one orientation or the other and I just happened to choose right. I didn't realize. That means I get this nice textured side aligned properly, right? With, oh no, wrong, I'm wrong. Okay, it's gonna be the bad side. All right, I'm gonna recut that little piece though because I have placements there that matter. How about that? So by the way, again, this is an endorsement for a place that doesn't pay me or give me a discount or know that I'm even talking about them. I just like them, I've used them for many years. They're called Delve Plastics, D-E-L-V-I-E. And they have a good selection of plastics for laser cutting, that's kind of the main focus. Okay, well that's a really exciting that I forgot that I got cool textured but for this build today, it's not gonna be the textured side. It's gonna be the side out and textures on the inside for this piece. I'll put this one texture side out just to remind myself that that matters. And let's see how I did on these. This one doesn't matter. This one can, this one's pretty. These are just buttons that are kind of free floating in space so I can't get that one wrong. And the other, I think the other one I got maybe didn't get as lucky, let's see. I wish I had a close up mic for peeling sounds, let's do this. Look at that, that's really handsome. Maybe I did that intentionally but I really don't remember. Oh yeah, that's gorgeous. So that piece will go right here and this is gonna have arcade buttons in it. Whoops, do that so you can see. So it's gonna go right there. Let's peel off the backside. You can usually leave this paper on while you're cutting the plastic. Opinions vary on that. Some stuff you don't, like non-paper plastic. I will usually remove but it just kind of helps it not mess up the, so that's gonna go there. That, by the way, things are a little wobbly because I don't have feet on the bottom yet and so this is resting on some of those hex nuts on the bottom of the way I have it right now. I should probably put down some spacers. Let's peel off the back and put that in place. And did I get lucky on this one? This one matters. This is the height of the midi jacks there very specifically and it's not centered. I think I got lucky and cut it with the textured side up. My phone fell asleep, let me wake it up there. Frosted matte plexi will usually have a white paper backing on the matte side says, Steve, thank you. That is good to know. DB9Dreamer says, so I can't get that one wrong, famous last words. Exactly. Yeah, that was always the way. I actually made one adjustment to this file right as I was sending it to my laser and I got, I bumped something a little bit so one hole didn't line up and I just had to use a small needle file to make a screw hole fit. So this should get this held together enough. This all by the way in the end is held together by there being a top also with tabs. So it's very delicate right now before it actually has a top on it. But that there, did I get that right? It looks right. It's a little wibbly wobbly. All right, so those, we now know how those are going. I'm gonna play some outside here. And now we can start adding some parts. So this is an easy one to do. This is function buttons in the front and my little color coding. If you remember there, I have a button or switch one, two, three, four on these boards. They're labeled as such. And I have yellow, red, green, blue as my color order. This one, these three are the last three. So these, these just start on red, red, green, blue. And like this, then by the way, if you like peeling stuff, this is a fun project because every one of these arcade buttons also comes with a little peely plastic on the front of it that we'll get rid of at the end. Function buttons in the front and party in the back. It is a mullet. All right, so these, there are a couple different kinds of arcade button fixtures. These are really deep. As you can see, they could go into like an inch of MDF on an arcade cabinet easily. Some of them just snap into place. These ones have a little threaded collar here, which just tighten up like so. There we go. That's a little plastic you'll peel off of there. And now these will go into, I guess I can start. Yeah, let's go ahead and start plugging in. So for this section, this is the, one I didn't label the color of is the, let me push that connector in the rest of the way, is the switch. I only bothered with the color coding on the LED side of it. Once these connectors snap into place, they're hard to pull back out. So I waited until the end on those. Okay, so this is a switch on this top and LED on this bottom here. So you don't want to get those wrong or you'll be confusing the microcontroller as it tries to read a diode and LED as a digital pin. Okay, next one, you can see here, this is where I say having the four buttons would be nice. The four rather standoffs would be nice. And LED switch. These may have a little bit of a curl to them because I had it previously in the other case. So that's how those are gonna be arranged in there, like so. So let's deal with the back panel here. I just want to double check that that's the right height for that midi ports. Yeah, that's right. Again, you can see we're picking up some sawdust, unfortunately, on there. So for this one, I have a couple of switches here that are gonna be my reset for the microcontroller, which is really helpful when you're programming it, double click to put it into bootloader mode. And that's a on-off click, click. This one's momentary. So just a mini version, basically, of what the arcade button is like. And that's the other thing, by the way, that if I do any re-cutting of panels, it'll be to add some text. These are lighted buttons that I decided not to bother with the lights on. So these are just, this will not tell you the way I've built it. If you want to, I'm gonna put out a guide on this. If you want to build it and you want to get a little go a little further, you can add a, there's a pair there of posts for the LED. I also, on this one, I might tighten this up. You might be able to see I cut an irregular shape. It's a flatted circle. And that's what the shaft on these, just these buttons, not the arcade ones, but these ones are, because they have a little square bezel around them, they, you kind of don't want them tilting. I didn't do a perfect job. You can see there's a little bit of wiggle there. So I need to get that, just a little tighter on there, that flatted circle part so that those can't wiggle. Again, that's totally unnecessary just if you're trying to be super precise about it. If you're cutting this by hand with hand tools, you probably won't be going for that kind of precision. I can't at least, I'm not good enough, but with something that's like a CNC of some kind of laser, then you can. And these are just holes for the midi. So that one's done there. And then these will plug in, bring this closer, to, put a mark, a colored mark that has rubbed off. Let's see, that one is enable and that's reset. I just remember that. I didn't mark them well. So that's gonna be the reset and that's the enable. Click, click, there we go. That piece is good to go. Side doesn't have anything connected to it. You could have done, or I could have done, panel mount, USB and panel mount audio. I decided not to and just have large enough holes that you can reach those two ports. Okay, I guess those will keep falling, so I'll leave that out. I gotta wake up this phone again. We have a picture of a mullet. Hmm. Todd says, for labels, can you laser print some little transparent circles to fit in the arcade button tops? That is a good idea. If you take a look at these buttons. Eee, there we are. Thank you for pointing out that my audio died. The batteries went on my receiver pack. I really, that should be wired, I know, but it's a battery powered thing. Thank you, Andy and Mike P, for letting me know about the audio going away. Yeah, someone said about these buttons, you could stop them with some tabs. They don't go any further than this, like the little flat ends I put in. I mean, they can't go further than that, so it's, I think, for simplicity of the way I'm building this, I can stop those without adding any tabs or anything just by cutting that circle more precisely. All right, so next up, let's do the buttoning. Okay, so this is a two part thing. So I decided, let me back out here for a moment and explain what's going on here. So when you do laser cut designs, you often use some sort of little slots and tabs to hold things together. So this type of thing here will be, the width of this slot will be the same as the thickness of the material and the height will also be the same generally, so it's the best fit it can be. I just don't like seeing that little square on the top and I wanted to get slightly fancier, so I've built a double layered construction for the top, which means we fit like this, and then we have another one that goes on top that's only screwed down to the whole thing but doesn't reveal that construction. So what that means is we're gonna put all those buttons and the joysticks through two layers, so I gotta prep those. This is that hole I got wrong. I moved to the circle in my CAD program right before laser cutting. I don't think this is textured. I think this is just white acrylic. Let's see, I think just based on that paper being brown on both sides, I think that means this is, but we're only seeing the edge of it, so this one's gonna act just as a cool little color accent, like a little stripe on it, and the edge is always gonna be shiny on acrylic. There's no getting around that because the textured surfacing is a, like a treatment done to the acrylic. So this one, yeah, this is non-textured. I'm glad to see more textured acrylic in the Delvi store there though. Todd says that I'm fancy, thanks Todd, with a double layered approach. Appreciate it, yeah, you could kinda do that and it depends on their construction. You can kinda double up on this one, base and the top pretty well. Not the sides, just because I'm not using acrylic cement or I'm avoiding it, but you could. The other thing I considered for this was, and actually Carlin Ma, our good friend, and very good friend of Todd, mentioned a guide to acrylic bending, but I didn't have time to build a little heating setup and do it and try it out, I've never done it before, but so that, we were not gonna see other than this little white edge here, and oh, this still has paper. And it's funny, this one had clear plastic on the textured side and white paper on the shiny side, the gray, so they did it differently. Is this more talk about acrylic than you expected you'd be listening to today? That's more than I expected to be saying, but I shoulda known. All right, so that's the top, joystick on the left, go like that, nope, that, here we go. And so I'll start by putting buttons through and I can then do the joystick as well. So these got to transfer over to here. We're gonna go long, because I'm just gonna keep building until someone kicks me off. Unless Scott is going today, usually Scott is on Friday, sometimes he does his show on a Thursday, I don't think that's happening this week, so unless someone else has gotta use the Adafruit live stream, I'm gonna stick around and finish this build. So the buttons here are fairly interchangeable other than the fact that I'm using my color coding ordering. So I kind of wanna keep them as they are, I'll just make life easier. You can see that these are not meant to be changed very often, that's why I say some types of arcade buttons have like a little retaining clip and they just pop in and out, not these. These ones have these collars that screw on so you don't want to do this very often. I mentioned, I showed some picture of the earlier build of this and I've mentioned on Twitter that I had a lot of arcade buttons and our good friend Thea Flowers said I have gallons of arcade buttons and that's because Thea makes that big honking button Eurorack module that has a arcade button in it. All right, so we're just gonna shake off those into here, speaking of buckets, okay. And I will just repeat this spacing for ordering over here, first button. So, and to keep these held together, keep this plastic held together, I'm gonna go ahead and screw this one down. This will be the third time I've put this together in one way or another and there will be more by the time I'm done. All right, next one. So again, it's my yellow, red, green, blue ordering and man, I wish I remembered, I guess I'll leave these a little loose so that I can reorient them based on this bend in the wire to get them as neatly plugged in as possible. And there's, yes, there's probably a way to hold this better than what I'm doing right here, but that's what we got. Okay, so those should stay together. Let's, yeah, I'll just go for it this way. Red, yellow, green, blue. It's not a disaster if you screw this up in one way or another because you can just re, you can unplug and re-plug these whole cable assemblies, but it rather not. So someone say mm, pizza? Did I say pizza? And he's talking about pizza. Are you having pizza? I could go for some pizza. Okay, so that's four. This is the second board. These arcade one by four Stemacute keyboards definitely make this wiring job a much easier proposition than without. So thanks, Lady Aida. I don't know what inspired this if you had some arcade projects in mind, but does anyone know? Did Lamore say anything on a show about what gave her the impetus? I'd be curious. I was also thinking that this, I like the arcade theme here, so I don't want to really change it, but I was thinking it would be kind of fun to integrate one of these super huge mechanical key switches into this thing. One of these. That's kind of a panic button maybe. Maybe that's the MIDI panic. Let's build that into the side of the thing so you can just slap the, I guess MIDI panic should be a E-stop, big E-stop button. That would be a fun thing for Adafruit to carry is a nice big E-stop button. The yellow casing, ruggedized, yellow mushroom switch. They're not cheap though. Seagrow versus, he's looking forward to the time and a half coupon code, because we've gone over. Has anyone ever used one of those custom heat shrink tubing printers? Because then you can label, it's like a label maker for heat shrink tubing. You can label your, oh, one fell out. This one here. I think this project is okay with this level of organization, but some projects you want. Things to have nice names on them. You can read all over the cables. Code is buttons, buttons, buttons, buttons, buttons, buttons. All right, we are almost there with, all right, I am missing one of these screw collars. There's one. Yeah, that means we are done with this now. I can go away. That blue acrylic, by the way, if it looks familiar to you, I've used it in a few projects over the years. I originally got a couple of huge, like four foot by eight foot sheets of it for my Arduino Grande project. And I've been using it ever since and somehow the plastic still peels off of it, which is amazing. Okay, so now we'll put the joystick in. So this just comes up through the bottom there. And since, again, actually, this is kind of cool. Since I'm using this double layer approach on the top, it allows me to countersink these screws, not all of them, but these screws, if you look there, those can get countersunk. They're not fully flush, but close, which is neat-o for the joystick nuts for those. Also, these joysticks are built with some nice forgiving little slots instead of holes, which gives you some leeway like that. So let's get four of those nuts for those screws. And these are also M4, maybe, I don't know, 14 millimeter long like that. And for these, just to keep it from popping out. Also, I like, with stuff like this, I like using hex head just because it looks a little neater than a Phillips screw since it's exposed on the top. Not look a little fancy, I say. Maybe for the learn guide, I will just point people at this video so I don't have to do too much photography. What do you think? I know the Ruiz brothers are very clever about pulling frames from video for learn guide sometimes. So there we go, get a nice clean installation there. I'll leave the screwing on of the joystick, maybe, as the final step. So now, we've got these out. Get to go into these. So yellow, red, green, blue, and I'll tighten up these collars afterwards. This is joystick over here. Actually, let's plug that in. And let's do a bunch of plugging. Sometimes it's easier to go maybe from the middle out with stuff like this just so you don't run out of space for your hands, but I think I'll try it this way just to keep some sanity. So again, the switch ones are the unmarked of the pair and the LED ones are the marked, color indicated. I love plug-in modular stuff together. How fun is this? That's one now. When I was first putting this together, I at this point would test this to make sure I didn't really goof something up. Since this is the third time I'm putting this together, I'm gonna live dangerously and presume stuff will work and be a pain in the neck to troubleshoot if it doesn't. So that says the problem in making things for publication is you gotta build them like three times, once to figure it out, once that actually works and once to take the pictures during assembly. You wanna know, I don't know if I've mentioned this before, kind of a neat trick, if it's a trick, but a neat method I've used before is to take photos of a disassembly. It's a lot easier to get that right. So once you've got it fully built, doesn't work for everything, but a lot of times I will build a thing and then I will take photos of a step-by-step disassembly which when you reverse the order, looks like assembly photos. Much neater. I've done that on video too, which if you can do like a time lapse and avoid making things look like there's no gravity by dropping them, don't drop things. No one knows. So, yellow. We are getting close, folks. I feel it. Red. Would it be nice if these were shorter wires, maybe? It would be maybe a little hard to maneuver. Would it be nice if these were silicone wires? Sure. But overall, this is pretty manageable. Andy Callaway, I keep wanting to upload stuff to Instructables, but I keep putting it off. It's a lot of work, it's true, it can be. It's also gratifying, so try it if you haven't. And last one, this final button all the way over here is the first button on the fourth board, the other three being our little front panel function buttons. Ooh, I got that wrong. So glad I bothered or took the time to color code stuff because you can tell at a glance that all of the LED wires are actually in LED spots. Ordering looks right. Yellow, red, green, blue, red, green, blue, I don't know if I'll, yellow, red, green, blue, red, green, blue. Okay, so at this point, I think I've got everything connected. I will do a little sort of dry fit assembly here. Maybe, yeah, this is just gonna be a little bit of finissing things. I won't, I might screw down just a couple screws and then I'm gonna turn it on and see if it's actually working. Again, if you're building something like this that's complicated and got a lot of wires with the potential to touch other stuff, it's not a bad idea to do a continuity check with a multimeter to make sure you don't have ground and power touching. It's clicked in here. Can't see those because I'm hiding them with my top thing. Okay, so that's three sides. A little bit, and this'll be the not so fun one which is, lift that off. But acrylic is a little bit bendy. Not super bendy. It'll definitely crack if you're not careful but bendy enough to do what I need it to do in this instance. Click, all right. Now, while some parts of this are together I will drop in some corner screws here. And in fact, as I get one done I will thread a nut on there to hold it together. You can see how dirty my fingers have gotten just from touching things that have touched the MDF. The singed and edged, chart edged MDF. There, let's get the other corner. One thing I may do on the final build of this and then there's definitely no taking it apart backwards is I may use some acrylic cement to connect these corners to each other so they're not flapping open because you don't really get compression with acrylics. It's not like you can just screw this down tight and it'll force those edges together. Also, since these screws are a little longer by about four millimeters than I really want I could do a thinner layer, like a 16th inch acrylic layer at the bottom, some spacer, just cut it on a grinder. There's some options there. Let's just put two more screws in and then actually is that enough to hold? I think that's enough to hold, to power it on because if it doesn't turn on then we will be taking it apart so why make more work for us? Okay, it's looking good though, I'm happy with that. Okay, it's gonna be very wobbly because we're on two screws. Let's fire it up and plug it into something to make some sound with. So first of all, I need a, what is this? A USB, a micro USB. I might just do a battery, let's do a little power brick battery. Oh, my phone just turned off again, here we go. DB9Dreamer said that's what I was saying about two tabs per edge, it holds the corners better. Yeah, that's a good idea. I maybe do vertical tab, vertical tab, so that, cause right now it's only have one in the middle. I think maybe that's what you're talking about. Yeah, we'll bump there, bump there, wouldn't need glue. So I think that's a good tip, thank you. All right, let's see if this powers it on. So I've just got a USB power brick here, plug that into my, so this is the feather, I'll show you this, if you can see it, the feather is directly in there. Like I said, I didn't use a panel mount USB, but I think I can get away with that without needing it. Okay, and then I will power this on, and, oh, it's not, I think this battery is not happy. All right, do I have a better battery option in here? I don't, all right, let me get an actual USB. USB power adapter, here we go. This should be good, this is I think a two amp or two and a half amp wall adapter. One of these days I'm going to put some permanent USB ports, high power ones that don't turn off somewhere. So yeah, how we doing on time? We're about 20 minutes over, sorry about that. Power take two, oh, I might need to be plugged into the computer, sorry, yeah, I think I'm running USB MIDI, this might not turn on. I think it's gonna hang, yeah, I think that'll turn on until I plug into, okay, let's plug it into the computer, sorry about that. Let's move over here, yeah, put a down shooter, here for a second while I get this set up. Right, so I have my little curly cables. All right, give me a moment, I'll focus that. There we go, shiny buttons, as upside down it is. I wish this were USB-C, but Feather M4 is not. I see a light, I see the red LED, reset. Okay, you can see I'm already gonna regret not having an easy way of lifting the top on this. Darn it, let me mess with, let me just make sure my serial port is closed, this is, go towards the light. That's off, that's on, that's reset. Those LEDs are not coming on, all right. Let's crack it open. Yeah, I doomed myself by saying I should be fine. What's that extra wire for, someone said? I don't know, what? Okay, so you can see here, let me switch this to a bigger, you can see that there's power going to all of the, these little I squared C boards for the buttons, they have green LEDs under them, the light when they get power. You can see over here, Feather is lit to say that it's on. There are chance that I got these two buttons plugged in wrong, in which case it's never gonna be fully on. Let's, I'm gonna open up Arduino and I will re-upload the code to it just in case something funny went, why not? I don't see any missing wiring and I think that's always the port I was going into on I squared C, yeah. All right, let me reopen, sorry, you won't see this but I'm just gonna reopen the code that should be running on here, sure, this one should do it and in Arduino I'm just gonna check that it is available to flash and so right now I'm letting Arduino compile the code which it takes longer the first time after you open it and once it compiles most of the way I will double click the reset button on the Feather which puts it into bootloader mode and should make it appear, okay. So, see I'm not seeing it pulse, there's a pulse that it is not doing. All right, let's see what gets found. So I'm watching it try to find an available port and it's not finding it, something is bad, what is it, I'm just gonna try to unplug power so it should fail to launch if I can get the code onto it because I've unplugged the I squared C. Funny thing is very little has changed about the side of the hardware since last week or the demo I did the other night so this is supposed to just be the enclosure build today I wasn't anticipating this. Let me just try a different USB cable Ah, that's a good sign. You know what I'm gonna do is I'm gonna re-plug the Stem-AQT boards into here if it just comes to life. I'm also gonna open up a MIDI monitor to see if it'll find the device. Okay, so it's seeing it but it's not receiving any button presses so it knows that the board is there which is good. I'm gonna re, yeah, this is enabled so I'm gonna re-plug in my little hardware reset and hardware power, I will unplug this first and I do see now the mark that I put on those so that's good, this also means this should be good. Okay, but those don't need to be plugged in, those were optional so I feel like those should have. Yeah, so the way I know that it's kind of not working is I'm never seeing these light up. You know what, one other thing I'll do, let me open up the serial monitor in Arduino. I turned off any wait for serial lines of code in there so that shouldn't be it, but I've seen weirder. Okay, look, there we go. Let me share this screen with you actually. Screen capture, new screen capture. One second, get a funny mirror effect for a second but I'm just gonna pick one window which will be this serial monitor. Okay, so this is some useful feedback from Arduino. It is saying that it's launching the serial and MIDI which makes sense, that's why I'm seeing MIDI show up but it isn't finding the I squared C devices which it's too bad those light up green because that just probably means they have power but that means something is wrong and what I'm gonna try is get that longer cable back and go to the far side of this board in case I kind of had this nagging suspicion earlier that that was a possibility that either this cable or this little adapter that I'm using, you can't quite see it was an issue so let me just make a little space for myself. We'll try to plug in, remember I said it's hard to plug these in underneath there when it's in place. I may need some needle nose pliers. In fact, I'm sure I do. Right angle once would be great but I don't think I have any right here. Otherwise we can unscrew that and get it in there. And now, first of all, I'll just run this where I had it there because I think that board breaks them out on both sides but in case it doesn't, I will go to the other side of it. So I don't know if we'll see that serial message update itself. LED arcade, not a fan, okay, so let's pop over to the other side. Whoops, sorry, I shouldn't plug that. Don't think I had it over there but very inconvenient spot fact. And if not that, what? I don't think I had it over here. There's also a chance, I didn't really deal with these that much. There's a chance I damaged some bit of wiring on my little proto board there. All right, so let's go over to this other side. I don't think I had it there. Weird things have happened, sure. Yeah, LED arcade not found. Why? All right, I think we're gonna have to call it there. It's a mystery. I'll get this fixed the rest of the day. I'm sorry, I can't do it on screen for you, but I don't wanna keep you any longer than this. I don't wanna get into a marathon. But other than it not at all working, it's pretty cool build. Hope you like the actual physical enclosure design side of it and I will get this up and running. I'll let you know what went wrong with it and then I'll put together a learn guide so that you can build your own. I think that's gonna do it. Thank you everyone for stopping by over in the Discord and on YouTube for Adiford Industries. I'm John Park. This has been John Park's very extended workshop. Bye-bye.