Our application built for nRF54L05 draws approximately 70 µA on our custom board when entering system ON sleep (idle).
However, when MCUboot is enabled, the same firmware draws approximately 6 mA in system on sleep. In addition to the increased current consumption, MCUboot also causes our motor driver to activate the motor unexpectedly during boot.
When MCUboot is disabled, none of these issues occur:
-
Sleep current remains ~70 µA
-
Motor driver does not activate
-
Application behaves as expected
This suggests that MCUboot is leaving clocks, power domains, or GPIO states enabled before jumping to the application.
Application prj.conf
CONFIG_LOG=n
CONFIG_PRINTK=n
# CONFIG_MPSL_HFCLK_LATENCY=8000
CONFIG_BT=y
CONFIG_BT_PERIPHERAL=y
CONFIG_BT_DEVICE_NAME="IKIN_OTL3"
CONFIG_BT_BAS=y
CONFIG_BT_GATT_AUTO_SEC_REQ=n
CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y
CONFIG_BT_BUF_ACL_RX_SIZE=251
CONFIG_BT_BUF_ACL_TX_SIZE=251
CONFIG_BT_L2CAP_TX_MTU=247
CONFIG_BT_CTLR_DATA_LENGTH_MAX=251
CONFIG_SERIAL=n
CONFIG_GPIO=y
CONFIG_PWM=y
CONFIG_LED=y
CONFIG_LED_PWM=y
CONFIG_ADC=y
CONFIG_I2C=y
CONFIG_FLASH=y
CONFIG_FLASH_MAP=y
CONFIG_ZMS=y
CONFIG_HEAP_MEM_POOL_SIZE=2048
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=4096
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y
CONFIG_POWEROFF=y
CONFIG_SPI_NOR=n
CONFIG_NEWLIB_LIBC=n
CONFIG_NEWLIB_LIBC_FLOAT_PRINTF=n
################################## Optimization ##################################
CONFIG_BT_SMP=n
CONFIG_DK_LIBRARY=n
CONFIG_SPI=n
CONFIG_NCS_BOOT_BANNER=n
CONFIG_BOOT_BANNER=n
CONFIG_BOOT_DELAY=0
CONFIG_SHELL=n
CONFIG_DEBUG=n
CONFIG_ASSERT=n
CONFIG_THREAD_STACK_INFO=n
CONFIG_THREAD_CUSTOM_DATA=n
CONFIG_FPU=n
MCUboot configuration (mcuboot.conf)
# Disable Zephyr logging in MCUboot CONFIG_LOG=n # Disable printk completely CONFIG_PRINTK=n # Disable all consoles CONFIG_CONSOLE=n CONFIG_UART_CONSOLE=n CONFIG_RTT_CONSOLE=n # Disable MCUboot logging CONFIG_MCUBOOT_LOG_LEVEL_OFF=y # Power management CONFIG_PM=y CONFIG_PM_DEVICE=y
Observed behavior
-
Application only (no MCUboot): ~70 µA in system on sleep
-
Application + MCUboot: ~6 mA in system on sleep
-
MCUboot also causes motor driver GPIOs to activate unexpectedly
-
Disabling MCUboot resolves both the power and motor activation issues
I would like clarification on:
-
Whether MCUboot on nRF54L05 is expected to leave clocks, power domains, or GPIO states enabled after chainloading the application
-
Recommended steps to ensure MCUboot exits with the SoC in a clean low-power state
-
Whether this is a known issue with MCUboot on nRF54L devices
regards