Author Topic: Minimum achievable power consumption  (Read 4264 times)

obeard

  • NewMember
  • *
  • Posts: 5
Minimum achievable power consumption
« on: December 10, 2015, 12:51:06 PM »
Hey all,

I am currently working to get my Moteino to work at ultra-low powers. I will be powering my board using a energy harvesting module and as a result the board power consumption, particularly in sleep mode, is really important to me.

At the moment the lowest current consumption I can achieve is ~6mA in active mode, and ~55uA in sleep mode. I think I can simplify my code and optimise the MCU settings to reduce the active mode, but if I cannot get the sleep mode any lower it will be a real problem.

So what I would like to know is, what is the lowest consumption you guys have achieved? Is it worth persevering with Moteino or should I look for a lower power solution? Has anyone got <10uA or even <5uA, and what were the key solutions? I'm using the LowPower.powerDown command at the moment, turning off ADC and BOD, and I've set the PRR to an optimum level. The radio and the flash are in sleep mode (I'm considering removing the flash altogether though I think this will only save a tiny amount of power), all unused pins are held LOW... I think that's it.

Anything I haven't mentioned that you think would be useful would be really helpful. Thanks in advance!

WhiteHare

  • Hero Member
  • *****
  • Posts: 1300
  • Country: us
Re: Minimum achievable power consumption
« Reply #1 on: December 10, 2015, 01:19:05 PM »
150nA is common with sketch J at http://www.gammon.com.au/forum/?id=11497  That link will also give you background info that's helpful in debugging if you aren't getting that. 

You could go lower, but at that point going lower often no longer matters, and accurate measurements also start to get trickier.  People here can point you to other sleep libraries that also perform well.  IIRC, TomWS has one that he likes and recommends, so  as an alternative you might also try searching for that.
« Last Edit: December 11, 2015, 06:40:58 AM by WhiteHare »

joelucid

  • Hero Member
  • *****
  • Posts: 868
Re: Minimum achievable power consumption
« Reply #2 on: December 11, 2015, 05:11:38 AM »
Quote
At the moment the lowest current consumption I can achieve is ~6mA in active mode, and ~55uA in sleep mode. I think I can simplify my code and optimise the MCU settings to reduce the active mode, but if I cannot get the sleep mode any lower it will be a real problem.

So what I would like to know is, what is the lowest consumption you guys have achieved?

55uA is much too high. If you use the watchdog timer to wake your Moteino (by specifying a time interval in LowPower.powerDown instead of specifying forever) you should be able to get down to around 4-5uA.

It's possible to go lower. My favorite approach is discussed here: https://lowpowerlab.com/forum/index.php/topic,1136.0.html. That should get you down to maybe around 3uA but with full access to the node at any time.

The approach that achieves the lowest currently known current consumption for a moteino with regular wakeups is described here: https://lowpowerlab.com/forum/index.php/topic,1325.0.html

And if you can use an external interrupt as wakeup (eg in a remote control) you can go as low as 250nA (150nA for the 328p, 100nA for the radio).

All these numbers assume that the LDO is removed from the Moteino. The MCP1702 draws about 2uA on top. In low power setups it's best to remove it if your voltage is always < 3.6V.

Sergegsx

  • Jr. Member
  • **
  • Posts: 87
  • Country: es
Re: Minimum achievable power consumption
« Reply #3 on: December 11, 2015, 05:40:59 AM »
very interesting!
what is the usual way of powering this kind of nodes? Voltage has to be within a range and from what you say without the LDO regulator. So how is it done?
thank

joelucid

  • Hero Member
  • *****
  • Posts: 868
Re: Minimum achievable power consumption
« Reply #4 on: December 11, 2015, 06:59:25 AM »
Quote
what is the usual way of powering this kind of nodes? Voltage has to be within a range and from what you say without the LDO regulator. So how is it done?

I use either a coin cell like the cr2450 or 2x aaa / 2x aa. For outdoor use the lithium aa/aaa are my favorites. In addition to the 2uA LDO savings I mentioned you save energy by providing the right voltage: you don't burn off the excess as heat in the LDO. The alkaline aaa gives you about 1200mAh. Compare that to 565mAh for a 9V block. Even the tiny cr2450 has a larger capacity than the 9V block.

And another great advantage is you can measure the input voltage without additional HW once you've done away with the LDO.

WhiteHare

  • Hero Member
  • *****
  • Posts: 1300
  • Country: us
Re: Minimum achievable power consumption
« Reply #5 on: December 11, 2015, 07:29:01 AM »
Because these nodes last so long on disposable batteries, there hasn't been a lot of discussion about energy harvesting.  Nonetheless, if you wanted to do energy harvesting for other reasons anyway, I'm starting to think a single LiFePO4 cell (you pick the size) that you keep charged close to its "resting voltage" might make a lot of sense, because most of its useable voltage is in the 3.0 -  3.2v range, and lately the prices have started to get pretty cheap ($1.26 for a 700mah AA cell if you buy 12 on ebay). If not that, then maybe some kind of supercap would be an option, though you may have to battle their high self discharge.

TomWS

  • Hero Member
  • *****
  • Posts: 1930
Re: Minimum achievable power consumption
« Reply #6 on: December 11, 2015, 07:45:45 AM »
I am currently working to get my Moteino to work at ultra-low powers. I will be powering my board using a energy harvesting module
Hopefully Joe has answered your questions, the threads he referenced have useful information and, I know firsthand, the numbers he's citing are accurate for a Moteino (with the mods he suggested).

I am very interested in what you are thinking with respect to "energy harvesting".  Do you have a specific method in mind or still in exploratory stage?  I'm sure everyone here will be interested.

Tom

obeard

  • NewMember
  • *
  • Posts: 5
Re: Minimum achievable power consumption
« Reply #7 on: December 15, 2015, 05:24:30 AM »
Thanks for these replies, it is very reassuring to know that the Moteino should be suitable for the application I have planned. I think the reason I haven't been able to get the consumption as low as possible may be that i have started by building the code for my application and then trying to optimise it, rather than the other way round which seems more sensible! I will go ahead trying some of these techniques ( I have tried most of the ideas on the Nick Gammon page, but not all so I'll start there and move onto the other threads later).

Does this low power consumption rely on using the MCU internal clock, rather than the external one provided with the Moteino?

Regarding my energy harvesting solution, I am working with a prototype PV panel that is not yet for sale, and am trying to build a demonstration unit that provides some real functionality from this supply. I don't want to say too much right now as this PV panel is still under development, but i will update the forum with more information when I can!

kobuki

  • Sr. Member
  • ****
  • Posts: 289
Re: Minimum achievable power consumption
« Reply #8 on: December 16, 2015, 06:07:20 PM »
... I am working with a prototype PV panel that is not yet for sale ...

Things are getting interesting ;)