have built a small library for low Power Sleeping on a ATMega328P-PU, to easily save some Energy on projects running 24/7.
There are three different Modes you can use, each putting the 328 to Sleep until a Interrupt wakes it, or for a given time in seconds.
The most power saving mode puts the 328P-PU to sleep at 0,00015mA only (with 16MHz external Osciallator; no Watchdog timer, no Clocks running, Outputs disabled, BrownOut disabled). Right. less than one microampere at 5V Power Supply.
There are a lot of different Options how to use this library to fit most used needs on a easy way, easy enough to be used by everyone… at least i hope so =D. See the Example on how to use them.
This library still could be optimized. Right now it only supports ATMega 328P-PU (like Arduino UNO), but if there is some help through the community, i think it could be extended to fit a ATMega as well (i dont have one, so i couldnt test anything).
If you want to use this library, refer to the scematic i have added on how to wire the external interrupts.
BEC_EcoSleep.zip (4.69 KB)