 and welcome to Descaladiata. Hey everybody, welcome to Descaladiata, beaming to you from downtown Manhattan, where the Pride Parade happened today. It was very exciting to see everybody out, a lot of folks celebrating parades, floats, very busy streets. But we're broadcasting now, we're gonna show you some electronics, which you can enjoy with all your Pride Parades as well. So this week's gonna be a little weird because we have, we're changing some things around, we have a bunch of things. Tomorrow in the news, we can't talk about this until tomorrow, but there'll be some big news in New York City and Adafruit is included in it. So we'll get the word out about that. And then on Wednesday, there is show and tell, but there may or may not be asking an engineer because we might not be able to make a bag of time because we have something going on, it's all good. And then this weekend coming up, it's fourth of July weekend, so there will be no Descaladiata. So that's programming note, but let's kick it off with what is on your screen. What are you making? What are you doing? Okay, so this week, I was gonna show some samples, but it ended up being a STEM a Sunday, a sensor Sunday. So trying to get back to some old boards, get some more breakouts out. I kind of took a detour into a lot of ESP boards and got a couple feathers designed, but I wanted to like get back to some breakouts. This is an old breakout I had the PCF 8574. So let's go to the computer real fast and then I'll go to the overhead. So this is a eight channel GPIO expander. So it's got, you know, I squared C input. This is the chip. What's interesting about this chip is it comes in like eight different packages. It comes in like, you know, SOIC, TSOP, QFN 16, QFN 20, like this wide QFN and the original breakup board design, you know, like a year and a half ago had the 16 QFN, which is like totally unavailable. But what is available is the 20 QFN. Why? I don't know. It's just not as used maybe. And so I redesigned, you know, I just swapped the package out with the, you know, the CAD library for the three and a half by four and a half. They call it QFN, but I kind of, well, I guess it is a QFN because there's pads on the end. It's not a TDFN, but it looks like a TDFN because it's got mostly stuff on two rows. And this is an interesting chip. You know, I see this a lot in like, you know, I squared C LCD converters and some other low cost converters. What's interesting about this chip is it's a I squared C GPIO expander, but it doesn't have any registers. You literally just write the byte or read the byte. There's no direction register and yet it's bidirectional, which is like a little bit weird because I'm like, how do you do that? Well, it turns out that in the documentation, they're like, it's a push-pull GPIO expander. It is not a push-pull GPIO expander. Not really. It is a open drain GPIO expander. And so if you want to, if you're using it for logic levels, then yes, you can write one and zero to each bit of the port. And the logic level will be high and low, but if you're actually trying to drive something like an LED, you can only sync current. So let's go to the overhead and I'll show my little breakout. So this is a breakout that I just, I just have the LED stuck between ground and, sorry, power and one of the GPIO. So the high pane of the LED is connected to, oops, sorry, jiggling this wire. The high pane is connected to power. So the anode and the cathode is connected to the GPIO expander. And the GPIO expander is like going high and low. And so what you would expect is if this was truly a push-pull expander, then what I could do is connect the high pin to the anode to the LED and the cathode to ground, but you'll see it actually doesn't light up. Even though the logic level is going high to low, it actually can't source current because there's a very weak pull-up built in. So if you're controlling logic, it's okay. If you're controlling something like an LED where you have to actually sync current, you can only sync, you can't source. And then you can use it for button reading, but you can only connect the buttons to ground because the pull-up resistor, again, that built-in pull-up resistors is basically always on. So you can either have output low or input pulled high. It's kind of interesting since it's bi-directional, but it's a little bit of a weird hack. That said, it's very fast because there's no configuration. And for a lot of people, it's okay if you just want to sync current for an LED, that's pretty common because usually the end channels are stronger than the P channels on a GPU expander. And for buttons, it's pretty common to expect a pull-up. So it's like, even though it kind of only has half the capability of a normal expander, like you can't source current and you can't do a pull-down or you can't detect a button that's connected to high because you can't detect a high, you can only detect a low. You know, it's fine. I think it's low-cost and it's simple. So we have this little breakout board that's coming handy, coming handy, especially since, as we talked last week, the MCP series of GPIO expanders are like totally unavailable. Anyways, if you're wondering about the PCF, because I was wondering like, what is up with this chip, now you know. We'll answer some questions tonight. It's gonna be a little bit of a longer show, so I'll add these in. Have you considered making a breakout for the Abercromb RTC 32.768 kilohertz AIG7S7 real-time clock? Never heard of it. Sounds good, Chris. Want me to send it to you? Yeah, I'll take a look at it. This is from Scurver who found this via Digikey. Cool. I have an RV like 2038 or whatever breakout board that I never finished. You know, a lot of stuff kind of, you know, has been, the chip storage has really kind of jumbled my schedule. I used to be on like a one board per week schedule, but I'm spending like two or three hours a day just like sourcing alternatives and like jugging parts. And so, you know, that's very exciting. But I mean, it's been a while since I actually got to do some new practice. What's next? Okay, so next up, I also wanted to design something today because I was like, I feel like designing something. So let's go to the computer. So I think you sent me this project that you posted. It was just kind of cool. It says like a pro mini to game port adapter. And if you remember having a Sound Blaster 16, you know, you have a joystick port that you plug in and you know, you plug into the back of your computer. Some computers had game ports. You could have one or two joysticks and you could like play with a joystick or like a, you know, a Joy-Con controller. And I was like, oh, this is a good idea. You know, there's a lot of people who want to use these old retro controllers, even though they're not like, I don't think they suck, but they're like definitely not very ergonomic, but there's something about them that is very charming. I thought it would be cool to make a little breakout adapter to make it easy to use. Now it's interesting is that I'm not gonna go into the detail of, you know, how the code works on the computer. But what's interesting is that as you expect the X and Y joystick, right? There's really a joystick or like a thumb pod or whatever is a potentiometer. There's two potentiometers inside. And you know, they're 100K pots. But what's interesting is they're connected as rheostats. I'm not connected as like voltage divider potentiometers, which means because at the time, there was really like no such thing as a low-cost ADC in the 80s and the 90s. So computers did not have analogical converters. Instead, they would feed the resistance of the pot into an RC oscillator and measure the pulse width. Basically it's a 555 and they measure the pulse width. This would happen inside of an ASIC, but there was no ADC. So instead you would do this RC, you know, calculation and it was good enough. You only need like eight bits of precision. It's a video game. It's not the data acquisition system. Which I think is, I remember reading about this, which is why a lot of times if you overclocked a computer or if you, depending on how they did it, if you simulated a computer, the joystick was a little weird because it's such a freaky way of reading a resistor, a variable resistor to do it via RC counting, RC pulse width time counting, not via an analog digital converter. But thankfully, you know, this is just a nice potentiometer from a project on Hackadio which shows, you know, the, I'm gonna really zoom in. The, there's two joysticks and they actually share a port. And so if there's two ports, it's just once flipped. Just a little bit like floppy disconnectors or just, you know, like the, or ID connectors. There's this, there's definitely this thing where they're like, let's just put two things on one cable and you just flip them or twist something to change which one is selected. The buttons are standard, they're just connected to ground. And then yeah, there's these potentiometers. You can see they're wired up as variable resistors. So let me quit this cause this is done. So this is the design I came up with for the potentiometers. Hold on, I always have to get rid of this side thingy. For the potentiometers. So first off, I have, you know, the DE-15 here and I just copied over the thing. It is a five volts. You need five volts into them. Now I'm like 99% sure that most of them will, most joysticks would be happy with 3.3 volts but like, you might as well do it right cause there's gonna be that one or two joysticks that everybody wants that does want five volts. So I do power it from five volts so then you can see I have the four buttons and the two joysticks. For the power supply, I used a little switch cap converter cause I don't need a lot of current. We're not driving a motor here but you do wanna have the reference voltage be good enough and any LEDs that are lit up or whatever. So that's the five volt power supply. And then I'm using an AT tiny as a seesaw chip. The reason being is if you're just doing plain GPIO expansion, there's very inexpensive like the PCF 8574, very inexpensive chips that are great for that. If you're doing analog inputs there's low cost analog input, four analog input chips that are I squared C2 and it was just one or the other I'd probably pick one or the other. But the moment you have both like you have both digital and analog inputs it's like you are better off just using a microcontroller in my opinion. So this will be programmed with a seesaw peripheral code and you'll have like IRQ support and all that. And this is powered off of five volts so that the analog references that come into here I added the other half of the potentiometer and other resistor and then I'll do the math to calculate the resistance instead of trying to do the RC timing thing. So this will be referenced to five volts but then the I squared C pins are pulled up to 3.3, right? So whatever is controlling it, you know, if it's running from five volt power and logic it'll be fine because the five volts will just be five volts and everything's five. If it's being powered and the logic is three volts the three volts will be boosted to five but the I squared C logic level will still be three. So it'll be safe but the joystick will get the five volts it wants and the AT tiny will be running at five volts so they can do the proper ADC referencing because the high side of the potentiometer is going to five volts. So that's the design. I don't know if anyone out there has done a PC joystick interfacing if they have any tips. Otherwise we can move on to the great search. All right, here we go. Every single week, ladies are powered of engineering to find things on the Digi-Key site. We called this to great search. Thanks to Digi-Key for making this happen. Lidia, what is the great search this week? Okay, so this week I was just showing off a project I was building. It's a joystick adapter for retro PC joysticks. Like the ones that would have a 15 pin connector that would plug in the back of your 486 DX and you would be able to play Commander Keen with a joystick with your Sound Blaster 16 sound card and joystick port, isocard. But there's a lot of people who want to use these retro adapters so I thought, retro joysticks. So I thought I'd make a little adapter but to connect to the joysticks you need a DE15 connector. So let's show what that is. First off, my schematic. It's a two pin, two row, 15 pin connector. It's a D sub style connector. And then this is the pin out I was just showing. And this is a project that has a similar connector so you can see it's this big D sub here. And I want something very similar. I want it to be a right angle connector. I want it to be through hole. And if you look closely, I also want to have these like, I don't know what they're called like retention screws or like these little standoffs that are 440 size screws. And then this particular joystick that's plugged in doesn't have it but a lot of joysticks have a little like thumb screws that you would use to mechanically like permit and patch it. This needs a friction fit and it will friction fit just fine. But I think I'd like to have those little added standoffs just for mechanical security if you do want to have something that doesn't tear off. So let's, so now that we know what I'm looking for, it's a D sub, D E connector, and I want female, I want it to be because this is the plug part and this is the socket part. So I want the socket part. So let's go to digikey and we're gonna search for D sub connector. So one thing that's fun is that I have the beta which is a new thing. I've had the beta on for a bit but it's actually like as of this week, it changed over. So if you're logged in, do click try the beta if you want to try this out because now what's really neat is like they have pictures of the products and the interface is a little bit smoother and easier to use. So one thing that I like is before, like there would be a list that'd be like, which one do I want? Now I can see I want this one, the D sub connector. I don't want the back shells and hoods and I don't want all these accessories. These are all the cables. I definitely want just this fella. Okay, so now you can look, they can see the interface is a little bit rounder and there's like kind of drop shadows. So yeah, there's a bunch of different options here. So the first off I want to specify, well, first of all, I always like to specify active. So I'm only looking at what is currently available and the number of positions, I'm gonna use the filter. I only want 15. There's like sometimes there's, whoa, 152. That's a huge D sub. I only want 15. I think these are like stacked once I'm gonna get like two. So it's like nine and 15, but I only want 15. So let's apply that'll cut down from 150,000 down to 11,000. Another thing to watch out for with D sub 15 and higher numbers is there's also a VGA standard, which I don't know if I'll be able to find it. There's a VGA port that uses 15 pins, which is three rows of five, but we want two rows of seven and eight. So we do have to specify two rows. And I want, remember I need sockets. I need the receptacle, which was with female sockets on it. So let's cut that down. So yeah, so this is basically what I want, but I want the through-hole version. I want something like this. So let's look for right angle through-hole. There you go. Let's see. I want right angle through-hole. There's a couple of like, there's SMT through-hole, select that anyways. And then not board edge. Yeah, okay. So let's look at these. Okay, cool. Yeah, now we're talking. Okay, so this is what I want. So you're seeing the images are starting to be and here's actually something cool about D sub connectors I've just had to source these over the decades. The pinout, the mechanical connection is like really standardized. This is not like USB connectors where I've noticed like just because something is a micro-B USB connector or type C does not mean it's going to be pin compatible or socket compatible or hole compatible. With these subs, I found that 99% of the time, like these are all going to be even from different suppliers, like this is Amphilite or WR or whatever, they're all worth electronics or TE. They're all going to be pin compatible. So you just have to choose what like finish you want and whether you want like all the extras. So I'm going to actually just go for stuff that's in stock and not marketplace because there's a lot of options. Here, why don't you hand me your phone? Nope. Thanks. Everybody wants, everybody wants to be to search for stuff for them. Yes. Okay, so next up, I do want, let me see, there's so much going on here. Well, I do want to, well, I don't want to go to Haas, so let me add that, although all going to be to Haas. And then I want to search my price and then what I'm actually going to do is I'm going to just like mouse over to find the cheapest one that does what I want. So this is like the correct type of connector, but you notice it doesn't have those standoff thingies. So I'm going to just keep going down until I get to this one. So here I finally found one that has the standoff connectors. And again, definitely check the datasheet, but anything that's this shape and pin out is going to be compatible. And then you can see from the 3D view, it's got like the mounting tabs, it's got the screw holes and it's got the socket connector. And it's a pretty good price. I mean, like in quantity, it gets to be about a dollar. So check this out. This is the ADF15 AKG T2S, lots of them in stock. And this will fit perfectly in the standard pin out shape that I've got here for my joystick connector. And that's a great church. Okay, so next up, let's do a question and then we're going to do some IonMPI. Yes. A question for Lady, have you all considered stocking the 24 gigahertz, millimeter wave radar sensors such as this and it's, things are similar. I've never found that they work quite well, but I'll take another look. I'll send this to you right now. Yeah, I know that radars have changed and there's a lot more makers. I remember like, geez, like eight years ago I got a bunch of radar modules and I was very unimpressed with them. They were kind of flaky and hard to use, but I can take a look again. Maybe they've improved. Yeah, thank you for the suggestion. We'll check it out and you know if... If it's good, I'll stock it. If it's good, we'll stock it. All right, so we're going to do IonMPI. Let's kick it. IonMPI. Okay, IonMPI, we look at the new products every single week. You can see these on Digikey. Yes, there's a special edition from the desk lady. It was actually handy because I'm going to show the demo and maybe I'll show the Arduino code as well. This week's IonMPI. Is this from Sequence? Well, here's the thing. Technically it's actually from Microchip, but it's a partnership between Microchip and Sequence and I really like their logo, which has that like cool, like can you cross every square in the dot using only three lines or four lines so there's a puzzle that you always get in grade school. Anyway, it sets a solution. So this is the AVR IoT Cellular Mini, which is a new dev board from... Sorry, Microchip using an Avel AVR microcontroller, the AVR 128. The cellular module is from Sequence and the SIM card is from Truphone. So it's kind of like a big collaborative effort, but I'll say this is actually one of the nicest cellular dev boards. I've seen it was extremely easy to use and the price is really good. So first up, the microcontroller that's included is the AVR 128 DB64. So this is an AVR. It's kind of like a very souped up at mega 328. If you're familiar with that chip or a really, really souped up AT Tiny has 128K of flash and I think it has 16K of RAM. So it's kind of chunky, but it's an AVR. So a lot of the things that you expect, simple register access, not needing to synchronize between domains, all that stuff. It's a simplified microcontroller. I'm just powerful, it's got a lot of timers, got ADCs, it's got all sorts of cool stuff built into it. And of course it's got a ton of flash and a ton of RAM, which will come in handy if you're trying to connect to IoT devices. Next up, there is a cellular module. Like I mentioned, it's from Sequence. It's an LTE module. Apparently there is forthcoming NBIOT support as well. So they make the module, microchip makes the chip, they combined forces, Voltron slash AVR IoT dev board. So this cellular module has an AT command set. It's what you use to actually connect to the internet to send and receive data using that true phone SIM. All right, so here's what was really interesting is that this is a part of the curiosity series of boards. And does this look familiar? Does this look like some sort of dev platform that maybe like we helped popularize? It is, it's the Feather. It is Feather compatible, which is really cool because I think this is microchip's first Feather or at least this is the first one I've ever heard of. It's Feather compatible. It's got all the pins in the right location. It's a little long, but that's expected because it's got the cellular module. And it's only that, but it's got a, you know, a STEMIQT slash quick port on the side. So it's got, here's all the pinouts. And, you know, you can see there's built-in sensors and there's, you know, battery charging and monitoring and all that good stuff. There's a programming and debug system using a SAM-D21E which acts as like, like it's like programmer slash you are to USB converter slash mass storage driver kind of does everything but the brains of the chip is in there. Oh, it's also got a crypto chip, the ATECC, sorry, AT68ECC. I think I can't remember the exact port number but it's the crypto chip that you use for, if you want to connect to AWS and you want to have your certificate stored securely for bi-directional TLS authentication. Okay. So the cool thing about Feather is, and we've featured Feather boards and I like to point out when people are part of an open standard as this open standard that we are totally, totally cool with other people using is designed to make breadboard friendly dev boards that have USB that have battery charging. So they're really good for IoT. And then you can add microcontroller, like accessories like OLEDs or motor controllers or what have you on top. And you can see here, like we make, you know, 50 boards and like about a hundred feather wings and then the community has dozens and dozens of more. So what's nice about using Feather is that it will be very easy for people to, like if you want to add motor control, we've got a motor control Feather when you can just, as seen here, you can just pop on top. And the second thing that they did, which I really liked is they added a quick connector. SparkFun came up with a quick standard. They made a lot of quick boards, you know, when we started to get interested in plug and play, we looked at and we're like, let's join in, StemAQT is just a five-volt compatible version of that, but you can use either. And we've got, you know, hundreds of boards with StemAQT where we're StemAQTifying all of our boards, all SparkFun sensors are quick and other companies are also making quick compatible stuff like Pimeroni and Zio and shoot, I can't remember, prototyping, direct or something. Other companies are making them as well. So we're not the only ones. Again, it's an open standard. So, you know, the Feather standard is what lets you add like big things like inks or displays or motor controllers. And StemAQT quick is what lets you add little sensors and breakouts and other small devices over I squared C. Both are included. Okay, so what's really neat is when you, you know, the hardware setup is really fast. You know, you basically disconnect. You pop the SIM card out, you plug it in, you attach the antenna and then you connect power. And what's neat is that, you know, there's this new paradigm, which I'm really liking where when you plug in a dev board, it shows up as a disk drive and then it has files to let you know what to do. So, you know, the documentation is when you plug it in, it says click me and I'm like, okay. And what's also neat is like, you know, there's pub key text, which actually, I'll be honest, I actually look at, but I'm assuming that's the public key for the crypto chip on there. But I like this exposure of the information, like non-secret information or documentation as a disk drive because it makes it very easy for people to get started. And, you know, if you lose like, you know, you don't want to lose some leaflet and you're like, I don't know what to do with this thing. So when you go to, when you click click me, you go through a step-by-step process where first off, you have to activate the SIM card. That's the first thing they do because it takes a couple of minutes and that's done by TruFone. And what's neat is first off, it's free for 90 days and then you get 150 megabytes and it works in like almost every country in the world. From here, it was AT&T. So it's whatever AT&T network that uses LTE. And I like that it was 90 days because I've seen some like free SIM card plans that are 30 days and 30 days is not quite enough to maybe get your whole project off the ground, but 90 days I thought was very generous. So this comes free with the SIM card that is in the kit. Next, you know, another thing that I thought was neat is the, that SAMD21, that's that interface board I mentioned is also like this drag and drop hex lead programmer. So for example, they're like, hey, chances are the firmware's been updated since you bought this board. Click here to download the hex file. You download the hex file and then you just drag it onto that disk drive that appears when you plug in the board and it programs it. Again, like I'm really liking this paradigm where you don't need to like open up at Mail Studio. I love at Mail Studio, I've lived in it, but like it's great when you don't have to use it because it's quite a beast. Okay, so next up what I thought was really neat and I even sent this to our Learn Dev team because I thought it was so cool is the documentation site that they've got is, I believe it's like Bitbucket, you know, backend edited, but it's a very nice, easy to navigate, well-documented, lots of photos, you know, lots of, you know, like emojis and clips of code and references for how to use this board, how to install the IDE, how to install all the Dev packages, example code, there's even a project where you like 3D prints like this cube and you can use that with the Kerasi Nano to show how to make it a full product prototype with it. And most important, it's got dark mode, which is, I think, you know, nobody like it. I think it's like, I can tell that the people who worked on this documentation site spent a lot of time. Yeah, this is very advanced. I mean, this is, I think, the expectation for people doing modern development. Yeah. So good work, Michael. Yeah, this is very cool. There's actually some quotes, but I don't even know that I got to add. Oh, no, I didn't. There's some other, I mean, it's interesting, it's like, I like the board, but then I suddenly became like very enamored by this documentation site. That's okay. Anyways, on the documentation site, there's hardware and schematics and there's a data sheet for this product as well. The other thing that I thought was just really nifty is there's this built-in live editor where you can write Arduino code and then you can compile it and when you click compile, it downloads the hex for you. So it's like spinning up some server in the background with Arduino CLI, compiling the code in the editor and it gives you the hex, which then you can again, drag and drop onto the disk drive. So this is like really interesting and like, it's a little bit like micro bit, but like I'm kind of impressed at how quick and easy this live editor was. Again, it's not unique to this product, but it's a very interesting thing that they have set up for this product so you can write code without even installing the Arduino IDE. That said, if you would like to do more advanced development, you can. They basically recommend using Arduino. The DX Core by Spence Conde, who writes amazing Arduino cores that we've used, has a core for the DB series of AVRs. I downloaded it, installed it in Arduino and it took a few moments. You'll also need microchips, AVR, IoT, cellular Arduino library, which you install it manually and it comes with the library for interfacing with the LTE modem, as well as the onboard sensors. It has a bunch of examples. The first example you would start with is this HTTP client, which I basically just change it so it connects to world, sorry, it's world time API and then it's changed to New York. And because it's Arduino and because it's because it's Arduino and because it has a STEMIQT connector on the side, I was like, well, let's take the example and like really quickly update it so that when you ask for the time and date from this world API, it'll display it on an OLED. So let's take a break and we can actually go and look at the demo. So this is the demo board. I didn't solder the headers in but it's got the feather headers and I just have it kicked to my computer. And then, again, this is something I usually can't do with debt boards because usually I have to use a special IDE and I have to install this and it's not Arduino compatible because this was really like, it's purely Arduino compatible using a core that's very well written as I squared C support. So I was just like, well, let's just block, just plug and play without any soldering at all. And so, adding other sensors, hold on, this OLED is confusing it. Adding other sensors or capabilities like trivial, like if I was able to do this and like, I'm gonna put this down. Connectors on wire one, not wire zero. But once I got that going, pretty much just worked. So it was, I was kind of surprised. Usually things don't just work, but it just goes to show you the power of having Arduino compatibility, feather compatibility and StemAQT. It's like, so this is the code that I wrote. So yeah, I just updated it and you can see at the top, I just added the SSD 1306 library and then at the bottom, I just had to print it out. And then when you connect to the COM port, there's this like logging output. It'll tell you that it's connected to cellular, only takes like five, 10 seconds to connect to the cellular network. And then it can get data over HTTP, for example. There's also an NQTT example and an AWS example, but I thought it would just be easier to just do HTTP. I will say, I couldn't quite figure out exactly how to do HTTPS. I'm sure it's supported because I saw there's an HTTP configuration, but there's no example for HTTPS. So I would really like it. Microchip, you should please add an example for TLS SSL. I think it will be very helpful for people because most servers these days do not accept connections on port 80 anymore. And available on Digikey 96 in stock as the time of this printing, as they say, by printing I mean sending photons at your eyeballs. But it's a good deal. So like, you know, the price, considering that you're getting a SIM card that's good for 90 days, you're getting an LTE modem, you're getting the antenna, you're getting the microcontroller, you're getting, you know, the example code and the cores all set up. This is kind of one of the lowest cost, you know, LTE slash NBIOT dev boards I've seen and it's a dev kit and it's feather compatible. So, you know, I think if you were looking for a feather with LTE support, this is a really good example of one. And plus you get to try out, and then we'll try out sequence LTE modules so that could be kind of fun too. All right, that's our NPI. Hi, NPI. All right, thank you everybody. That's this week's Desk of Ladiated. Like I said, next week it's Fourth of July weekend. So we'll be posting videos, but we will not have a live show. And all throughout the week, stay tuned to our social media properties more. You'll get an update of when we're doing stuff. We have lots of things we're posting ahead. And then tomorrow some big news in New York City about manufacturing and also Adafruit. So we'll see everybody during the week. Thanks for joining us. Bye everybody. See you soon.