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

Over-the-air DFU requires two uploads (SDK12.0.0 + S132 3.0.0)

We made a version of bootloader_secure for our own purposes. The problem is now that application must be uploaded twice into the device (nRF52) before it really gets updated. I guess it is because of dual banking and for some reason, the bank is not changed when application is uploaded.

So I am asking if somebody knows where in the bootloader_secure is the code fragment that makes the bank changing, and what possibly goes wrong there? On the other hand, I don't find mentions of dual banking from the code (quickly peeking), so could there be some other reason for that behavior?

Parents
  • Hi Jarmo,

    The bootloader_secure is at production level, it's tested properly. Could you try to test again with the unmodified bootloader debug version and the provided .zip package in \examples\dfu\ble_dfu_send_hex\test_images_update_nrf52 ?

    How did you flash your application for the first time, would it work when u do the first DFU or also only works on the second trial ?

    nrf_bootloader_app_start() won't take dualbank or single bank into consideration, it simply start the application at MAIN_APPLICATION_START_ADDR which is the address right after the softdevice.

Reply
  • Hi Jarmo,

    The bootloader_secure is at production level, it's tested properly. Could you try to test again with the unmodified bootloader debug version and the provided .zip package in \examples\dfu\ble_dfu_send_hex\test_images_update_nrf52 ?

    How did you flash your application for the first time, would it work when u do the first DFU or also only works on the second trial ?

    nrf_bootloader_app_start() won't take dualbank or single bank into consideration, it simply start the application at MAIN_APPLICATION_START_ADDR which is the address right after the softdevice.

Children
No Data
Related