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

Version Number meaning when generating Bootloader Settings

Hi there, I could not find any documentation about the meaning of the version numbers, when creating bootloader settings:

nrfutil settings generate --family NRF52840 --application app.hex --application-version 3 --bootloader-version 2 --bl-settings-version 1 settings.hex

Are the '--application-version', '--bootloader-version' & '--bl-settings-version' numbers supposed to be incremented and managed by me for my own reference? Or do they mean specific things within the code? Should they change or stay the same for each update?

When trying to generate settings with '--bl-settings-version 2', i get the following error:

pc_ble_driver_py.exceptions.NordicSemiException: Unknown bootloader settings version
Failed to execute script __main__

Could you please explain what the function of each of these version numbers are, and if they need to change with each update

(I am using SDK 15.2, nRF52840, s140)

Thanks!

  • Hi Sammy, 

    Except for bootloader setting version "--bl-settings-version" , the other versions are application defines. The rule is that application version of the new image has to be >= the current application , and the bootloader version of the new image has to be > the current bootloader version. It's discussed a little bit here in my blog, at step C. 

    Regarding bootloader setting version, you may find some more information by typing: "nrfutil settings generate --help". It's not for the application to choose but mount to the SDK.

    Basically from SDK v15.3 we added a bootloader setting back up page. If you use SDK v15.2 or earlier, you should use --bl-settings-version = 1. 

Related