Hi,
14mA is very high average current, and is normaly only seen when the radio is enabled in TX or RX mode. How are you measuring the current consumption?
and
NRF_POWER->SYSTEMOFF = 1;Best regards,
Jørgen
Hi Jorgen,
I am trying to do exactly the same.
I am using SDK 12.3.0, Softdevice 132.
I would like to put the processor in sleep mode to reduce current consumption.
As you mentioned when soft device is enabled, using the functions sd_app_evt_wait will put the processor into sleep mode where it will consume less current. Which is not happening we are measuring 3.15mA.
Actually our application is battery operated. It is mandate to increase the battery life by enabling the sleep mode or even we are ready to reconfigure the clock to 32,768 Hz also.
But with reconfigure the clock the low frequency clock by stopping the high frequency clock, we are measuring 5.7mA. We are not sure whether the system clock is switched from High Frequency clock to low frequency clock.
Below are the methods we tried to switch the clock frequency so the processor can be put in ultra low power mode.
But we are not getting results as mentioned in datasheet.
Method 1:
NRF_CLOCK->TASKS_HFCLKSTOP = 1;
// Set the external high frequency clock source to 32 MHz
//NRF_CLOCK->XTALFREQ = 0x00008000;
// Start the external high frequency crystal
NRF_CLOCK->EVENTS_LFCLKSTARTED = 0;
NRF_CLOCK->TASKS_LFCLKSTART = 1;
while(NRF_CLOCK->EVENTS_LFCLKSTARTED == 0) {}
Method 2 :
ret_code_t err_code = nrf_drv_clock_init();
APP_ERROR_CHECK(err_code);
nrf_drv_clock_lfclk_request(NULL);
Kindly review and share your comments. I need your support on this.
Thanks
,
Chinnasamy.
Hi Jorgen,
I am trying to do exactly the same.
I am using SDK 12.3.0, Softdevice 132.
I would like to put the processor in sleep mode to reduce current consumption.
As you mentioned when soft device is enabled, using the functions sd_app_evt_wait will put the processor into sleep mode where it will consume less current. Which is not happening we are measuring 3.15mA.
Actually our application is battery operated. It is mandate to increase the battery life by enabling the sleep mode or even we are ready to reconfigure the clock to 32,768 Hz also.
But with reconfigure the clock the low frequency clock by stopping the high frequency clock, we are measuring 5.7mA. We are not sure whether the system clock is switched from High Frequency clock to low frequency clock.
Below are the methods we tried to switch the clock frequency so the processor can be put in ultra low power mode.
But we are not getting results as mentioned in datasheet.
Method 1:
NRF_CLOCK->TASKS_HFCLKSTOP = 1;
// Set the external high frequency clock source to 32 MHz
//NRF_CLOCK->XTALFREQ = 0x00008000;
// Start the external high frequency crystal
NRF_CLOCK->EVENTS_LFCLKSTARTED = 0;
NRF_CLOCK->TASKS_LFCLKSTART = 1;
while(NRF_CLOCK->EVENTS_LFCLKSTARTED == 0) {}
Method 2 :
ret_code_t err_code = nrf_drv_clock_init();
APP_ERROR_CHECK(err_code);
nrf_drv_clock_lfclk_request(NULL);
Kindly review and share your comments. I need your support on this.
Thanks
,
Chinnasamy.
Can you please post your issue in a new question? This sounds like something that would require some debugging, so posting it in a new question will be better to avoid spamming this question with comments. One of our support engineers will help you with your request as soon as possible.