This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Thingy:91 Serial LTE modem PSM

I want to evaluate power consumption of nRF9160 used as AT command modem using Thingy:91 Serial LTE modem.

How to achieve lowest power consumption for Thingy:91 LTE Modem in PSM please ?

- Thingy:91 v1.0.0

- LTE modem app from ncs v1.4.0

- Modem firmware AT+CGMR mfw_nrf9160_1.2.2

https://www.joulescope.com/

- NB IoT Vodafone CZ, +CEREG: 5,"AE38","000AC51F",9,,,"00000000","00000111"

After AT#XSLEEP=0 or AT#XSLEEP=0 I am getting ~90uA average power consumption measured on P1 (SB3 cutted).

I am not able to wake up nRF9160 by UART communication or button.

Tested with following prj.conf build options for Serial LTE modem app:

- default

CONFIG_SLM_GPIO_WAKEUP = y

CONFIG_SLM_GPIO_WAKEUP = y & CONFIG_SLM_INTERFACE_PIN = 26

There is not CONFIG_SLM_CONNECT_UART_0 in prj.conf as stated in documentation https://developer.nordicsemi.com/nRF_Connect_SDK/doc/1.4.0/nrf/applications/serial_lte_modem/doc/slm_description.html

but there is CONFIG_UART_0_NRF_HW_ASYNC_TIMER=2 - is it OK please ?

 

Whole default prj.conf from ncs v1.4.0:

# General config
CONFIG_LOG=y
CONFIG_LOG_DEFAULT_LEVEL=3
CONFIG_STACK_SENTINEL=y
CONFIG_NEWLIB_LIBC=y
CONFIG_NEWLIB_LIBC_FLOAT_PRINTF=y
CONFIG_RING_BUFFER=y

# Segger RTT
CONFIG_USE_SEGGER_RTT=y
CONFIG_RTT_CONSOLE=y
CONFIG_UART_CONSOLE=n
CONFIG_LOG_BACKEND_RTT=y
CONFIG_LOG_BACKEND_UART=n

# Network
CONFIG_NETWORKING=y
CONFIG_NET_SOCKETS=y
CONFIG_NET_NATIVE=n

# BSD library
CONFIG_BSD_LIBRARY=y
# Align the max FD entry to BSD_MAX_SOCKET_COUNT(8)
CONFIG_POSIX_MAX_FDS=8
# Enable below for modem trace
#CONFIG_BSD_LIBRARY_TRACE_ENABLED=y

# Use GPIO
CONFIG_GPIO=y
CONFIG_GPIO_NRFX=y
CONFIG_GPIO_NRF_P0=y

# UART interface
CONFIG_SERIAL=y
CONFIG_UART_ASYNC_API=y
CONFIG_NRFX_TIMER2=y

# LTE link control
CONFIG_LTE_LINK_CONTROL=y
CONFIG_LTE_AUTO_INIT_AND_CONNECT=n

# Stacks and heaps
CONFIG_MAIN_STACK_SIZE=4096
CONFIG_HEAP_MEM_POOL_SIZE=16384
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=8192

# AT_CMD
# Enable AT_CMD debug for details
#CONFIG_AT_CMD_LOG_LEVEL_DBG=y

# Device power management
CONFIG_DEVICE_POWER_MANAGEMENT=y

# Enable SUPL client support
#CONFIG_SUPL_CLIENT_LIB=y

# FOTA
CONFIG_HTTP_PARSER_URL=y
CONFIG_FOTA_DOWNLOAD=y
CONFIG_FOTA_DOWNLOAD_PROGRESS_EVT=y
CONFIG_DFU_TARGET=y
CONFIG_DOWNLOAD_CLIENT=y
CONFIG_DOWNLOAD_CLIENT_STACK_SIZE=4096
CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_IMG_MANAGER=y
CONFIG_FLASH=y
CONFIG_IMG_ERASE_PROGRESSIVELY=y

# Application-specific
CONFIG_SLM_LOG_LEVEL_INF=y
# Enable GPIO wakeup if sleep is expected
#CONFIG_SLM_GPIO_WAKEUP=y
# Use UART_0 (when working with PC terminal)
CONFIG_UART_0_NRF_HW_ASYNC_TIMER=2
# Use UART_2 (when working with external MCU)
#CONFIG_SLM_CONNECT_UART_2=y
#CONFIG_UART_2_NRF_HW_ASYNC_TIMER=2
# Use optional TCP/TLS Proxy
#CONFIG_SLM_TCP_PROXY=y
# Use optional UDP/DTLS Proxy
#CONFIG_SLM_UDP_PROXY=y
Related