My adventures with a Raspberry Pi and Arduino programming

I’ve now employed a bunch of tricks to reduce power consumption. Here’s what I’d done…

[Updated: Updated to include the 4.13 mA overhead of the Arduino itself in full power mode]

  1. Initial fully powered level: GPS & Radio draw 102.13mA
  2. Altered GPS so that it uses battery backup to remember satellites, and powers off between reads. I’m now also taking 25 readings, using the last 10 as they are going to average out to be more accurate. This means my average seek time for GPS location is now 42 seconds – form start to finish. So for 42 seconds my power draw is now 65.13mA.
  3. Altered radio to power off entirely, then come on for 5 seconds (to pair), transmit, wait for 2 seconds (incase of error correction/retries), and power off. So for 7 seconds my power consumption is 32.13mA.
  4. Added a delay where both GPS and Radio are not powered. This was 30 seconds, but I’m going to make it 1 minute 41 seconds (2.5 mins minus the 49 seconds above). This gives me 101 seconds at 4.13mA.
  5. Calculating all the above gives me 20 readings an hour. Over a 2.5 minute full cycle my unit will draw an average of 39.87mA

A power draw of 19mA with a 2000mAh battery gives me 50.16 hours of operation – or just over 2 days.

A 5 minute wait time will mean an average of 12.11mA, or 165.26 hours (6.88 days) of operation. This will give me a positional update every 6 minutes.

Of course the above assumes you’re always in contact. Perhaps unlikely. Given D of E requires 6 hours (Bronze) to 8 hours (Gold) of ‘planned activity’ outside of a campsite each day it would be easier to send updates more regularly, but turn the device off overnight.

There are governance issues with this, plus what if a switch turns off accidentally inside the rucksack? All too common.

A good solution is probably to use a key switch. These keys could be kept with the team or the supervisor. This means you can send an update every 37 seconds (or better) – say 30 seconds for my maths. This means you only get 19.56 hours – but that’s easily over the 12 hours for a Bronze weekend (2x6hrs), Silver would be 21 hours (3x7hrs) and Gold 40 hours (5x8hours – 1×8 acclimitisation, 4×8 expedition). So for Gold you could have a replacement battery, solar charger, or just a second unit.

Where next?

Of course none of the above actually takes in to account the Arduino Pro Mini 3.3V’s power consumption. [Update: The above does now – average for a 3.3V Arduino Pro Mini whilst doing nothing else is 4.13mA] This can be as high as 16 mA according to some blog posts. These posts also mention some tricks using Arduino sleep mode which I may try out.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: