Go Down

Topic: MKRfox1200 reducing current draw in DeepSleep (Read 632 times) previous topic - next topic

nimasa

Mar 14, 2018, 11:41 am Last Edit: Mar 14, 2018, 11:58 am by nimasa
Hello,

I have a project to get data from sensor on ADC pin every 15 minutes and send to SigFox backend. MKRFox1200 is powered by battery through green screw, and to save power I'm putting MKRFox in DeepSleep mode in between sending times.
Current I'm getting around 430uA with MKRFox1200 in DeepSleep mode using Arduino Low Power 1.2.0. A copy of my code is available here .

In datasheet, in Table 36-8 pages 942, max current draw is written 12.8uA at 25°C. In other topics, this one and this one, I found some people have reached to around 50uA. I'd also like to get consumption to lower levels, below 100uA.
Based on PDF file at thid address regarding ultra low power techniques, one of methods is I/O configuration, which seems the way that is done by other people who reached 50uA.
In datasheet it's written "The Run in Standby bit in the Control A register (CTRLA.RUNSTDBY) controls the behavior of the ADC during standby sleep mode. When the bit is zero, the ADC is disabled during sleep, but maintains its current configuration." [page 855, 32.6.12 Sleep Mode Operation], then how can I disable it? by followings?
TC3->COUNT8.CTRLA.bit.RUNSTDBY = 0;
TC5->COUNT8.CTRLA.bit.RUNSTDBY = 0;
AC->CTRLA.bit.RUNSTDBY = 0;


Also, in page 1 of datasheet we have "In standby all clocks and functions are stopped expect those selected to continue running."


Any help/hint/trick is appreciated in lowering current draw in Standby mode.



Go Up