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

Update archive in external memory

Hello,

I wish to store update zip file for nRF52 in an external memory (not in an internal reserved slot), is that possible ?

Parents
  • Hello,

    It is certainly possible and should not be much different from storing it in internal flash. However, the SD_MBR_COMMAND_COPY_BL and SD_MBR_COMMAND_COPY_SD command will only work with source address located in internal memory so the bootloader example will have to be modified.

  • Unfortunately we don't have that at the moment, but have some comments that you can consider:

    • Implement a flash API for your external memory to replace pstorage in dfu_xxx_bank.c, preferably with the same input arguments as the pstorage API.
    • Bootloader will have to be loaded in internal flash to enable "fail-safe" update using the SD_MBR_COMMAND_COPY_BL command.
    • For SD update you could implement a copyback routine (using your flash API) to be executed if the (bootloader_dfu_sd_in_progress()) statement is true on startup assuming you want to avoid using internal flash.
    • Integrity of images in ext. memory should be verified using CRC before overwriting existing FW.

    This is what came to mind so I may have missed something, but just let me know if you run into any problems.

Reply
  • Unfortunately we don't have that at the moment, but have some comments that you can consider:

    • Implement a flash API for your external memory to replace pstorage in dfu_xxx_bank.c, preferably with the same input arguments as the pstorage API.
    • Bootloader will have to be loaded in internal flash to enable "fail-safe" update using the SD_MBR_COMMAND_COPY_BL command.
    • For SD update you could implement a copyback routine (using your flash API) to be executed if the (bootloader_dfu_sd_in_progress()) statement is true on startup assuming you want to avoid using internal flash.
    • Integrity of images in ext. memory should be verified using CRC before overwriting existing FW.

    This is what came to mind so I may have missed something, but just let me know if you run into any problems.

Children
No Data
Related