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

Migrate bootloader from SDK 11 to SDK 13

Hello,

I have an application based on SDK 11 and Softdevice v2.0.0. Also there is a legacy bootloader from SDK 11 for performing DFU.

I am wondering whether it is possible to perform DFU of my devices in the field with old DFU and update all components of my firmware? I have ported the application to SDK 13 and validated that it works as expected with SD v4.0.2.

But I have no idea how to prepare zip-package for DFU in order to update SD + APP + BL. Should I pack new Softdevice and application with old DFU or this pack should be splited into pieces?

Now legacy bootloader occupies 16K of flash and resides at 0x7A000. If I am not mistaken in order to move to the new secure bootloader I should have reserved 24K. But it is not possible to use J-link to reprogram the devices now. Is it possible to perform DFU to modern firmware with legacy bootloader?

Thank you.

Parents
  • Hi Alex,

    Yes, it is possible, but it is not failsafe, see this answer.

    Best regards

    Bjørn

  • Hello Bjørn, Thank you for your response. Am I right that I should do following steps:

    • apply dfu_dual_bank_with_fix.c from this answer to the legacy bootloader which is based on SDK 11

    • apply that fix by performing DFU of bootloader only

    • build custom bootloader by using provided files [here] (devzone.nordicsemi.com/.../), change its address from 0x7A000 to 0x78000 in order to be able to upload the new secure bootloader

    • apply that custom bootloader to my devices

    • prepare zip package with new SD v 4.0.2 + APP + secure BL

    Is it correct?

Reply
  • Hello Bjørn, Thank you for your response. Am I right that I should do following steps:

    • apply dfu_dual_bank_with_fix.c from this answer to the legacy bootloader which is based on SDK 11

    • apply that fix by performing DFU of bootloader only

    • build custom bootloader by using provided files [here] (devzone.nordicsemi.com/.../), change its address from 0x7A000 to 0x78000 in order to be able to upload the new secure bootloader

    • apply that custom bootloader to my devices

    • prepare zip package with new SD v 4.0.2 + APP + secure BL

    Is it correct?

Children
No Data