How to achieve the lowest power consumption while "sleeping" but still being able to awake from an internal timer ?
For the timer I'm using the Ticker class from mbed...
How to achieve the lowest power consumption while "sleeping" but still being able to awake from an internal timer ?
For the timer I'm using the Ticker class from mbed...
Hi,
The lowest possible current with wake on timer is in system ON mode with RTC running and RAM retention turned off (1.5 uA - see Sleep). It looks like the lp_ticker implementation for nRF5x in mbed uses the RTC, but I'm not sure if this is what's used by the Ticker Class. I'm also not sure if mbed has any APIs for turning off RAM retention.
In general, we do not provide support for mbed anymore. You may direct your questions to the mbed forum.
Best regards,
Jørgen
In the meantime I checked that the mBed implementation for my board (Arduino Nano 33 BLE) is very lacking, so I'm willing to bypass mBed.
So, how to make the board enter "deep sleep", while maintaining the capability to wake up from the RTC ?
"Deep sleep" (System OFF mode) is not possible with wake on RTC. In this mode, all clock sources are turned off, and a wakeup from one of the supported sources (RESET, GPIO, LPCOMP, NFC, USB) will trigger a reset. How to enter System ON idle mode depends on the system you are using. In our SDK we use the following:
These are typically called in a loop in main(), to enter sleep whenever CPU is not required for other tasks.