Arduino misconceptions 6: a 9V battery is a good power source

This one has come up a lot recently on the Arduino subreddit and Electronics stackexchange – can I power my Arduino with a 9V battery?

The quick answer is yes, you can.

The long answer is yes, but only if your goal is to chose the most expensive and short lived batteries possible.

9V PP3 battery (Ashley Pomeroy, Wikipedia)

I think the boards and documentation should have an explicit warning about 9V PP3s for this reason!

9V is not a good input voltage to produce 5V through a linear regulator

The first problem is how to reduce that 9V to 5V that the Arduino board can use. Most Arduino boards have an external voltage input, and a range of 7-12V is recommended. So 9V seems perfect.

The problem is that most Arduino boards use a linear regulator to drop that 9V to 5V. If you are drawing a mere 50mA, 0.2W is being burnt in this linear regulator with 0.25W being used by the Arduno itself. This is very inefficient!

To solve this, either another battery should be used, or a switch-mode regulator used – these are much, much more efficient.

Even worse is if you try to draw large currents – say 250mA – from the 9V source. The regulator needs to now burn 1W of power. It will fry in no time!

9V batteries are very low capacity

An alkaline 9V PP3 has a capacity of between 500 and 600mAh. This really isn’t very high – a typical alkaline AA battery will be at least 2000mAh.

Compare the following:

  • 6 series AA cells – 9V @2000mAh
  • 9V PP4 – 9V @500mAh

Granted, the AAs are bigger but the combined Ah rating is 4 times bigger.

This gets even worse if you look at rechargeable 9V batteries. A typical 9V PP3 NiMH battery has a capacity of less than 200mAh. This is so low it is hardly worth bothering with.

No matter how efficient the regulation is, these batteries are not going to last very long.

Ideal solution

First thing first, you need to ditch that linear regulator. It is meant to regulate external voltages when power loss is not an issue.

Use one of the modern switching regulators like the LTC3525 – this can take an input voltage of between 1.0V and 5.5V and convert it to 3.3V or 5V as required. Bypass the linear regulator on the board.

Couple this new regulator with high capacity AA batteries. The LTC3525 is so versatile it can take one, two or three batteries and drain the last drop out of them.

AA batteries are common, cheap, and high capacity. There are excellent rechargeable batteries available as well. Please stop using the 9V PP3s!

