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

How to generate a Bootloader + Softdevice + Application zip for OTA updates/DFU.

Hello,

For OTA updates or DFU I want to create a zip file that contains the Bootloader, Softdevice, and Application into one, But when I generate this through nrfutil.exe and update it with the nRF Toolbox I only see that the application is updating. When updating the screen of the application starts at 2/2, so I assume that the bootloader and softdevice are skipped.

For more information I use the nRF52832 chip and I use the SDK 15.0.0. version (which uses the s132_nrf52_6.0.0_softdevice). The code I use to generate the zip is:

nrfutil pkg generate new_DFU.zip --hw-version 52 --sd-req 0xA8 --sd-id 0xA8 --softdevice softdevice.hex --bootloader-version 0 --bootloader bootloader.hex --key-file key_node.pem --application-version 0 --application application.hex
What am I missing? What am I doing wrong?

Parents
  • Hi, 

    Which softdevice do you have on the device before the DFU update ? 

    After the DFU update do you have the application running as it should and do you have the new softdevice be updated ? 

    I am not aware of that the nRF Toolbox would skip DFU update for softdevice and bootloader. 

    If you only create the SD+BL .zip package would the DFU update succeed ?

Reply
  • Hi, 

    Which softdevice do you have on the device before the DFU update ? 

    After the DFU update do you have the application running as it should and do you have the new softdevice be updated ? 

    I am not aware of that the nRF Toolbox would skip DFU update for softdevice and bootloader. 

    If you only create the SD+BL .zip package would the DFU update succeed ?

Children
  • Both softdevices are the same (s132_nrf52_6.0.0_softdevice.hex), the reason why I re-update it is to have use one zip that contains de bootloader and the application. 

    After the DFU I only notice that the application is changed, while the bootloader stays on the old one. I can't say anything about the softdevice as I update it to the same version.

    I don't see it updating on the screen, and I assume that the (1/2) indicator is for the bootloader/softdevice update. Unless the update is really fast in which I cannot see it.

    haven't tested SD+BL.zip jet, I'll try that one.

  • If the softdevice is the same  id, most likely it will be skipped. 
    But I don't see the point of updating SD+APP when the SD is not changed. If it's the case you only do APP update.

    You only include the SD if it's a different Softdevice. 

  • I want to have one zip containing the BL + APP, but this isn't possible. A zip containing BL + SD + APP is possible. So my reasoning is if I use the combined zip with BL + SD + APP to be able to update the BL and APP in one zip.

  • Under the hood it will be the same that the process will need to be done in 2 phases. One is to update SD+BL (or BL) and after that is to update the Application.

    But please clarify what exactly happened after  you do the update, would the new application running or not ? 

    Please first try to update SD+BL in one .zip and then update APP after that in another .zip to separate the process make it easier to debug. 

  • sorry for my late response, I couldn't do the testing due that some colleagues were on holiday.

    It seems that the SD+BL zip doesn't seem to update due to a FW version failure. I am currently using this line to generate the zip:

    nrfutil pkg generate SmartClip_SB.zip --hw-version 52 --sd-req 0xA8 --sd-id 0xA8 --softdevice softdevice.hex --bootloader-version 0 --bootloader bootloader.hex --key-file key_node.pem
    Can I only update the SD if I have a newer version? Is there a way to evade this?

    All I want is a way to update the BL + APP in one zip.

Related