I am adding a bootloader to my project for OTA DFU.
App core and net core update was successful in the 1st stage bootloader configuration,
I'm configuring a second stage bootloader to update the bootloader.
My settings are below.
<prj.conf>
# BOOTLOADER CONFIG_SECURE_BOOT=y CONFIG_BUILD_S1_VARIANT=y CONFIG_BOOTLOADER_MCUBOOT=y # MEM CONFIG_MAIN_STACK_SIZE=4096 CONFIG_HEAP_MEM_POOL_SIZE=4096 CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=4096 # PERIPHERAL CONFIG_GPIO=y # DEVICE CONFIG_BT=y CONFIG_BT_PERIPHERAL=y CONFIG_BT_DEVICE_NAME="my_device" CONFIG_BT_DEVICE_APPEARANCE=3396 CONFIG_BT_MAX_CONN=1 CONFIG_BT_MAX_PAIRED=1 # LESC CONFIG_BT_SMP=y CONFIG_BT_SMP_SC_ONLY=y CONFIG_BT_TINYCRYPT_ECC=y # BONDING CONFIG_BT_SETTINGS=y CONFIG_FLASH=y CONFIG_FLASH_PAGE_LAYOUT=y CONFIG_FLASH_MAP=y CONFIG_NVS=y CONFIG_SETTINGS=y # WHITELIST CONFIG_BT_FILTER_ACCEPT_LIST=y # MTU CONFIG_BT_BUF_ACL_RX_SIZE=502 CONFIG_BT_ATT_PREPARE_COUNT=2 CONFIG_BT_L2CAP_TX_BUF_COUNT=10 CONFIG_BT_L2CAP_TX_MTU=498 CONFIG_BT_L2CAP_DYNAMIC_CHANNEL=y CONFIG_BT_CONN_TX_MAX=10 CONFIG_BT_BUF_ACL_TX_COUNT=10 CONFIG_BT_BUF_ACL_TX_SIZE=502 # DFU CONFIG_MCUMGR=y CONFIG_MCUMGR_CMD_IMG_MGMT=y CONFIG_MCUMGR_CMD_OS_MGMT=y CONFIG_MCUMGR_SMP_BT=y CONFIG_MCUMGR_SMP_BT_AUTHEN=n CONFIG_MCUMGR_SMP_BT_CONN_PARAM_CONTROL=y CONFIG_MCUMGR_SMP_REASSEMBLY_BT=y CONFIG_MCUMGR_BUF_SIZE=2475 CONFIG_OS_MGMT_MCUMGR_PARAMS=y CONFIG_MCUMGR_SMP_WORKQUEUE_STACK_SIZE=4608 CONFIG_MCUMGR_GRP_ZEPHYR_BASIC=y CONFIG_MCUMGR_GRP_BASIC_CMD_STORAGE_ERASE=y # CRYPTO CONFIG_NRF_SECURITY=y CONFIG_MBEDTLS_PSA_CRYPTO_C=y CONFIG_MBEDTLS_ENABLE_HEAP=y CONFIG_MBEDTLS_HEAP_SIZE=8192 CONFIG_PSA_CRYPTO_DRIVER_OBERON=n CONFIG_PSA_CRYPTO_DRIVER_CC3XX=y # LOG CONFIG_LOG=y CONFIG_LOG_BUFFER_SIZE=8192 CONFIG_LOG_MODE_MINIMAL=n CONFIG_LOG_DEFAULT_LEVEL=3 CONFIG_USE_SEGGER_RTT=y CONFIG_LOG_BACKEND_RTT=y CONFIG_LOG_BACKEND_UART=n CONFIG_LOG_BACKEND_SHOW_COLOR=n # math.h CONFIG_NEWLIB_LIBC=y
<hci_rpmsg.conf>
# MTU CONFIG_BT_CTLR_DATA_LENGTH_MAX=251 CONFIG_BT_BUF_ACL_RX_SIZE=502 CONFIG_BT_BUF_ACL_TX_SIZE=502 CONFIG_BT_MAX_CONN=2 # LOG CONFIG_LOG=y CONFIG_LOG_MODE_MINIMAL=n CONFIG_LOG_DEFAULT_LEVEL=3 CONFIG_USE_SEGGER_RTT=y CONFIG_LOG_BACKEND_RTT=y CONFIG_LOG_BACKEND_UART=n CONFIG_LOG_BACKEND_SHOW_COLOR=n
<mcuboot.conf>
CONFIG_MCUBOOT_DOWNGRADE_PREVENTION=y CONFIG_FW_INFO_FIRMWARE_VERSION=1 # LOG CONFIG_LOG=y CONFIG_LOG_DEFAULT_LEVEL=3
The build completes successfully, and signed_by_mcuboot_and_b0_s1_image_update.bin is created.
OTA DFU using the above file succeeds without error.
But looking at the mcuboot log it fails as below.
The signing key configuration is using the one inside ncs.
Is there something I'm missing?