We follow the OTA guide: Add DFU support to your application
Add below code in main.c:
Our prj.conf:
We follow the OTA guide: Add DFU support to your application
Add below code in main.c:
Our prj.conf:
Hi Jimmy,
Have you tried to change the content of the application and rebuild ? Can be just as little as the text in the log. As far as I know if the hash of the image binary matches with the current image(s) on the chip it will reject the image upload.
I have confirmed the main.c is changed before rebuild, and i can see the hash is diffrent from Device Manage app:
Hi Jimmy,
If you click on CONFIRM, do you see slot 1 being swapped ?
I clicked the "CONFIRM", and then "SEND RESET COMMAND", the result is the same
Hi Jimmy,
I noticed that in the log MCUBoot was responding with "NOT SUPPORTED" it seems that there were an issue with confirming the image.
Have you tested without changing the signing key ? Have you managed to do DFU update with MCUBoot before ?
As far as I know CONFIG_MCUBOOT_SIGNATURE_KEY_FILE is obsoleted and you should use CONFIG_BOOT_SIGNATURE_KEY_FILE in the mcuboot configuration only (either by the mcuboot prj.conf of by the overlay in child_image\mcuboot.conf).
But I think it's the best to not changing the key and use the default key for testing first.
Please try to follow the guide here. Please use option "Confirm only" when you test.
I delete the below config:
app prj.conf:
I use the new version of Device manage app, it show "Image not confirmed".
So, why my image cannot confirmed ?
I use the new version of Device manage app, it show "Image not confirmed".
So, why my image cannot confirmed ?
Hi Jimmy,
I was just following the guide again and it worked just fine.
Could you try to test the following project. It's made with NCS v2.2.0 but it should work with earlier SDK as well.
I also attached here the two bin files that you can use to test. By using app_update3, the device should advertise as "Zephyr Heartrate 3" instead of "Zephyr Heartrate 2" and you can use the other file to update back to "Zephyr Heartrate 2".
The hex and bin file was built for nRF52832 but it would work with nRF52833 as well.
I have try both your bin file and build with source code. It stuck when i clieck start uploard:
Hi Jimmy,
Could you try:
Flash merged.hex
Use the phone to DFU update app_update3.bin ?
How did you get it to advertise Zephyr heartrate 3 ?
I tryed two way:
1. As you said, flash merged.hex, update app_update3.bin;
2. Build the source code you provide(Base on ncs2.0, 52833dk), flash, change ble name, rebuild, update;
Both two method are stuck when i clieck start upload buttion in Device Manage app.
It's pretty strange that it didn't work for you.
I noticed that you have the device advertised as "Zephyr Heartrate 3" . Was that because you modified the BLE name and flash it manually ?
Could you try to do DFU with nRF Connect and check the log ?
Also if you build it for the nRF52833 DK, please check the UART log on the board as well (The UART log on the merged.hex file won't work because I built it for nRF52832 DK)