H Bridge Protection

I am brand new to electronics and Arduino, coming over from programming. I have already succeeded in frying my Arduino on the second day of owning it, so I am now proceeding with great caution. I have a SN754410 h bridge chip, however I have heard that using it without supporting electronics is not a good idea, and kickback diodes are needed. What I have not been able to find out, however, is how to wire the diodes (schematic) and what specs the diodes need to have. The motors I am using are 15V <1A DC brushed motors. Any tips are appreciated. I really don’t want to have to go buy another ATMega 328 chip. (Though my first Arduino was SMD so I had to go buy a whole new one).

Glancing at the datasheet there are diodes across the output transistors (internal) already, looks like. See Page 2, "Typical of All Outputs" ? http://www.ti.com/lit/ds/symlink/sn754410.pdf

http://www.robotroom.com/HBridge.html http://letsmakerobots.com/node/31642 http://www.kronosrobotics.com/an101/AAN101.shtml http://web.ics.purdue.edu/~fwinkler/616/sn754410_Arduino.pdf

Yes, the integral diodes seem to be fine for the job - they have to be able to take the normal motor current during inductive transients to provent unlimited voltage spikes.

MarkT: Yes, the integral diodes seem to be fine for the job - they have to be able to take the normal motor current during inductive transients to provent unlimited voltage spikes.

"Unlimited"? Now there's a spec! :D

A few questions:

1) Are you sure you killed your Arduino via inductive kickback? What makes you think this?

2) What are the symptoms of your "dead" Arduino? Inductive kickback won't generally fry the entire device, generally just the pins that are connected?

3) Have you troubleshooted your "dead" Arduino to know what is working and what isn't (you do have a multimeter, right)?

Now - about the internal diodes: I don't think those are meant for inductive kickback reasons (otherwise, why would the reference two-phase motor driver schematic in the datasheet have external diodes indicated?)...

Now - about the internal diodes: I don't think those are meant for inductive kickback reasons (otherwise, why would the reference two-phase motor driver schematic in the datasheet have external diodes indicated?)...

I catch your drift, cr0sh-man. I go with external diodes when using MOSFETs, Schottkys, because, admittedly, I'm hinkey (superstitious?) about that internal / effective diode situation with them, too. I've never plumbed the depths there, to see if it's really, really OK without 'em, because.. I really, really hate burning stuff up. TI didn't explain anything there, but are the externals supposed to be Schottkys, like were mentioned in one of my links? I guess that I don't have a good answer beyond this much.

Thank you for all of the responses! I am not entirely sure what I did to fry the old arduino. I was using it with a motor driver from an old robotics kit, and the motors were barely spinning. When I touched the arduino, the ATMega was hot, and it has since then given the "programmer not responding" error. I do have a multimeter, but I'm not sure what I'd check for given that I cannot establish communication.

From what I hear, it sounds like there is some debate about whether to use external Schottky diodes, but it would be best practice to play it safe. If that is the case, how would I wire them? I can't quite figure out the example application schematic in the datasheet. Also, what diode rating should I use?

It sounds like you were trying to power the motor straight through the Arduino, and/or the Arduino’s regulator, rather than through a properly motor-sized power supply.
The Arduino output pins cannot, by themselves, drive much more than a single indicator LED for current (25 mA typical, 40 mA absolutel max.) A motor or relay coil would be right out.

The Arduino 5V cannot, by itself, drive more than 500 mA or so for long times. If you’re trying to turn the motor using the Arduino board 5V output, that might not work right.

My guess is that your busted Arduino board is either from overloading the AVR chip by pulling too much juice through an output pin, or through burning out the on-board 5V regulator. If it’s the former, you can buy a replacement AVR microprocessor and plug it in to recover the board (the replacement processor is about $5 from adafruit.) If it’s the latter, it should still work on USB power, so that might not be what the problem is.