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

Can nRF52832 DFU upgrade only a part of firmware?

I tried to upgrade only a part of firmware of application, not all. I used buttonless DFU and found that the new code was located at bank1 and not moved at the specified address in bank0. How can I solve this problem? Thanks!

  • Hi.

    I'm a bit unsure what you mean by "upgrade only a part of firmware of application".

    You cannot upgrade only a part of the Application. What I mean by this is that you if you do some modification in your application, you cannot upgrade only that part, you have to upgrade the whole application.

    When the new code is located at Bank1, it is because it awaits validation. And if it does not move to Bank0, then it was not validated, and the DFU failed.

    So to summarize: If you do some modifications in your application and wish to upgrade it, you have to "load the whole new application", not just the part you modified.

    Best regards,

    Andreas

  • Thank you for your reply!

    But can I upgrade partially by modifying the example of bootloader? And what is the reason that the validation failed? Is it because the firmware is incomplete? Thanks again! 

  • Hi.

    ssltotal said:
    But can I upgrade partially by modifying the example of bootloader?

     No, same reason applies for the Bootloader as for the Application

    ssltotal said:
    And what is the reason that the validation failed? Is it because the firmware is incomplete?

    There could be several diffrent reasons for why the validation failed.

    ssltotal said:
    Is it because the firmware is incomplete?

     What do you mean by this?

    To repeat myself: You cannot do DFU with a "part" of either the Application, Bootloader, or SoftDevice.

    Best regards,

    Andreas

Related