Super-Low Power Arduino (for battery powered application)

Thanks everyone for your help with this. I've tried to put a few things together and test out various ways of lowering power consumption. This post http://arduino.cc/forum/index.php/topic,57067.0.html asks about unused pins, which as it turns out makes quite a lot of difference.

I've written up what I've found here: http://electronicsfordogs.com/node/15 . In short though, set all your unused pins as inputs, and enable the internal pull ups on them, use the PRR register for anything you absolutely don't use (eg. SPI, TWI, maybe the ADC, timers, etc), and think seriously about reducing the clock speed to 8Mhz or less if you can get away with it. Any long delay()s in code could be candidates for sleep mode, or else a slow clock and ordinary waiting. Obviously, any time you're hanging around waiting for something external to happen, then use an external interrupt whilst you put the CPU into a deep sleep.

In short, it's possible to make some serious current savings, so long as you're willing to spend a bit of time doing it. Reasonable savings take almost no effort at all, so it's really easy to save some power in most applications, if it's something you care about.