NRF9160DK & System OFF

Hi all,

SDK Version: v2.5.0

Modem FW: v1.3.5

Board: NRF9160DK

Build configuration: nrf9160dk_nrf9160_ns

I've been trying to get SYSTEM_OFF to work on my dev-kit with no success, it seems to just sit around 3.6mA when I measure with my PPK2

I did find an example here:

https://devzone.nordicsemi.com/guides/hardware-design-test-and-measuring/b/nrf9x/posts/getting-started-with-current-measurements-on-the-nrf9160 

With a precompiled .hex, and when I used nrfjprog to flash that I read an average of 2.6uA

This is my code I use when I read 3.6mA

#include <modem/lte_lc.h>
void main(void) {
  lte_lc_power_off();
  k_sleep(K_MSEC(1000));
  NRF_REGULATORS->SYSTEMOFF = 1;
}

and my prj.conf

CONFIG_LTE_LINK_CONTROL=y
CONFIG_DEBUG=n

I'll also attach the whole project just in case

nrf_deep_sleep.zip

  • So I managed to solve the issue myself, seems like the modem does not power off unless you call nrf_modem_lib_init() before lte_lc_power_off.
    Now I'm reading an average of 2.54uA:

    I just had to change my code to this:

    #include <modem/lte_lc.h>
    #include <modem/nrf_modem_lib.h>
    
    int main(void) {
      nrf_modem_lib_init();
      lte_lc_power_off();
      k_sleep(K_MSEC(1000));
      NRF_REGULATORS->SYSTEMOFF = 1;
      return 0;
    }

    And my prj.conf to include nrf_modem_lib:

    CONFIG_LTE_LINK_CONTROL=y
    CONFIG_LTE_AUTO_INIT_AND_CONNECT=n
    CONFIG_NRF_MODEM_LIB=y

Related