Go Down

Topic: Too much amperage for Arduino power supply? (Read 1 time) previous topic - next topic



I have a project that will require a large 12-volt battery to run a pump. Can I power the Arduino itself from this battery as well?

I'm thinking that although the battery can supply more Amps than the Arduino needs, it will only provide what the Arduino draws. In this case, it looks like I could power the Arduino from the large battery.

Or... the large battery could fry the Arduino.

Is there such a thing as too much available Amperage?

Thank You


The Arduino will only take what it needs. It's like your house ... even though it is connected to a power station via the wires outside, it only draws the amount needed to power your appliances.
Please post technical questions on the forum, not by personal message. Thanks!

More info: http://www.gammon.com.au/electronics


Thank you.

Do you think that the Arduino could be damaged when the pump runs since they share a battery? Could there be some type of power spike?

I attached a rough drawing of the project.


I would tentatively say: no, it should be OK.

Maybe some extra filtering (eg. capacitors) on the point where the power enters the Arduino might smooth out any spikes. After all, the voltage regulator is designed to do that anyway.
Please post technical questions on the forum, not by personal message. Thanks!

More info: http://www.gammon.com.au/electronics


I've had a few cases where a large inductive load (such as a motor) causes the supply to dip enough to reset the AVR.
It will depend on the pump startup current and the internal resistance of the battery.

In extreme cases where adding bulk capacitance close to the Arduino isn't enough, a series diode before the capacitance is the fix. 
The diode will block the reverse drain of the bulk capacitance.

The other option is to control the pump with a FET instead of a relay, and ramp up the FET with PWM for a soft start.


Have you designed the voltage step-down aspect of your circuit yet?  The typical approach is to throw a linear regulator between 12v battery + and the 5v Arduino input.  Good practice would be to put a large reservoir cap on the 12v side, then 0.1 to 0.3uF caps on both the 12v and 5v side as close to the regulator as possible.  Also a 0.1uF next to the ATmega chip.

It might also help to have a diode on the 12v side to make sure voltage is always flowing the right direction.  If you do it like this, it'll prevent your reservoir cap from discharging through the pump when you turn it on:

Code: [Select]
|    +   |*----* >| *----*-----*----*--> LM7805 IN
|        |     ^DIODE^   |     |
|  BATT  |       100uF > =     = < 0.1uF
|        |               |     |
|    -   |*--------------*-----*-------> LM7805 GND

Pardon the crappy ASCII schematic.

EDIT:  Woops.. just a few minutes late.  ;-)  "What he said."


Getting over my head here, but the diagrams above are to ensure a consistent flow of power to the Arduino while the pump runs?

Do you feel this type of setup is necessary to protect the Arduino from harm?


I think it goes a long way toward ensuring the stability.  If you omit the diode, for example -- well in this case, you could harm the Arduino by plugging it in backwards, but let's assume no one makes mistakes...  Anyway, if you leave out that diode, then when you turn on the pump, if the 100uF capacitor has lower internal resistance than the battery, the 12v will be sourced from the cap, draining it, and potentially dipping the input voltage to the regulator sufficiently enough to produce a corresponding output-side dip seen by the Arduino.

If that dip is extreme, you may trigger the brown-out detection and put your chip to sleep for a bit.  Or you could cause faulty logic somewhere and end up on a code path that isn't handled properly, causing it to hang.

Is this really a problem?  Maybe or maybe not, depending on the current demands of the pump and the output capabilities of the battery.  But it's a really easy power conditioning circuit, and the least you could do to ensure the IC is happy.



You may wish to see Grumpy_Mike's decoupling tutorial for in-depth info on the topic


Go Up