I have a simple implementation for the TPL7407L intended for a solenoid driver, shown below. The Teensy LC is a basic microcontroller module and there is 128MBit of flash but otherwise the design was intended to be basically a direct copy of the datasheet plus the input power filtering and fuse.
I mostly intended this for use with solenoids in the 50mA range, but since the chip is rated for it I wanted to prove it would work with a brushed motor that draws about 200mA. Well within the current, only one channel on at a time.
So I plugged it all in using a 14V battery for V+ (i.e. +24V on the schematic is actually +14V) and connected to the motor. It worked a little but had *that* smell. Next time trying to turn it on the chip seems to be fried and the motor is just full on all the time. Resistance on that channel's OUT1 to GND is ~1 ohm and all the other channels similarly appear to have blown up.
Could someone from TI or an expert in the community explain? I see nothing in the datasheet that I wasn't careful to do, but my colleague said it was necessary to add a zener diode on V+ of ~30V or so to ensure that the voltage to the board doesn't spike and blow up the common. This is all still a bit out of my expertise area so I'd love to hear any second opinions. I thought the driver had everything needed to handle inductive loads already, do I need to also add an undocumented zener in the same place as C1 to keep the TPL7407 from blowing up? I'm quite confused.
Or maybe these particular brushed motors have a higher inrush current somehow than we measured? I didn't do that part, so they may. Should I be doing something like throwing a choke on the OUT1/OUT2 lines to prevent current spikes?