Hello, I'm working with NCS 2.6.0 in Visual Studio Code
I already have a private key generated by using imgtool.py, and I put the .pem file in C:\user\nordic\ncs\user_apps\_keys folder.
I also have a mcuboot.conf in project/child_image folder.
What I'm trying to do is changing CONFIG_BT_DEVICE_NAME or CONFIG_BT_DIS_SW_REV_STR, and update the firmware over BLE.
But when I try to update new firmware to device, only showing image already pending on Device Manager APP, I didn't see any changes on BLE name or REV number.
Looking into RTT log, I found "Swap type: test" but even if I reset the device, the firmware doesn't update.
I had review lession 8 on DevAcademy, adding CONFIG_BOOTLOADER_MCUBOOT=y and CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y in prj.conf.
Also create a child_image folder, what else should I do to get BLE OTA work in signed firmware?
Please give me any suggestion for fixing these problems. Thanks in advanced.
Here's log from RTT logger
Connected 68:1B:FD:D3:DA:38 (random) I: Image index: 0, Swap type: none I: Image index: 0, Swap type: none I: Image index: 0, Swap type: none I: raw 6130 ~ 897 mV => 1794 mV [0:03:30.060]: 1794 mV; 0 pptt I: Image index: 0, Swap type: none I: Image index: 0, Swap type: test *** Booting nRF Connect SDK d96769faceca *** I: Setup AIN0 got 0 I: Battery setup: 0 1 I: raw 6179 ~ 905 mV => 1810 mV [0:00:00.050]: 1810 mV; 0 pptt -------------------- whoamI. 6a -------------------- rst. 0 Set up lsm6dsl_int1 at gpio@50000000 pin 19 I: 2 Sectors of 4096 bytes I: alloc wra: 0, fe8 I: data wra: 0, 0 I: SoftDevice Controller build revision: I: 36 f0 e5 0e 87 68 48 fb |6....hH. I: 02 fd 9f 82 cc 32 e5 7b |.....2.{ I: 91 b1 5c ed |..\. I: HW Platform: Nordic Semiconductor (0x0002) I: HW Variant: nRF52x (0x0002) I: Firmware: Standard Bluetooth controller (0x00) Version 54.58864 Build 1214809870 I: No ID address. App must call settings_load() Bluetooth initialized I: Identity: D1:4C:BC:53:9C:85 (random) I: HCI: version 5.4 (0x0d) revision 0x118f, manufacturer 0x0059 I: LMP: version 5.4 (0x0d) subver 0x118f Advertising successfully started, advertising as Jumpad9C85 Connected 61:10:4D:D5:46:A0 (random) I: Image index: 0, Swap type: test
Here's the mcuboot.conf file:
CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x0A000 CONFIG_BOOT_SIGNATURE_KEY_FILE="C:/user/nordic/ncs/user_apps/_keys/240522_priv.pem" CONFIG_BOOT_SIGNATURE_TYPE_RSA=n CONFIG_BOOT_SIGNATURE_TYPE_ECDSA_P256=y
Here's my prj.conf file:
# # Copyright (c) 2019 Nordic Semiconductor ASA # # SPDX-License-Identifier: LicenseRef-Nordic-5-Clause # CONFIG_NCS_SAMPLES_DEFAULTS=y CONFIG_BT=y CONFIG_BT_DEBUG_LOG=y CONFIG_BT_MAX_CONN=2 CONFIG_BT_MAX_PAIRED=2 CONFIG_BT_SMP=y CONFIG_BT_L2CAP_TX_BUF_COUNT=5 CONFIG_BT_PERIPHERAL=y CONFIG_BT_DEVICE_NAME="Jumpad" CONFIG_BT_DEVICE_APPEARANCE=961 # Enable the NUS service CONFIG_BT_NUS=y CONFIG_BT_BAS=y CONFIG_BT_HIDS=y CONFIG_BT_HIDS_MAX_CLIENT_COUNT=1 CONFIG_BT_HIDS_DEFAULT_PERM_RW_ENCRYPT=y CONFIG_BT_GATT_UUID16_POOL_SIZE=40 CONFIG_BT_GATT_CHRC_POOL_SIZE=20 CONFIG_BT_CONN_CTX=y CONFIG_BT_DIS=y CONFIG_BT_DIS_PNP=y # CONFIG_BT_DIS_MANUF="NordicSemiconductor" CONFIG_BT_DIS_PNP_VID_SRC=2 CONFIG_BT_DIS_PNP_VID=0x1915 CONFIG_BT_DIS_PNP_PID=0xEEEF CONFIG_BT_DIS_PNP_VER=0x0100 CONFIG_BT_DIS_MODEL="JP01" CONFIG_BT_DIS_MANUF="Ucare" CONFIG_BT_DIS_SERIAL_NUMBER=y CONFIG_BT_DIS_FW_REV=y CONFIG_BT_DIS_HW_REV=y CONFIG_BT_DIS_SW_REV=y CONFIG_BT_DIS_SERIAL_NUMBER_STR="1" CONFIG_BT_DIS_FW_REV_STR="NCS2.6.0" CONFIG_BT_DIS_SW_REV_STR="0.0.1" CONFIG_BT_DIS_SETTINGS=y CONFIG_SETTINGS_RUNTIME=y # CONFIG_SETTINGS_NONE=y CONFIG_BT_SETTINGS=y CONFIG_FLASH=y CONFIG_FLASH_PAGE_LAYOUT=y CONFIG_FLASH_MAP=y CONFIG_NVS=y CONFIG_SETTINGS=y CONFIG_DK_LIBRARY=y CONFIG_NFC_OOB_PAIRING=n # This example requires more stack CONFIG_MAIN_STACK_SIZE=4096 # # Config logger # CONFIG_LOG=y # CONFIG_USE_SEGGER_RTT=y # CONFIG_LOG_BACKEND_RTT=y # CONFIG_LOG_BACKEND_UART=n # CONFIG_LOG_PRINTK=y CONFIG_ASSERT=y # Enable Gsensor CONFIG_STDOUT_CONSOLE=y CONFIG_I2C=y CONFIG_SENSOR=y CONFIG_LSM6DSL_TRIGGER_GLOBAL_THREAD=y CONFIG_CBPRINTF_FP_SUPPORT=y # Enable ADC CONFIG_ADC=y # Enable Watchdog CONFIG_WATCHDOG=y # Enable MCUboot #Enable MCUBOOT bootloader build in the application CONFIG_BOOTLOADER_MCUBOOT=y #Include MCUMGR and the dependencies in the build CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y