29 thoughts on “Arduino misconceptions 6: a 9V battery is a good power source

  1. Permalink  ⋅ Reply

    Vitor

    July 4, 2013 at 10:30pm

    Nice article, however it’s a bit misleading telling that a 9V battery is low capacity. Yes, it has less mAh than the AA battery, but also a higher voltage. In fact, based on your numbers, the 9V battery stores more energy than the AA one.
    Still, this doesn’t invalidates your point: it’s really ineficient to use them to power a stock arduino.

    • Permalink  ⋅ Reply

      cybergibbons

      July 5, 2013 at 7:28am

      I agree, I could be more clear. Will edit! Thanks for the comment.

      • Permalink  ⋅ Reply

        cybergibbons

        July 5, 2013 at 7:29am

        I certainly will keep blogging!

        • Permalink  ⋅ Reply

          Vitor

          July 5, 2013 at 11:16am

          Keep going! It’s an awesome way to teach and learn at the same time 😀

          • cybergibbons

            July 6, 2013 at 6:52am

            Yes, I find blogging is a great way to solidify ideas, especially ones you yourself haven’t 100% grasped!

    • Permalink  ⋅ Reply

      Mike M.

      March 18, 2016 at 5:44am

      Running a standard Arduino board with a battery will drain the cell very, very quickly. If want to run your project for long periods, have a look on this project: https://www.kickstarter.com/projects/340271897/whisper-node

      It is designed to run on common AA batteries for longer periods and also counts with a wireless transceiver for long range communication! Cheers!

  2. Permalink  ⋅ Reply

    john errington

    July 6, 2013 at 9:52pm

    The simple fact is that a bank of 4 AA NiMH cells (1.3V each) will provide a very usable 5V (within the Arduino’s voltage requirement). 4 2200mAh cells store 5V * 2.2Ah = 11 watt hours of energy, and this is used efficiently.
    A 9V battery provides 9 * 600mAh = 5.4Wh of energy – of which 3Wh is used by the circuit and 2.4Wh wasted in the regulator.

    DONT use one of the modern switching regulators … you dont need it. NiMH cells have good regulation.

    • Permalink  ⋅ Reply

      cybergibbons

      July 6, 2013 at 9:58pm

      You can get a lot more out of AAs with a switching regulator though. With NiMH, you are down to 1.25V per cell before you hit the drop-out of the normal 5V regulator. Those cells have a lot more to give. It also gives you the versatility of using 1, 2 or 3 cells.

      • Permalink  ⋅ Reply

        Zeph

        October 17, 2014 at 6:49pm

        I think the point was to use 4xAA NiMH without a regulator (ie: as Vcc), because the batteries themselves will have stable enough voltages in the right range. In that case you can drain the AA’s down to whatever the brownout fuses are set at (eg: do around 0.7v per cell for 2.7v brownout). Of course 2.7v is beyond sped at 16 MHz, but that’s a surprisingly conservative spec. In any case you can drain essentially all the usable power from 4x NiMH with an ATMega driven directly.

  3. Permalink  ⋅ Reply

    Apu

    August 23, 2013 at 12:00pm

    What kind of battery pack I need If I need to use all the below components:
    1> Rasberry Pi with camera
    2> Arduino 2560 Borad+ motor control grid
    3> 7 to 9 v dc motor 2
    4> 2 servo motor

    I want to run this whole system atleast 2 hour Un-Interrupted

    Regards
    Apu.

    • Permalink  ⋅ Reply

      cybergibbons

      August 23, 2013 at 12:06pm

      The Raspberry Pi requires a lot more power that an Arduino even when doing nothing, but it’s also quite variable when working.

      The motors and servos will use more or less power if they are on or off.

      You’d need to measure current consumption and work out how much power would be needed for 2 hours and then work back from that.

  4. Permalink  ⋅ Reply

    Fernando A.

    August 30, 2013 at 8:52am

    What’s your recomendation for an arduino pro mini 3.3V ? I’m considering 3x AA or 1x 9V
    3xAA is enought? 4.5V don’t don’t seem too much
    I dont want to use an external regulator.
    What’s about LiPos ?

  5. Permalink  ⋅ Reply

    Tim

    November 14, 2013 at 3:44pm

    Problem is you link to a very low power regulator that is useless for any power draw. the 7805 will let me do a full amp for the Arduino and strip of addressable RGB led’s therefore a 7805 is the perfect thing for such a setup with a tiny heat sink on it.

    Dont discount old tech, it has it’s uses in a lot of projects. Plus it is honestly dirt cheap and doesnt require hard to find coils to function like the LTC3525. in fact I use them in parallel to deliver a full hard 3 Amps for a nice large string of RGB led’s controlled by the arduino. 3, 9V batteries in parallel run almost the entire night while blinding people with my wearable project.

  6. Permalink  ⋅ Reply

    cybergibbons

    November 14, 2013 at 4:20pm

    The regulator linked to will do 100mA which enough for a lot of Arduino projects though – obviously if you are drawing more, you need to think about another regulator. The coils are easy to get from many places as well.

  7. Permalink  ⋅ Reply

    Koollife

    July 11, 2014 at 9:11am

    Nice Articles , Please Guide me,
    Firstly: i have TFT 7ich Lcd monitor that use 9v 3A power , I tried it with 9v battery, the LCD monitor blinks but the battery can’t power the lcd. How many 9v battery can i loop to able to power this LCD monitor?

    Secondly: i have a led light that use 6x AA 1.5 battery. i used 1x 9v battery but the led light was low. how many 9v can be loop to get a last long light on the LED light?

    Thanks

  8. […] when pushing either button and powering the LED indicator. Following the calculations presented in this post from CyberGibbons.com, this means that the Arduino Pro Mini is using a maximum of 0.0198 Watts = (3.3v x 6mA) after power […]

  9. Permalink  ⋅ Reply

    Mick

    September 20, 2014 at 12:19pm

    ‘6 series AA cells will provide the same voltage, but a capacity at least 4 times the size!’

    I had to re-read this to get your own meaning from this, but it isn’t very clear. It can be read to mean 6 series cells provide the same voltage as one cell but 4 times the capacity, when I know you really mean:-

    ‘6 series AA cells will provide the same voltage [as a PP3 9V], but a Ah capacity [of four or more times the PP3]!’

  10. Permalink  ⋅ Reply

    Apurba

    October 18, 2014 at 7:50am

    What about udoo board (http://udoo.org) . my circuit have udoo+motor grid+ 2 servo+ 2 DC motor.
    Let me know what kind of power supply is good for this kibd of setup.

  11. Permalink  ⋅ Reply

    Arduino Power « Trains4Africa

    December 12, 2014 at 3:00pm

    […] an Arduino from an AC adapter. But it is possible to use batteries, with some restrictions. First, don’t use a 9V battery. It might seem ideal, but they don’t hold a lot of power compared to other kinds, and you lose a […]

  12. Permalink  ⋅ Reply

    Tim Smith

    January 7, 2015 at 9:31pm

    This was a very interesting article that cleared a lot up for me. I’m a final year electrical engineer student in Ireland. For my main project I am building a wireless gardening analyzer. The breakdown of the project is an Arduino UNO board powering an LCD screen displaying temperature and humidity data from a DHT11 (although considering replacing with a DHT22). I am now at the stage of deciding what method I am going to use to transmit this data to a website (or if I run out of time by the end of March) to the serial monitor in IDE. The plan is to use a wi-fi shield to do this which would be able to run off the UNO. I have already run out of voltage and ground ports on the UNO; and I have another little circuit to measure the resistance of soil using two probe that only requires 3v that still has to be connected. Would any of you guys be able to offer any advice of what way I should consider transmitting the data and even how to power it efficiently?

    Thank you in advance.

  13. Permalink  ⋅ Reply

    Abdul Wahab

    February 7, 2016 at 3:18am

    Fine article but I think the writer has mistaken in few fundamentals of voltage and current. I would like to shade a light on one sentence which has been neglected by every reader and follower of this article. 6 Series AA batteries will add up the voltages and does not adds the size of storage current (ampere hour). Contrasty, 6 PARALLEL AA batteries will indeed keep the voltage same and adds the current or the size of the battery. Hope this is helpful for all and hope writer edits it in the fine article.

    • Permalink  ⋅ Reply

      cybergibbons

      February 7, 2016 at 8:10am

      No, a degree in electronic engineering means I understand it well enough thanks. It’s capacity, not current anyway.

      A single AA cell typically has a capacity of 2000mAh. A single cell in a 9V PP3 has a capacity of about 500mAh.

  14. Permalink  ⋅ Reply

    Francesc

    March 22, 2016 at 9:51pm

    Great article. I’m a newbie with arduino but I’ve found already some brownout issues while building a simple robot with two servos and a couple of sensors. My solution has been powering the motors with a 4 cell NiMH battery amd the arduino and sensors with a 9V one and it seems to work fine. Is there any solution that doensn’t imply the use of two separated power sources?

  15. Permalink  ⋅ Reply

    Dibya dey

    June 4, 2016 at 11:38am

    i have a good suggestion. forget about these 9 v batteries. make a battery for by yourself
    take two mobile battery and parallel them carefully then it will provide 8.0 v and 4500 mAh
    which is enough to run a arduino for 2 to 3 days.

  16. Permalink  ⋅ Reply

    AndrewS

    June 8, 2016 at 1:51am

    The only good usage for 9V batteries is to challenge your friends to lick it! Now serious, I found this Arduino close which suposed to run on single AA battery: https://bitbucket.org/talk2/whisper-node-avr/overview The board uses a step-up regulator to keep voltage on 3.3V and according to the documentation consumes less than 4uA when sleeping

  17. Permalink  ⋅ Reply

    Global Imports, Inc

    December 22, 2016 at 6:16am

    This was a great read! Thanks for sharing valuable info about batteries. Keep sharing this type of informative blog.

  18. Permalink  ⋅ Reply

    jack

    August 21, 2017 at 12:57am

    This writer does not know anything and just writing lies. I have personally tested in my home projects and nothing wrong.

  19. Permalink  ⋅ Reply

    r barron

    March 27, 2019 at 8:45am

    I have been working on UNO for 18 months and always with the 9V battery. No problems until I tried to use a continuous rotation servo (SG90 9g). Nothing worked with any batteries (new/old) but the motor worked perfectly using the USB power line from UNO to computer. Thank you for this article for it shows up my problem clearly BUT could you give a little more info on its solution? I do want something to run 2 servos from one UNO and this power supply has to be battery based since I am trying to make a remote control buggy.
    Thank you
    Robert Barron

Leave a Reply to Vitor Cancel reply

Your email will not be published. Name and Email fields are required.

This site uses Akismet to reduce spam. Learn how your comment data is processed.