Lowest power possible in Arduino I have googled all around and I know about some tricks to make ATmega328 not being a power hog. I am using Arduino Nano V3.0.

However, I didn't find out what is the minimal consumption possible with it?

My project consists of an Arduino that will wake up each 10 seconds and, by bluetooth (BT) will scan for existing devices, and if one specific device is not listed, it will lit a LED for 5 seconds and then go to sleep again.

In sum:


Sleep for 10 secs
Wake up
Scan for BT devices
If device ABC is in the list go to 1.
Lit LED
Delay 5 secs
Go to 1.


For bluetooth I will use NRF8001, because it is the most efficient BT module I know so far.

Can you give me some ideas of what tricks should I use to make this ATmega328 and BT module last like one year with a 500mAh battery? Has anyone tried this that can share his experience? Is ATmega328 the right uC for this? I am using it just because I already have code/libraries for it.




  Creating the new tag 'nrf8001' requires at least 150 reputation. Try something from the existing tags list instead.
The issues regarding efficiency of power are:


The CPU speed
The Voltage 
The Power Regulator (not supply)
The Peripherals


Address each one of these and don't over look any of them. Or any sub component. But note that some are more impacting than others.


while it is possible to lower the speed, It is more practical to just sleep. As you have indicated you are going to do.
Running at 3V instead of 5V is a big savings. Note that the 328 can run as low as 1.8V
DON'T use Linear Regulators. Most all Arduino's have a 7-12V to 5V(or 3.3V) Linear Regulator. This just burns the difference between the supply (aka battery) and the VCC, used.
pay attention to the peripherals. Likely this means getting rid of not needed devices. Example the USB to Serial chip that exists on the Nano. What is the lowest voltage can the radio run at? Must it run at a regulated voltage. Use the largest possible resistor values. Such as on pull ups. A 500K pull up will draw less current than a 10K. Where if too big any capacitance may slow it down. Which is likely acceptable.


One of the biggest savings is running directly off of the Battery without a Linear Regulator. Where the ATmega328P can run from 3V down to 1.6V. It would be recommend to use the Brown Out detector.

Also note that ALL batteries have a self discharge rate.  This will determine the maximum possible life of the battery, then minus your devices consumption.