Help my TMC5160's keep dying - Page 1
Forum section: electronics / projects

author: capella_ben
author_rank: Newbie
timestamp: November 03, 2021, 10:35:17 am
content: Hi all,I hope I can call on your expertise. I have been working on a project that uses a series of Trinamic 5160 stepper motor drivers. I'm using theseTMC5160 break out boards. They work fine for a while then mysteriously die. The failure mode is that the IO side uses more current and the IC heats up. So a short in the IC.The first time I thought it may have been a static discharge so we have been very careful with the second batch. However this batch (of 6) has also all just failed at once!Can anyone speculate as to why they are failing AND how can I prevent it from happening again?Many thanks

author: ajb
author_rank: Super Contributor
timestamp: November 03, 2021, 03:37:17 pm
content: It's really hard to guess without more info. Can you share a schematic of how the breakout boards are connected? What sort of power supply? Are the breakout boards mounted on a PCB or is it a lot of wires stringing everything together?When you say that this last batch of six all failed at once, do you mean they actually all failed at EXACTLY the same time?When you say "the IO side uses more current" you mean the control IO as opposed to the motor side? Where are you seeing that, on VCC_IO or on the IO pins?If you are seeing excessive draw on the IO pins or VCC_IO, then my guess would be a power supply/signal sequencing issue. Since the BOB uses the IC's built-in regulator to provide the logic supply (5V_OUT connected to VCC) that means the sequencing of VS and VCC isn't an issue. But the datasheet has this to say about VCC (Section 2.2 Pin Descriptions):QuoteThat's a little strangely worded, but they did use an exclamation point! If you're bringing up VCC_IO before the IC's internal regulator comes up then this restriction is violated, and it could be that this causes stress to the IC that eventually causes failure (hence the exclamation point!). It's also possible--but probably less likely--that applying any signals to the IO pins before VCC_IO or VCC could cause similar stress. Normally this would cause current to flow from the IO pin to the IC's supply rails via internal ESD clamping diodes, and if those IO lines are driven by another IC like a microcontroller it's unlikely that enough current would flow to damage the diodes or anything else. But if one of those IO lines is tied directly to a power supply rail then maybe enough current flows to cause a problem, or maybe even a small amount of current causes some internal circuitry to go haywire and cook itself.Without knowing how the IC is designed internally it's hard to say how likely those scenarios are, but I would certainly check that power supply sequencing to make sure VCC_IO and the IO signals don't come up until after VCC. If you can't do that, then an option might be to put a level shifter IC in between the TMC5160 and whatever's controlling them. Even if you don't need actual level shifting, those parts typically tolerate only one side being powered by design, so they can serve as a barrier to potential problems like this. You'd want to tie the BOB's VCC_IO to it's internal 5V supply and use that to power the BOB side of the level shifter, then power the other side from whatever you were powering VCC_IO from. Unfortunately the BOB doesn't expose the 5VOUT line on a header pin, so you'd have to run a bodge wire.All that said, it's possible the problem is somewhere else. It could be that some sort of transient on the motor power supply is cooking the internals of the TMC5160, so that's another area to check. Seeing the way these things are connected would be really helpful.

author: capella_ben
author_rank: Newbie
timestamp: November 03, 2021, 09:38:20 pm
content: Hi ajb.Attached are pictures of the motherboard I am using. It does work as I have tested each driver individually (in each position) and we have been using the final product.Essentially we have a voltage regulator, connections to the Pico and some RC filters for limit switches.I missed the section in the datasheet you quoted and I think you probably have hit on the problem. I think I'll look to find a solution to sequence the power.Many thanks for your help! Very much appreciated.

author: capella_ben
author_rank: Newbie
timestamp: November 07, 2021, 07:37:48 am
content: The idea of sequencing being an issue does sound valid as I remember that when the Pico was turned on and VM and VCC_IO were off there was a glow from the LED. This LED is connected to VCC_IO.So I did think I could mod the Pico so that it didn't use USB Power and instead was powered via VM (24V -> 3.3V via regulator). But I don't think that the Pico can work that way.Looking into level shifting, I found that I could get a SN74LVC254A Octal Bus Transceiver. I haven't tested it yet, but I think if I power it via VCC_IO it should be OK. Do you think this will work?Also I'm using the A-B direction which required the direction pin to be high. I'm thinking that if I pull this low I can use a GPIO pin to enable the interface.I have attached the original (as-is) schematic as well as the updated one with the bus transceiver.All feedback is most welcome. :-)

author: enoch@eevblog
author_rank: Newbie
timestamp: October 04, 2022, 10:31:35 am
content: I've been using this for a while now, to me it is GROSSLY OVER SPECIFIED to a very stupid extend, maybe the Sales department's Graphic Designer get to decide that it is 60V. It is popping randomly burning a hole through the IC's epoxy around all the bootstrap capacitor's area. It is being labeled as a 60V motor supply driver, but you better not use it anywhere near 60V. Not even 48V. with 48V, you need to put in extra gate drive, etc... or else you will be getting random fireworks once a while.Overall a very bad experience. looks like a prank to me...Not to mention they force me to use some funky function that slows down motor while the load is heavy (DC Step), and took away the ABZ encoder function when I'm using step/direction mode. No option to re-enable the encoder function.

author: nvmR
author_rank: Regular Contributor
timestamp: October 05, 2022, 09:07:07 am
content: Hey OP,I come from the 3d printing world, where we use tmc2208, tmc2209. When using them, they always have a pretty big heatsink on the IC (x4 the size of the IC), and also a 80mm fan over them.In addition to this, the current is adjusted using an on board potentiometer. I'm not sure what the parallel to it is on your board.