nrf9160 psm and eDRX mode Power consumption test

1.Development board used is nrf9160DK,sim car is nb-lot,set's network mode is nb mode,Turn off all peripherals

2.set eDRX mode,eDRX is 655.36s,pwt is 2.56s ,After the device is turned on and connected to the analog server, it will send a frame of data, but not at other times。now  nrf9160DK 

After entering the pwt timer overflow, the measured current is 117ua. Doesn’t the data sheet say it is 7ua? Can there be routines and measured data for this, but psm I measured the same

power consumption as described in the data sheet at 6ua

this is log 

*** Booting Zephyr OS build v2.1.99-ncs1 ***
AT%XSYSTEMMODE=0,1,0,0
OK

AT%XSYSTEMMODE?
%XSYSTEMMODE: 0,1,0,0
OK

AT+CEDRXS=2,5,"1011","0000"
OK

AT+CEREG=5
OK

AT%XEPCO=0
OK

AT%XSYSTEMMODE=0,1,0,0
OK

AT+CFUN=1
OK

[00:00:00.211,334] <inf> lte_lc: Using legacy LTE PCO mode...
+CEREG: 2,"1D29","0D6F774D",9,0,0,"11100000","11100000"

+CEREG: 2,"1D29","0D6F774D",9,0,0,"11100000","11100000"
+CEREG: 1,"1D29","0D6F774D",9,,,"11100000","11100000"

+CEREG: 1,"1D29","0D6F774D",9,,,"11100000","11100000"
+CEDRXP: 5,"1011","1011","0011"

+CEDRXP: 5,"1011","1011","0011"
[00:00:07.899,261] <dbg> main.main: TCP test with eDRX

[00:00:08.069,488] <dbg> main.tcp_init: Connected to: 113.87.99.143.
[00:00:08.069,854] <dbg> main.app_tcp_start: send len to: 17.

this is pro.cof

CONFIG_NEWLIB_LIBC=n
CONFIG_BSD_LIBRARY=y
CONFIG_GPIO=n
CONFIG_SERIAL=n
CONFIG_AT_HOST_LIBRARY=n
CONFIG_STDOUT_CONSOLE=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_TEST_RANDOM_GENERATOR=y
CONFIG_NETWORKING=y
CONFIG_NET_BUF_USER_DATA_SIZE=1
CONFIG_NET_SOCKETS_OFFLOAD=y
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_POSIX_NAMES=y
CONFIG_IEEE802154_RAW_MODE=y
CONFIG_TRUSTED_EXECUTION_NONSECURE=y
CONFIG_LOG=n
CONFIG_LOG_DEFAULT_LEVEL=4
CONFIG_HEAP_MEM_POOL_SIZE=1024


# LTE link control
CONFIG_LTE_LINK_CONTROL=y
CONFIG_LTE_LEGACY_PCO_MODE=y
CONFIG_LTE_NETWORK_MODE_NBIOT=y

# Main thread
CONFIG_MAIN_THREAD_PRIORITY=7
CONFIG_MAIN_STACK_SIZE=4096
CONFIG_LTE_PSM_REQ_RPTAU="10101010"
CONFIG_LTE_PSM_REQ_RAT="00100001"
CONFIG_LTE_EDRX_REQ=y

  • Hi Copen,

    You request from the network:

    AT+CEDRXS=2,5,"1011","0000"


    However the network grants you another Paging Time Window:

    +CEDRXP: 5,"1011","1011","0011"

    So eDRX interval is 655,36 seconds and PTW is 10,24 sec.

    It is the UART that is drawing the extra current in your case. 
    You can disable UART simply by the following config in prj.conf:

    CONFIG_SERIAL=n

    You also need this in the Secure Partition Managers prj.conf file.

    Either you can add that configuration directly in /nrf/samples/spm/prj.conf. This will affect all other samples if you build with SPM, so I recommend that you have a separate spm.conf for each project instead.

    Here is how you do it:

    1. In your projects CMakeLists.txt you add the following 

    set(spm_CONF_FILE ${CMAKE_CURRENT_SOURCE_DIR}/spm.conf)

    right under the line:

    cmake_minimum_required(VERSION 3.13.1)

    (check the asset_tracker sample as reference)

    2. Then make a file called 'spm.conf' in your project folder and add the configurations:

    # Configuration copied from the nRF Secure Partition Manager (SPM) sample:
    CONFIG_IS_SPM=y
    CONFIG_FW_INFO=y
    CONFIG_GPIO=n
    
    # Extra Configurations
    CONFIG_SERIAL=n

    So when you rebuild your project, it will select this spm.conf file and turn of the UART for you.

    Then you should get lower numbers.

    Best regards,
    Martin L

Related