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.
9 years, 8 months ago.
nRF51822 Puck power consumption
What current draw should I expect for this? I am using virtually the default code and am getting 1.6 mA when advertising, and 1.5 mA when connected with a characteristic being notified once per second.
I'm using the Rigado BMD-200 nRF51822 module which doesn't have a 32 kHz crystal, so I've used the mbed target HRM1017 which also doesn't have a crystal (the nRF51822 mKit Evaluation Board does). However I have managed to get much lower power consumption in the past.
Any ideas what I'm doing wrong. Does ble.waitForEvent() sleep as much as possible?
The Answer!
Ok this took a *lot* of narrowing down, but I eventually found the answer is the logging functionality of Puck. Specifically this line:
#define LOG_LEVEL_INFO
If you comment it out the current consumption goes from 1.4 mA down to 20 uA. I guess this is because it keeps the serial UART peripheral powered if don't.
PLEASE can you add a comment to that line in all your examples noting this? Hopefully it will save other people frustration!
Question relating to:
2 Answers
9 years, 8 months ago.
could the connection interval be too short?
ble.waitForEvent() is a very light-weight entry into ARM's WFE instructionwhich simply sleeps waiting for system events.
https://developer.mbed.org/teams/Bluetooth-Low-Energy/wiki/Managing-Power-on-mbed-BLE