Got a nice Arduino project that needs to be battery-powered, but you want it to keep running for a long time?

Well, the fine folks at Lab 3 might have just the solution for you. They hooked up a photoresistor and a buzzer to an Atmega 168 microcontroller running Arduino to make a digital nightingale. The chip is put to sleep after every light measurement, and the built-in watchdog timer is used to wake it up again 8 seconds later.

By doing this, they estimate that they can increase the battery life of the project (powered by 3 AA batteries) from 4 days to about 3 years! I hope they’re letting it run to see how long the batteries actually last.

See the project website for an explanation of the circuit and a copy of the source code.