Go Down

Topic: Powering the Arduino through the 5V port? (Read 1 time) previous topic - next topic


Hi, I recently got a Dual H-Bridge L298 board to play with, trying to make some sort of robotic car. So in the L298, there's a port for external power to power the motor. Right now, I have a 9V battery pack hook up to it. As I was playing around, I realized that I actually don't need a standard power source (through the USB or the circular electric plug) for the Arduino for it to work. On the pins where you connect the Arduino to the L298, the 5V pin actually output power instead of taking in when I hook on the external battery pack onto the board. I measured it with a NI myDAQ, and it displayed 5V as indicated.

So my question is does backward powering the Arduino like this through Arduino's 5V output port safe to do? Will it damage it in anyway?



No, not as long as the External PSU doesn't power servo's or motors, I do it on my test setup as a matter of course. The issue comes in when you attempt to use devices that aren't well behaved when they turn on or off. Either situation can and frequently does cause spikes on the power supply because there is no protection for them. Always use all the recommended suppression RIGHT ON THE DEVICE because it prevents the fault (Spike) from getting away from the coil/load. ALWAYS USE a SEPARATE PSU for high current loads and BE Sure to CONNECT the GROUNDS. Make sure that Any high current doesn't flow through the Arduino's ground first. That is all high current supplies must go to and return to the high current PSU and not use the Arduino ground. The Grounds must be tied together for control signal return to the Arduino.
It is a good idea to think of the Arduino Power supply as being Only for the Arduino... Backlights are notorious for drawing too much current from the Ard. 5V source. The point is that Anything that might compromise the Arduino PSU will compromise the Arduino's operation as well.
Hard enough to get the sketch to work... Add an uncertain power supply and you can easily spend hours chasing your own tail.
ONE More Point. By-PASS, By-PASS, By-PASS, they are really sort of Magic Bullets and cheap and easy to use too. Most "Cross Talk" is really power supply deficiencies much more than real cross talk... unless you have an improperly wired input, if in doubt a 10K resistor draws about .5mA (500uA)... So if the port in question is normally low... pull it down, if it is high... Pull it up, all except analog or very high impedance (resistance) inputs and those should be pre-conditioned to conform to normal LS TTL loading techniques or at least loaded with some kind of load... Never leave a port in an input condition without terminating it. (Hint... this is why analogRead() makes a good random seed value).

--> WA7EMS <--
"The solution of every problem is another problem." -Johann Wolfgang von Goethe
I do answer technical questions PM'd to me with whatever is in my clipboard

Go Up