Computing stuff tied to the physical world

Reducing power consumption

In Software on Oct 26, 2012 at 00:01

The problem with yesterday’s setup is power consumption:

DSC 4213

There’s no way the sketch will run for a decent amount of time on just a single AA battery.

Let’s take some measurements:

  • total power consumption on a 5V supply (via the USB BUB) is 20 mA
  • total power consumption on 3.3V is almost the same: 19 mA
  • the battery drain on the Eneloop at 1.28V is a whopping 95 mA

(the regulator on the AA board was selected for its low idle current, not max efficiency)

That last value translates to a run time of 20 hours on a fully charged battery. Fine for a demo, but definitely not very practical if this means we must replace batteries all the time.

Let’s try to reduce the power consumption of this thing – my favourite pastime.

The first obvious step is to turn off the Graphics Board backlight – a trivial change, since it can be done under software control. With the dark-on-light version of the GLCD this is certainly feasible, since that display is still quite readable in ambient light. But the net effect with a 5V power is that we now draw 16.5 mA … not that much better!

The real power consumer is the RFM12B module, which is permanently on. Turning it off drops the power consumption to 6.0 mA (with the Graphics Board still displaying the last values). And putting the ATmega to sleep reduces this even further, down to 0.5 mA. Now we’re cookin’ – this would last some 6 months on 3 AA batteries.

Except that this variant of the “homeGraph” sketch is next to useless: it powers up, waits for a packet, updates the display, and then goes to sleep: forever… whoops!

But maybe there’s a way out – stay tuned…

  1. Sounds like a perfect job for a Betty TV sitting in her cradle most of the time, where a few milliamps don’t really matter.

    • Heh, got a few of those a few days ago – haven’t looked into it yet. Is it hard to hack them?

  2. For the puzzled – Betty TV

  3. Let’s try to reduce the power consumption of this thing – my favourite pastime.

    :’)

  4. Current != power. 5 V * 20 mA = 100 mW 3.3 V * 19 mA = 63 mW 1.28 V * 95 mA = 122 mW

  5. I think I see where this is going too :-). Just measure the time between two packets from the same node and use this to switch the receiver on shortly before the next one should arrive.

    What do you do when the sending node was reset and has a new sending-pattern?

    Or maybe you have a completely different idea. :-)

  6. Only people read displays. Did Schrödinger say ‘room node’?

  7. I love my e-reader. I have always been fascinated by this “no power” consumption display capability. Recently sparkfun sells an E-paper Breakout Board, but for text only display. Do you think it could improve power performance of LCD based devices?

  8. A 555 timer attached to the reset pin! That will make it wake / update again! (its botched as heck, I know that)

    also – you dont want a graphics display like that. You want something e-paper like. I think sparkfun has an epapaer display. Yep, it does. https://www.sparkfun.com/products/10304 https://www.sparkfun.com/products/10150 Those only take power to change the display. If you are only going to update the display every 8 seconds or so – this is a much better option than something constantly powered.

    Sometimes changing the hardware will reduce power consumption too.

  9. I’ve done a similar thing with a battery powered receiver, I just re-sync the time everytime I receive a message from the transmitter. I wake up after 53 seconds and wait for a signal, after processing the signal I sleep for 53 seconds, the transmitter sends every 58 seconds. I’m going to get it to be a bit closer than 5 sec’s wait time.

Comments are closed.