I am trying to get the nRF9160 DK power consumption down as much as possible to establish a baseline for development. After struggling to achieve the values claimed in the datasheet for a few days I thought I will just write my first post here.
My setup is an Otii Arc power analyzer connected to the VDD nRF and GND pins. P22 jumper is disconnected.
I tested my code on two DKs, power consumption on the first one was 74 µA and 50 µA on the second one.
Serial is off, both in prj.conf and spm.conf. MCUboot is off. I have tested it with both the SIM card and without (but it shouldn't have anything to say, since I am turning the modem off anyway) and the result has been always the same.
The code most likely includes some unnecessary things, since I have been testing several different approaches (and I'm pretty much a beginner in nRF91 development).
main.c
#include <zephyr.h> #include <stdio.h> #include <modem/lte_lc.h> #include <net/socket.h> #include <hal/nrf_gpio.h> #include <drivers/gpio.h> #include <device.h> #include <devicetree.h> void main(void) { int err; //err = lte_lc_psm_req(true); err = lte_lc_power_off(); int i; for(i=0; i<=30; i++) { nrf_gpio_cfg(i, NRF_GPIO_PIN_DIR_INPUT, NRF_GPIO_PIN_INPUT_DISCONNECT, NRF_GPIO_PIN_NOPULL, NRF_GPIO_PIN_S0S1, NRF_GPIO_PIN_NOSENSE); } k_cpu_idle(); }
prj.conf
# General config CONFIG_NEWLIB_LIBC=y CONFIG_NEWLIB_LIBC_FLOAT_PRINTF=y CONFIG_NCS_SAMPLES_DEFAULTS=y CONFIG_SERIAL=n # Network CONFIG_NETWORKING=y CONFIG_NET_NATIVE=n CONFIG_NET_SOCKETS=y CONFIG_NET_SOCKETS_OFFLOAD=y # LTE link control CONFIG_LTE_LINK_CONTROL=y CONFIG_LTE_AUTO_INIT_AND_CONNECT=n # Modem library CONFIG_NRF_MODEM_LIB=y # Heap and stacks CONFIG_HEAP_MEM_POOL_SIZE=1024 CONFIG_MAIN_STACK_SIZE=4096 CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048 # LTE parameters ## Network Mode / LTE category CONFIG_LTE_NETWORK_MODE_LTE_M=y ## PSM CONFIG_LTE_PSM_REQ_RPTAU="00100001" CONFIG_LTE_PSM_REQ_RAT="00000000" # MCUBOOT CONFIG_BOOTLOADER_MCUBOOT=n CONFIG_GPIO=y CONFIG_BSD_LIBRARY_TRACE_ENABLED=n
spm.conf
# Configuration copied from the nRF Secure Partition Manager (SPM) sample: CONFIG_IS_SPM=y CONFIG_FW_INFO=y CONFIG_GPIO=y # Extra Configurations CONFIG_SERIAL=n CONFIG_SPM_NRF_REGULATORS_NS=y
Thank you in advance,
Michal