Important changes to forums and questions
All forums and questions are now archived. To start a new conversation or read the latest updates go to forums.mbed.com.
10 years, 1 month ago.
Lower power Mode Nordic nRF51822
Hi all,
Trying to get the nRF51822 into a lower current consumption mode using mbed compiler at the moment taking around 20mA idle.
According to: https://devzone.nordicsemi.com/question/1316/what-is-the-power-and-clock-model-of-peripheral-in-nrf51/
There are sleep modes available but i have seen no one reference them for mbed?
If anyone has any ideas would be great, thanks.
Andrea.
Question relating to:
3 Answers
10 years, 1 month ago.
As long as bluetooth is used on the mkit for the nrf51822, there's not really much room for power control available in the current version of the BLE api.
10 years, 1 month ago.
Hi,
The BLE_Beacon example on mbed consumes 35uA of average current; and that's because the radio peaks at 15mA of current for around 2ms for every advertisement. But this should give you an idea of what's possible.
We made some changes recently to lower baseline power consumption; in particular:
- the system now starts with low-frequency clock by default (instead of using the external 16MHz clock). The high frequency clock is kicked into action automatically by the soft-device when needed; but now it doesn't remain active all the time. This by itself lowers the baseline consumption significantly.
- We make an effort to avoid using wait(), which is currently synchronous and wastes a lot of power.
- We've also re-implemented the Ticker APIs to use the RTC instead of a high-frequency timer. This makes a tradeoff between precision and power; and we believe power trumps over precision in the context of BLE.
Users are free to enable high-frequency timers explicitly if needed. If an application requires the use of high-frequency clock (for instance to do serial communication at high baud rates), then it must enable the high-frequency clock by writing into the appropriate control registers (please refer to the datasheets of the nRF51822). It would help to turn off the high-freq. clock at the earliest opportunity.
Users may also experiment with reducing the transmit power of their radio; there's an API for this. Connection intervals and connection latency are also available for modification, and play a very important role in power consumption.
10 years ago.
Sounds like your board is running in debug mode. Try to do your power measurements when running from a battery and not from usb.