DFU flash transport

Hello,

Im working right now on a product which saves the update file (init + app packet) on its Flash in a specified memory section. 

After "uploading" the file in the flash the product get sets in DFU mode from extern. 

My question here: How to adjust the bootloader to do the firmware update with the already saved update file from the flash?

Is it possible to do this without transport layer? Is it easier to write a new transport layer? Are there any examples? 

If its too complicated I still can work with the Serial UART DFU transport layer. Thanks!

Parents
  • Hi,

    Can you elaborate a bit on how the image is stored in flash, and how the "uploading" happens? Do you mean that a separate application firmware is stored in the flash of the device at all times?

    We have multiple protocols using Background DFU, where the image is received over a transport protocol in application (i.e. not running in the bootloader when receiving the image). 

    If you can store the image in the same format, it should be quite simple to modify the bootloader to only enable the new image when this is desired.

    Using the Serial UART transport layer will likely be easier and not require modifications to the bootloader.

    Best regards,
    Jørgen

Reply
  • Hi,

    Can you elaborate a bit on how the image is stored in flash, and how the "uploading" happens? Do you mean that a separate application firmware is stored in the flash of the device at all times?

    We have multiple protocols using Background DFU, where the image is received over a transport protocol in application (i.e. not running in the bootloader when receiving the image). 

    If you can store the image in the same format, it should be quite simple to modify the bootloader to only enable the new image when this is desired.

    Using the Serial UART transport layer will likely be easier and not require modifications to the bootloader.

    Best regards,
    Jørgen

Children
Related