 and welcome to Lady Aida. Hey everybody, and welcome to yet another desk of Lady Aida. It's me, Lady Aida, here at my desk. When me is Mr. Lady Aida on camera control behind the scenes making all this go. Make it go, Mr. Lady Aida, make it go. All right, yeah. Well, we had a big week this week and we did a lot of stuff. There was a lot going on. Yeah, yeah, yeah. So for the folks who always asked, can I visit Aida for, that was always hard to do in the past, even harder now as you can imagine, because we're gonna be at 100% vaccinated shortly. But anyways, it's always hard to do, but we've been doing virtual tours for a while. So this week was manufacturing, it was manufacturing week and then it was also Made in New York City. So if you go to our press section, aidafruit.com slash press, that's the easiest way to do it. There's a blog post that has all the things about Made in New York City week and then October 1st was manufacturing day. So if you can click over to the other tab. We have a video that we did live from Aida Fruit on Friday and scrubbed through this. So you can see us at the factory live and then we talked about some Aida Fruit history and then we had a video run through, kind of like a speed round of all of the places that we have in our building and all the different things we do. So from shipping to manufacturing, we have a special robotic camera on the floors and then we have a run through and a walk through where we talk about all the different things. So since folks always ask or they're like, I want a factory tour, this is yet another one and we're going to continue to do these. So anyhow, and then Lady Aida talks about testers and more and it was a little bit like Desk of Lady Aida just so you all know. So I figured that would be a good way to talk about manufacturing in the USA which is in the news all the time. And I'll say it straight up, like we hear this every five years and really nothing comes out of it. And now everyone's like, oh yeah, like Adafruit manufacturers, like you guys are engineering heroes, manufacturing heroes. But the reality is we're not the heroes that anyone wanted but we're the heroes he got. So you just gotta deal with it, dudes. That's just how it is. We're weirdos and I know you wanted someone else but this is how it is. So anyhow, we have stuff that you're working on this week, right? Yeah. Okay, so that was me scrolling through showing the video but to watch the whole video, it's 30 minutes long. Yeah. People ask a lot of questions, we answered them much like our shows in general but this time it was at the Adafruit factory. Yeah. Okay, so that's a check that out, Adafruit.com slash press. Okay, so this week, well last week we talked about sensors that have the same pinout and how wonderful that is because it makes it so easy to manufacture new boards without having to get new stencils, without having to change testers, without having to change the pick and place program, especially the stencil, which is kind of not expensive but they're like $300 or so so you really don't want to, and they're big, you don't wanna get them unless you need them. So, we talked about the ADXL series, SPI I squared C accelerometers and it also was like, oh, I forgot about the VL53L0X and the VL53L1X, these are two time of flight proximity sensors that have the same pinout although they look quite different. These are both from ST and what's funny is like, you can't get like anything from ST right now but you can get the sensors. So, I was like, you know what, while I'm waiting for the silicon shortage to end maybe, let's spin up a board and I think I showed that last week where I just changed the silkscreen from 53L0X to 53L1X. So, the next step is to do a tester and I actually realized, I don't think I'd ever shown exactly how I code up a tester. So, go to the overhead and I'll show how I physically, you know, this I've showed, physical tester builds. It's funny when the overhead's not focused in, it looks like those dream sequences on soap operas. Yeah, it's like, I'm not new. Todd, you're really my father after all these years, Todd. So, I've shown these testers before I tend to use a Metro just because, you know, it has everything, the power regulation, the powers which is LEDs built in. I'd love to use Arduino's and Arduino shape boards and teensies as the base and then this is the shield that goes on top. So, this one is actually, it's a recycling of the, again, BL53L1L0X sensor and because it's the same pinout in shape, I can just recycle the board. One of the nice things about moving to the STEMI QT format is almost all the boards I have are now the same size. They're one inch by point seven inch, which means like, I can really reuse a lot of testers, which is like, you know, another thing that I don't have to do, reducing the friction is in the name of the game. So then, you know, this has a little standoff, but normally, you know, you, sorry, so you press this button to, you know, this is the reset button, so that's a nice thing, you know, at Mega328 to reset very quickly and then you press the board down to perform the test procedure. And in this case, you see that green LED blink. I usually also have the piezo go, but it's really annoying. So while I do the test process, I usually like don't enable the piezo, but so let's go to the computer and I'll go through the things they do in the code. Because I thought this was interesting. I don't have a library. I know SparkFun made a library specifically for, you know, when they write testers, they have like a tester suite. I don't, and I could, but I don't. I don't know. I just copy and paste, you know, the same code around. It is probably about time I should, I should library file some of it because it's so common, but it's also really short and it also does vary from board to board. I don't have the same test. Like I'll show you some things that are a little different about this design. So the first thing I do, of course, is, you know, I set up the pin definitions. One thing that I like to do is, you know, of course I have the LED and the piezo, the indicator, but I also have the pins connected to the sensor itself. In this case, there's an IRQ pin and a shutdown pin. And then there's this two eight volt pin. So this sensor runs with a 2.8 volt regulator. You wanna test the regulator, but that pin isn't brought out because I just ran out of space and it's not that useful. So instead what I do is I measure the interrupt pin, which comes out and it's 2.8 volts. I also have an interrupt change thing. Whatever IRQs you have on the board you're testing, bring that out to whatever your test bench has as a hardware IRQ. This is a really easy way just to tell if something toggles. It's really hard to catch an IRQ because of course, you know, it's happening asynchronously, but if you have a, if you have connected up to one of the hardware interrupt pins on the, at Mega328 GPIO2 and 3 are the hardware IRQs, that makes it easy. All right, so next up, I set up all the pin directions and make sure that's all set up. But most of the work is actually done in the loop. Why is it done in the loop? Because usually I want to retry. As people are pressing down the board, they might not get all the pins right. And so it might pass one or two tests but not pass all of them. I like to just repeatedly test until it passes and then, you know, I usually stop. So one thing I do really like about the, again, the Mega328 series is, these 8-bit chips are kind of dumb in a good way. I don't want my chips to be too smart because it actually gets in the way of the testing procedure. So one thing that's nice is that you can turn off the I squared C peripheral by setting TWCR, which is two wire control register. You set that to zero and actually disables I squared C. And that means, because normally with Arduino, the Arduino programming language, when you start I squared C, it enables the internal pull-ups on the I squared C clock and data lines. But what I want to do is test whether the board has working clock and data lines. And so this is a kind of a nice little hack. I turn off I squared C and it releases those internal pull-ups and so I can then verify that the next step, I set the clock and data lines, which is A4 and A5, to inputs and then check to make sure they're pulled up. That's a good first check to make sure is, I'm not checking if the chip is wired up. I'm not trying to characterize what I see. I'm just checking other pull-ups enabled because one, if the pull-ups aren't enabled, it means that resistor packed in gets soldered on. But also it kind of lets you know when it's ready to start. Because I call these drop-in beeps when people are testing, they drop the board on. They don't have to like do anything to begin the test. It automatically starts running to Texas pull-ups. What programming language is that? There's some folks that this is the first time they may have even seen this. What is that programming language that you're using right there? This is CC++, it's Arduino. So I'm using the Arduino IDE. Why? Because it's very fast to get started and it's kind of universal. So when other people have to maintain these, the IDE is known, the tool chain is known. It's like, it's a very easy way to distribute code around. So I like to use the Arduino core as my testing core and then I'll make changes to it if I need something that isn't in Arduino. Like I have gone into the teensy USB core and added exposed some, you know, VID and PID number things because it's like, oh, my tester really needs this, but it isn't exposed. I'll just go and do that rather than try to like start from scratch. But, you know, one nice thing is after I built this tester, you know, it creates a hex file, I just save the hex file in addition to the code and then I can just move the hex file from board to board and you know, they're gonna be making at mega 328s until like the heat death of the universe. So I'm not worried about not being able to get these tester brains. Again, that's another really good reason to use a tester brain that's not necessarily inexpensive but is long lasting. Okay, do you test the strength of the pull-ups? The right resistors were started on. No, I don't. That's not really a problem. You can do that, but I don't test absolutely 100% everything, everything. Instead, I test what is the most likely things and we really only place like 10K resistor packs and I've never had those be the wrong values. However, it's not a bad idea. You can connect and disconnect external pull-down resistors like 10K and then measure the voltage differential but I don't really test that. I just tested the pull-ups are there because honestly, if I can connect over I squared C, I don't really care what the value is, right? Maybe let's say it was 4.7K, but if I can connect, then cool, right? If the value is too weak, I won't be able to. Okay, so once the I squared C pull-ups are okay, I start I squared C and then a lot of the tester code is how can you test multiple things at once and test all the hardware connections, right? You want to test the components and the hardware connections. So this begin section is, of course, connecting to the sensor. So this tests actually multiple things. One, it tests the I squared C connection because I have to connect to the sensor and measure that the sensor is powered and measures that the sensor is the right sensor because if they place the wrong one, it wouldn't initialize. But I also am testing the shutdown pin. The shutdown pin on this sensor, it's kind of neat. You can use it to dynamically change the I squared C address. This is common, people like to connect multiple chips on one I squared C port. So as long as you initialize each board one after the other, you can change the I squared C address. And so in this case, I set the address to be 40 and that's not the natural state of the I squared C address, it's usually 29. And so if I can connect on address 40, I know that not only does the I squared C connection work in the sensors, but the shutdown pin works because if the shutdown pin isn't connected, it won't succeed in this. And one of the things I sometimes do to verify that I'm really testing it is like with my fingernail, I pull down on the Pogo pin to keep it disconnected and then I see does it, it shouldn't pass test anymore. It's like a little, I just kind of go through and I run the test, but I pull each Pogo pin down or I short two pins to make sure that they don't pass. Okay, so next there's testing the interrupt pin. So thankfully, interrupt pins are always, they're kind of annoying to test because what are you interrupting on? Whenever there is an interrupt polarity command for a sensor, I always throw that in because that makes it really easy because you just set the polarity of the interrupt one way, check if it's higher or low, flip the polarity and check that it's the opposite. And if that works, then you're done. I mean, you can continue testing the IRQ, but it's kind of the, it's like the easiest way to do it. So I like to do that. And then after I check the interrupt pin is high, which it should be on boot because that's the idle voltage, I can also test the 2.8 volt regulator. So this chip is powered by 2.8 volts and my Metro is running at five. And so I can, if I read the analog value of the interrupt pin, I should get about 2.8 volts or so. Don't turn on the internal pull-up. Instead, I'm measuring literally the voltage output from the IRQ pin. And then if it doesn't work, I just continue. I then switch the polarity, make sure the polarity is low. And then I actually start communicating the sensor and I'm like, okay, get me data. I just sort of, technically it's actually isn't necessary. I don't really need to do this, but I find it's kind of a good thing to make sure that the power is well connected. Maybe the capacitors are connected because if the capacitors are missing, it's not gonna be able to do the ranging because the power supply is volatile. And then I just, in a loop, I just take some measurements and this is actually also where I check the interrupt GPIO pin. I remember I said I connected it to a hardware IRQ. I check that it changed. When you read data, it should have toggled the IRQ to let me know that and it's a good place to test it. And then on success, I set the LED to be high. I turn on the LED and then you see I uncommented the piezo, mostly just to keep it nice and quiet. Another nice thing I do like about the, so you can see here, it going through the full test. Another thing I would like about the, the ATMEGA328 based Arduino's like the Metro328 is that you can hit the reset button whenever you want and it doesn't have this weird like USB disappear. It came back, it's much simpler, but it's also, I find much more durable. I've got testers that have lasted 10, 15 years easily. They're nearly indestructible. These chips and these boards are just, they will do the thing forever and ever. I really try to stay away from, I have Raspberry Pi based testers or computer based testers, but I really don't like them. I like to use something simple and embedded like an 8-bit processor. Kind of nothing ever really goes wrong with it. So that's my tester. All right, there was one question that was, I think it might be related soon to the great search, but we'll see. Yeah. How do you recommend storing your microcontroller boards? I have a plastic case with slots like a microcenter, but I'm more concerned for the best method. And then someone says, some people add anti-static sleeves and bags and more, but do you want to do the great search? Yeah, that's a good time to go to the great search. Where are you going to search with Digikey? All right, The Great Search brought to you by Digikey and Adafrit. Thank you, Digikey. Every single week, Leigh Deity uses her powers of engineering the last decade plus to find things on the Digikey site this week. This one came in from someone we know, and they said, hey, I'm looking for a supplier for some anti-static stuff. Yeah, so let's go to the overhead and I'll show what they're looking for. So they're making feather boards with headers attached. So like this, this like, you know, Metro mini. When you've got the headers attached, you really want to ship it with something protecting the headers. And you can use bubble, but it really, nothing is quite as nice as anti-stat foam. You press it in and first off, it's extremely satisfying. It's got like a little ASMR thing going on there and it doesn't move, it doesn't come out. It protects the pins, so you don't get something like this where it's like, oh no, pins getting bendy bendy, not so good. So they were asking like, well, how do you get anti-static foam? And it's one of those things where there's really actually not that many suppliers of it. It's a kind of, it's not specialized, but it's sort of, there's only sort of like three companies that supply it and it's both incredibly common, but like it isn't advertised, you know what I mean? Like it's like a copy paper. It's like, you know what to get it or you don't, but you're not gonna, you're gonna see ads for it necessarily. And so I thought I would show how to find anti-stat foam and there's a couple of different kinds and you really want to make sure you get the right kind. You want this firm kind that you can, you know. It's like shopping for tofu. Yeah, you want the firm tofu, not the soft tofu. I personally like soft tofu, but if you're stir-frying, you want the firm tofu. Yeah. Yeah. Yeah, let's go to the computer. Okay, so let's go to Digi-Key. So the first thing you can do is just look for anti-static foam, which will get you some things. So there's, you know, there's static control devices but I will say that, you know, if you're going to use this, like so statistically speaking, statically, statistically, you're not gonna have as much ESD damage to your chips and boards as historical. Like sometimes people get really kind of like nervous and they're like, oh my God, you're putting chips in something that isn't anti-static and oh my God, what are you gonna do? What are you doing? It's gonna get damaged. For the most part, you know, chips these days are way more durable than in like the 80s and 70s when they didn't have, you know, built-in ESD diodes and the process was a lot more delicate. Nowadays, like chips, look, you can definitely destroy them but it's just not as easy, right? They're much more durable. That said, if you're going to use foam, you might as well use anti-static foam and anti-static foam is available both in pink, pink style and black style. They're both the same. Neither, they're going to both work just fine. If you do need a large quantity of pre-cut, that's a separate service. I'm just gonna show you where to get gigantic sheets. Okay, so under accessories. It's a thing, it's under accessories, right? Not under grounding mats. So you can see, okay, we're getting close but here's the thing. The problem with this is it's actually kind of hard to see what you're looking at because it's like, these are two different things but they look the same. One of them is soft and you can actually see, sometimes you get like super soft urethane foam like protecting a PCB. You're not going to be able to get the pins through this. It's actually just like not gonna, it's just not going to sink through. So instead, let's, first off, let's only look at active. Hold on. And so the important thing is the specification. So there's thickness and specifications. So the thickness, get whatever thickness is you need, measure the headers that you want and then how thick you want it. But the most important thing is that if you want it to be the stiff type, you want to be cross-linked. That's the name of the type. I don't think that the closed cell is the, I don't know whether the closed cell is the right kind and I'm pretty sure it's not. But what I really like is three eighth inch cross-linked. So let's look at all the three eighth inch options. And then here's the thing. There's also the sheets available in three quarters, sorry, three eighths. Let me add five, 16th also. Okay. So then, yeah. So there's this, but you can even kind of tell this is like soft and squishy. You gotta be careful. This is the conductive. And this also, I don't know if it's firm or not. This one definitely looks soft and squishy. Cush it in guard. Yeah, so that's not gonna be the right kind. So let's also look for what's in stock. Okay. So this one soft, you don't want that. And this is also, you can tell it's soft, like you can even see the corners kind of bending. So the one you want is this. And what's nice is that you even have a photo showing it in use. So you're like, yeah, that's what I want. You can see the chips are like plugged into it. And so these are, they come in gigantic sheets two feet by three feet. So because you're gonna pay for the shipping, it's like a big box. You should get multiple sheets. Like I usually get like five plus sheets at a time. And then they're really easy to cut with any scissors. And then what you would do is I actually recommend putting all the boards in, like on the large sheet and then cutting them rather than trying to cut them into like small sheets or die cutting them and then pressing them, although that can work. It's just, I find that the more surface area you have, the easier it is to plug it in. Otherwise it's like when you're near the edge, you don't have enough material pushing up against the pins for it to plug in. Just if you go through this, you'll, and you do that, you pre-cut the square. It'll be like, oh, I remember she said, don't do that because of this thing. That's very annoying. So I just recommend, you know, you do what they're doing, which is you plug everything in and then you cut the sheet. But you do get a large amount. And you get, you know, six square feet, which is like, you know, a big chunk. So it's not cheap. It's like 50, 60 bucks. But you get a lot and, you know, I would basically buy 10 sheets that would last me like six months when I was doing kits and I'd put chips in them and you can put feathers in them. And of course, if you are using stacking headers, extra long headers, you don't want three eighths. You want one half inch or whatever. Just measure whatever it is and add a little bit. And that's the thickness of the foam you want. Okay, a couple of questions. Yeah. First up, anti-static foam versus tubes. And then the second part of the question is anti-static foam from a few decades ago would it break down after a number of years, crude pens, is today's anti-static foam any better? I don't think it's gonna be made much differently yet. I mean, I think it lasts a very, very long time. Like decades, I've got foam, you know. I haven't heard anything like that. I haven't ever heard of any foam issues. I think the soft foam will break apart much sooner than this cross-linked stuff, which is quite durable. I'm not quite sure civilization's gonna last another 10 to 20 years from now. You've got other problems. So that's future problems, but I think any foam is probably gonna be okay. Yeah, this is the stuff I use, and I think it's great. And this is from Conductive Containers, who I also, we had on INMPI, and they make, you know, they'll do custom stuff for you always. So if you need, if you do want stuff pre-cut or pre-shaped, they'll do it for you. Like, you just have to order like, you know, 10,000. But I just kept these with scissors and it was great. All right. That's what I got. And that's the foam questions. And that is? Foam foam. Discalated Aida. Release the foam. Where in the world is that part of your research with DJ King? Okay, cool. Well, that was Discalated Aida. Thanks everybody. And that was the great search for this week. Getting the show right in at 30 minutes, which we tried to do. Thanks so much for joining us this Sunday evening. We have all of our shows during the week. This week, JP is hosting The Show and Tell. Should have all other shows going on as usual. And a lot more in store. Okay. So we'll see everybody next week or we'll see you during the week. Thanks everybody. Bye-bye.