This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

DFU successful but nRF boots with old Firmware

Hi,

My target is to update the application firmware running on the nRF module using serial wire connection.

I currently do experience the issue, that DFU process completes successfully, but nRF boots with previous firmware.

After triggering the same update again, nRF does not respond and the DFU process is aborted. Now the nRF boots with the correct firmware.

How is that possible?

To visualize the process:

1) nRF running with application firmware V1.0

2) Trigger update to firmware V2.0

3) Update runs through successfully, nRF reboots with V1.0 though

4) Again trigger update to firmware V2.0

5) nRF does not respond, DFU process aborted

6) nRF reboots with V2.0

We do not have control about the content of any of the firmware parts running on nRF, we just take care of the update process.

What could be the reason for this behavior and how can it be solved, so that nRF boots with the correct firmware after the first update attempt?

Thanks.

Parents
  • Hi , 

     

    Could you clarify you are updating the firmware using UART or SWD (Serial Wire Debug) interface ? 

     

    How do you switch to DFU mode ? 

     

    Which SDK, softdevice, hardware are you testing with ? Could you try with stock SDK bootloader and try to update an example in the SDK ? 

     

    Also what you can do is to read hex file out after your first DFU update (that fails) to see what in the flash. 

     

  • Thanks for your feedback.

    To answer your questions:

    "Could you clarify you are updating the firmware using UART or SWD"

    --> I am using UART for firmware update. 

    "How do you switch to DFU mode ?"

    --> An application is already running on nRF module which takes care that on a certain command, nRF switches into DFU mode

    "Which SDK, softdevice, hardware are you testing with ?"

    --> It's the NINA module from uBlox, we are flashing "s132_nrf52_5.0.0_softdevice.hex" on the device

    "Also what you can do is to read hex file out after your first DFU update (that fails) to see what in the flash. "

    --> The point is, its not about that it fails. The focus is more why is the DFU successul but nRF reboots after DFU with previous FW and not with the one I updated to?

  • Hi, 

     

    We need to check the flash to see why the DFU was successful but the original firmware didn't get replaced by the new image. 

    I would suggest you to test with the unmodified bootloader and test with very simple application such as the blinky example and see if you can replace the firmware or not. 

Reply Children
No Data
Related