In one of my projects, UART interface is used for the communication of external sensors. During the power consumption test, I found that when 9160 enters the idle state, its average current is about 600uA. However, after I turn off UART, the average current in Idle state is only less than 100uA. Therefore, what method can be used to reduce the power consumption of UART? So it goes to sleep after the data has been transmitted or it shuts down automatically or something like that?
this is my prj.conf file:
# # Copyright (c) 2019 Nordic Semiconductor ASA # # SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic # # General config CONFIG_NEWLIB_LIBC=y CONFIG_NEWLIB_LIBC_FLOAT_PRINTF=y CONFIG_ASSERT=y CONFIG_REBOOT=y CONFIG_GPIO=y CONFIG_TRUSTED_EXECUTION_NONSECURE=y # Log CONFIG_LOG=y CONFIG_LOG_IMMEDIATE=y CONFIG_USE_SEGGER_RTT=y CONFIG_LOG_BACKEND_RTT=y CONFIG_LOG_BACKEND_UART=n CONFIG_LOG_DEFAULT_LEVEL=4 CONFIG_LOG_MODE_OVERFLOW=y CONFIG_LOG_BACKEND_RTT_MODE_DROP=y CONFIG_LOG_BACKEND_SHOW_COLOR=n CONFIG_LOG_BACKEND_FORMAT_TIMESTAMP=n # Modem info CONFIG_MODEM_INFO=y # BSD library CONFIG_BSD_LIBRARY=y CONFIG_BSD_LIBRARY_TRACE_ENABLED=n # Flash CONFIG_FLASH=y CONFIG_IMG_ERASE_PROGRESSIVELY=y # NVS CONFIG_FLASH=y CONFIG_FLASH_PAGE_LAYOUT=y CONFIG_NVS=y CONFIG_NVS_LOG_LEVEL_DBG=y CONFIG_MPU_ALLOW_FLASH_WRITE=y # nRF Cloud #CONFIG_CLOUD_API=y #CONFIG_NRF_CLOUD=y #CONFIG_NRF_CLOUD_LOG_LEVEL_DBG=y #CONFIG_NRF_CLOUD_AGPS=y # Needed for the cloud codec #CONFIG_CJSON_LIB=y # GPS CONFIG_NRF9160_GPS=y #CONFIG_GPS_USE_SIM=y CONFIG_GPS_USE_EXTERNAL=y CONFIG_GPS_DEV_NAME="NRF9160_GPS" CONFIG_GPS_CONTROL_PSM_ENABLE_ON_START=y CONFIG_GPS_CONTROL_FIRST_FIX_CHECK_DELAY=10 CONFIG_GPS_CONTROL_FIX_CHECK_INTERVAL=30 CONFIG_GPS_CONTROL_FIX_TRY_TIME=360 CONFIG_GPS_CONTROL_PSM_DISABLE_ON_STOP=n # AT_CMD #CONFIG_AT_HOST_LIBRARY=y #CONFIG_UART_INTERRUPT_DRIVEN=y # Console CONFIG_CONSOLE_SUBSYS=n CONFIG_CONSOLE_HANDLER=n CONFIG_CONSOLE_GETCHAR=n CONFIG_CONSOLE=n CONFIG_RTT_CONSOLE=n CONFIG_UART_CONSOLE=n # Enable SUPL client support AGPS CONFIG_SUPL_CLIENT_LIB=n # Network CONFIG_NETWORKING=y CONFIG_NET_NATIVE=n CONFIG_NET_SOCKETS_OFFLOAD=y CONFIG_NET_SOCKETS=y CONFIG_NET_SOCKETS_POSIX_NAMES=y # LTE link control CONFIG_LTE_LINK_CONTROL=y CONFIG_LTE_AUTO_INIT_AND_CONNECT=n CONFIG_LTE_NETWORK_USE_FALLBACK=n CONFIG_LTE_NETWORK_TIMEOUT=600 CONFIG_LTE_NETWORK_MODE_LTE_M_GPS=n CONFIG_LTE_NETWORK_MODE_NBIOT_GPS=y CONFIG_LTE_LEGACY_PCO_MODE=y # PSM CONFIG_LTE_PSM_ENABLE=y CONFIG_LTE_PSM_REQ_RPTAU="00100001" CONFIG_LTE_PSM_REQ_RAT="00000000" # eDRX CONFIG_LTE_EDRX_ENABLE=n CONFIG_LTE_EDRX_REQ_VALUE="1001" # RAI CONFIG_LTE_RAI_ENABLE=y # MQTT CONFIG_MQTT_LIB=y CONFIG_MQTT_LIB_TLS=n CONFIG_MQTT_PUB_TOPIC="device/auri/pushdata" CONFIG_MQTT_SUB_TOPIC="device/auri/" CONFIG_MQTT_CLIENT_ID="my-client-id" CONFIG_MQTT_USER_NAME="admin123" CONFIG_MQTT_PASSWORD="admin123" CONFIG_MQTT_BROKER_HOSTNAME="47.107.51.89" #CONFIG_MQTT_BROKER_HOSTNAME="18.135.53.53" CONFIG_MQTT_BROKER_PORT=1883 CONFIG_MQTT_KEEPALIVE=300 # Library for buttons and LEDs CONFIG_DK_LIBRARY=y CONFIG_DK_LIBRARY_INVERT_LEDS=n # Heap and stacks CONFIG_HEAP_MEM_POOL_SIZE=16384 CONFIG_MAIN_STACK_SIZE=8192 CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048 CONFIG_HW_STACK_PROTECTION=y # MCUBOOT #CONFIG_BOOTLOADER_MCUBOOT=y #CONFIG_IMG_MANAGER=y #CONFIG_MCUBOOT_IMG_MANAGER=y # SPI CONFIG_SPI=y CONFIG_SPI_NRFX=y CONFIG_SPI_2=y CONFIG_SPI_2_NRF_SPIM=y CONFIG_SPI_3=y CONFIG_SPI_3_NRF_SPIM=y # I2C CONFIG_I2C=y CONFIG_I2C_NRFX=y CONFIG_I2C_1=y CONFIG_I2C_1_NRF_TWIM=y CONFIG_I2C_2=n CONFIG_I2C_2_NRF_TWIM=n CONFIG_I2C_INIT_PRIORITY=60 # UART #CONFIG_SERIAL=y #CONFIG_UART_INTERRUPT_DRIVEN=y #CONFIG_UART_LINE_CTRL=y #CONFIG_UART_0_NRF_UART=y #CONFIG_UART_0_NRF_UARTE=y #CONFIG_UART_0_NRF_FLOW_CONTROL=n #CONFIG_UART_1_NRF_UARTE=n #CONFIG_UART_1_NRF_FLOW_CONTROL=n # WIFI CONFIG_WIFI=y # Use smaller buffers for net_buf as CANBUS packets are quite small. CONFIG_NET_BUF_DATA_SIZE=64 CONFIG_NET_BUF_USER_DATA_SIZE=1 #CONFIG_LOG=n CONFIG_SERIAL=n
