 DigiKey and Adafruit present. This week's IonMPI is from Analog Devices. I don't know what's possible, Lady Eda. What is the IonMPI for this week brought to you by Adafruit DigiKey. Okay, yes. This week's IonMPI is the AD5413. This is a SPI DAC chip, and when I check this out, I normally don't use these kinds of chips, but I can immediately tell what a great design this chip was. And so the people who are watching who do industrial automation or anything, you know, with architecture or building management or PLCs or, you know, mechatronics, all that stuff, if you need a DAC, this chip is a really, really nice DAC. You know, I've used SPI DACs for basic audio projects, and so when I saw the capabilities of this digital to analog converter, I was, like, really impressed with the care that I could tell ADI put into this. So it is, you know, a DAC chip. You set it onto your PCB. It's, you know, got one output. It's a single output. The output can be either current or voltage. You clock in data to set that voltage or current. Simple, right? But there's a lot more going on. So the first thing that I noticed about it that was really neat, you can read all the specs about it, is it's got a very wide voltage range for the output. So the power of the chip, I think, is like, you know, four or five volts or so. But the output voltage, right? You know, usually that swings between zero and VDD, whether it's 3.3 or five volts. But in this case, it goes to between plus or minus 10 or 12 volts. So, you know, you basically can give it a split supply input and it will give you a full sweep range output. So you can actually see even see, you know, the op amp there and the current buffer as well. It's a 14-bit DAC, so it's a pretty good quality DAC. You get plenty of bits. It's not like an 8-bit or even a 12-bit, which is what I've used. But a 14-bit, which is really nice. It's got an arch-war ladder inside, which you don't see here. And then it will automatically do all the op amp, you know, gain management and offset tweaking that you can do. You can even set offsets inside memory if you need to to calibrate the output. And, you know, beyond just the fact that you can set the output voltage between negative 10 and plus 10 or negative 12 and plus 12, if it's, you know, you go over, there's a little bit of over voltage setting. It's got a lot of, like, extra details and built-ins that kind of fill it out and basically make this, in my opinion, if you've got something that you need to have an analog output to, you don't really need any other chips. Like, everything is super integrated. So this is perfect for people who are like, hey, I'm a hardware or a firmware developer and I don't want to, like, learn analog. I just want to get this voltage output to bias something or control something or, you know, to interface with some analog input circuitry or current input circuitry. And I just don't want to deal with all the messy stuff in between. And with this, you don't have to. It's like you're pretty much, like, maybe you need a resistor capacitor to. It's pretty much ready to go as is. So the input is a 32-bit SPI data. You know, unlike most DACs where you have just, like, you basically just write the data to the R2R ladder and that's it. This has kind of a structured input. So the first bit is just, like, a start bit, basically, to let it know, like, hey, you know, start listening. The two bits, D30 and D20, down in the address, this is what I thought was interesting. So kind of like I2C, you can have four of these devices on one SPI bus with the same chip select line. And each one of them can be addressed separately. So you can set the SPI address. I haven't really seen this being used with SPI. I've seen this more with I2C. But it's the same idea, right? You can have four of them on the same bus. You know, I'm not sure exactly, you know, why you'd want that versus having multiple CS lines. Of course, you can always have multiple CS lines as well. Then there's the register address. That's five bits. And there's a register, so you can actually send it in multiple commands and read data from the device as well. And then you've got the 16 bits of data. The bottom two bits aren't used because it's a 14-bit DAC. And then there's a CRC. Which is really nice. You know, you don't have to worry about, like, my situation or, you know, maybe my signal lines, you know, are flaky or connected, disconnected. You know, the data comes in corrupted and there's some chance of accidentally setting the DAC to the wrong value, which could, like, mess up your robot or mess up your PLC. In this case, you have a CRC. So you have this extra level of QA redundancy on every command that you send. And I think that that was a nice little add-on, right? Because I don't see that often on SPI devices and definitely not on writing. I usually see that on reading. Like, when you read data from a sensor, I rarely see it on writing commands. So a nice little extra there. And these are all the registers. They have stuff like a chip ID, which I thought was nice, and, you know, device ID. You can read all of these. There's not a lot of them, mostly configurations. And then you can see the DAC output register itself. But basically, you can treat these sort of, like, I squared C SM bus registers. And you read to the datasheet. And they have, you know, some registers are, you know, they're shadowed and you can write to them and read to them in one command. The datasheet has all of this in great detail. So I'll leave it to them for how to interface. So this is, what's interesting is, you know, it's pretty well-specced. It can drive up to a one kilo ohm load in parallel with two microfarads. So, like, you can really abuse this. Another thing I thought was really neat is you can compensate it so you don't have to worry about having overshoots. You can also do slew limiting on the output. So, again, you know, if you have very long transmission lines, you don't have to worry about, like, can I drive this capacitive load without worrying about having overshoots or ringing. It is something that's built into this chip that can manage it for you. So, again, if you're not a hardware analog person, a lot of the stuff that normally you'd have to deal with in the field have, like, trimmer pots and, like, maybe adjust values depending on, like, the cabling and enclosure, it's all done in firmware for you. So it'll save you a lot of time and money and field we work. There's also a ton of fault outputs on the right is the fault table. You can see all the different things that it will warn you went wrong. You know, unlike very simple DAX that cost a dollar where, you know, it doesn't tell you anything. It's like, you know, the data's output. Good luck. You know, you'll have to do any feedback management or error management. It does all of it for you and can give you warnings. The fault management covers, like, pretty much everything, including, I thought was nifty, is there's a built-in temperature monitor as well. It's not like a temperature sensor, but you can tell it, like, hey, you know, if the temperature of the dye goes above this, set the fault. So, you know, it can self-monitor its own temperature. Again, like, little details like this that I'm like, wow, yeah, if I'm doing something in robotics or automation or, you know, something industrial that's outdoors or in a car or in a, you know, train, safety's very important, reliability's very important. I need to know when something has gone wrong. Think of all the things that you would have to keep track of that can go wrong, that you would require extra external circuitry, temperature sensors, or, you know, feedback op-amps or, like, compensation loops or, you know, whatever. You don't have to do it. Again, it's all built-in. Those are just kind of neat. They have an internal oscillator diagnostics. The internal, you know, processor inside has a 1 MHz clock rate and it will automatically, like, update a counter inside. Read that counter and that will let you know if, you know, due to temperature or maybe physical stress, the oscillator's out of sync. So I thought that was, like, kind of neat. Also, you can send, like, this cool 07 dead code. Interesting. Another nice thing I noticed is if you want to do, like, a software reset, you don't just, like, write a random value to register because, of course, you could accidentally set it. You have to be very specific. There's, like, multiple commands you have to send in order to do a software reset. So if you're writing the firmware, it's really easy, but you don't have to worry about, you know, your code jumping to the wrong location, data actually getting corrupted, a loose connector, accidentally sending a software reset and the whole system, you know, flies back to the original location, possibly damaging itself if it's connected to, like, some gigantic servo motor. And finally, there's an eval board. I picked one up, but it pretty much looks like this. There's, like, this connector on the side looks like there's a development kit that it can plug into, but it breaks out all the pads and connectors and then the power supplies go onto the top. So I think, yeah, you know, if... I think this chip is great if you're an electrical engineer, you do not want to mess with analog. You don't want to have the risk of getting... have something going wrong with the analog section and you want to sort of depend on the people who know what they're doing, analog devices. It's pretty clear that they've seen every possible failure and added a fault mode or, like, a feedback register or some self-monitoring hardware. Like, you know, everything that I saw was like, oh, yeah, that could happen, that could happen, but if you're an engineer, you may not think of all these things that could happen to your hardware. If you go to the datasheet and just do everything they can recommend, you're going to be way ahead when it comes to reliability testing of your hardware. Like, at some point an FAQ can eventually become silicon? Yes. No, pretty much. Every time they had a customer say, like, your thing broke and they're like, well, what happened? Oh, it turns out the oscillator got, you know, so the chip got hit, you know, it got vibrated and the oscillator got out of sync and, you know, now it's not working quite right. That would have been caught by, you know, the oscillator monitor. I mean, they've never seen an oscillator monitor before, but it must be there for a reason. So, like, if you use this chip, add that test, right? And we watch dog cycle check, the dye temperature check, you know, the oscillator monitor check, the feedback monitor, all these things that they have, put that in. I also like that every time you read data from a register, the fault bit is the top bit. Like, they force you to look at it. They're like, look at these errors. Look at this thing that could have gone wrong, right? You can't just give it. It must be fun to make something that lights it all up. Like, everything just fell. No, it tells you when something's gone wrong. So, you know, high reliability electronics, I love seeing it. You know, I deal with a lot of my electronics are, to be honest, they're not high reliability. They're not designed for it. They're kind of meant for consumer electronics. So, taking a dive, taking a look at this kind of electronics, and you're not paying military prices. It's still consumer prices, but you get good industry reliability in this chip. All right, it's available on Digi-Key. Go to Digi-Key's site. The short URL is digikey.com, for size P, B, Q, Z, C, H, and R. Or you can just search for AD 541-3BCPZ. That's right. For AD 541-3. And then, as this week's IonMPI. IonMPI.