Arduino easy power saving

Hi guys,

Just starting to explore power saving options for my battery powered projects.

I think a good place to start would be a simple replacement for the delay() function, that uses less power.

Here's what I've found so far:

http://code.google.com/p/narcoleptic/

Are those still valid options, or should I be using something else?

Hi guy,

Panici:
http://www.reddit.com/r/arduino/comments/o5443/so_you_want_an_easy_way_to_save_power/

...is almost worthless. You are far better off using Idle sleep mode rather than slowing down the processor.

Look at these links for everything you need for power saving.

https://code.google.com/p/narcoleptic/

How's this one work as an easy replacement for delay()

You can do both; run at 3.4V, able to wire SD cards and other 3.3V devices direct. The crystal pins would be open, all 8 pins of Port B on a 328P standalone chip would be open. Port D could be 8-bit usable too, 16-bit combined. Try that running at 16 MHz! :stuck_out_tongue:
You can get some bonuses out of running at half-speed besides power savings.

Panici:
How's this one work as an easy replacement for delay()
How to run an Arduino (clone) on a 9V battery for weeks or even months | Hardware Startup

Appears to be a good choice. The delay will not be particularly accurate, the timers will all be stopped (e.g. no PWM), but the processor will be in the deepest sleep mode thus consuming very little power.

GoForSmoke:
You can do both...

Both of what? That reddit post is all about slowing the processor's clock using the prescaler (which is waste of time; just put the processor to sleep). Your post appears to be about using the internal oscillator (which is a good way to reduce power consumption).

You can run slower when you run and sleep when idle .... do both to save power.

GoForSmoke:
You can run slower when you run and sleep when idle .... do both to save power.

If you need to busy-idle put the processor to sleep. If you want the processor to run slower then set the clock to internal oscillator divided by eight (or run from the watchdog oscillator). Slowing down the processor to busy-idle is a solution # searching for a problem.

# Calling it a "solution" is a serious stretch. Everything time based (PWM, millis, micros, TimerOne, Servo, etcetera) is adversely affected when the clock is slowed. For most applications idle-mode sleeping is a better choice because it saves energy without affecting the clock.