We are seeing about 500 uA in sleep mode and we expect to see under 2 uA. We are using an nRF52810 on a BMD-330 module on SDK 16.0.0.
Here's the relevant code...
static void power_management_init(void) { ret_code_t err_code; err_code = nrf_pwr_mgmt_init(); APP_ERROR_CHECK(err_code); } /**@brief Function for handling the idle state (main loop). * * @details If there is no pending log operation, then sleep until next the next event occurs. */ static void idle_state_handle(void) { nrf_pwr_mgmt_run(); } int main(void) { SEGGER_RTT_Init(); log_init(); initIOS(); power_management_init(); ble_stack_init(); sd_ble_gap_addr_get(&mac); saadc_init(); saadc_sampling_event_init(); debugPrint("IoTTemp started.\n"); // setOutput("LED", 1); sampleADCAndAdvertise(); for (;;) { idle_state_handle(); } }
nrf_pwr_mgmt_run is a built-in Nordic function. Is there anything else I need to do to put it in low power mode?