nrf connect SDK BLE DFU

I am planning to migrate from nRF5 SDK to nRF connect SDK on nRF52832.

I have a question about BLE-DFU of nrf connect SDK.

1. Is nrf connect SDK support BLE-DFU?

2. Is support dual-bank DFU?

3. Is support allication based DFU?(Do DFU at the same time while running the application)

Parents
  • One of the Nordic Engineers will be able to give you a more detailed answer, but from my experience using nRF Connect SDK (I'm currently on v2.2.0) and the nRF52832:

    1. Yes.  I can do this both using the nRF Connect App, as well as my custom App

    2. If you mean dual image (so, the new image gets transferred into Flash and then the device reboots, and uses the new image whilst the old image remains in flash), then yes.  This is what we are currently doing

    3.  Not sure.  With our application, things appear to halt whilst the DFU is in process, and then it all restarts (the DFU issues a software reset on completion) at the end

    Hope that helps

    Mike

  • Thanks for the answer, Mike. I do not think there is much to add to what you already said. 

    1. Please see this guide for instructions on how to add DFU support to an existing application:  Add DFU support to your application 

    2. In the nRF connect SDK, you cannot update the application "in-place" like you could in the nRF5 SDK as the main application needs to be running to receive the update image.

    MCUBoot does not have a built-in BLE DFU transport like the old bootloader had.

    3. The application will continue to run while you receive the update image, but other application tasks may be delayed or blocked by the DFU process as it is quite resource heavy if you try to upload the image as fast as possible (it involves lots of blocking flash operations). 

    Best regards,

    Vidar

  • Thank you

    Does it mean DFU in parallel in the background of a application?

    additional question.

    I plan to use SoftDevice Controller.
    What size applications can be created?
    example: nRF52832 FLASH: 512KB Apps: 100KB + SoftDevice: 100KB + MCU: 50KB remain:512KB-250KB=262KB
    Updatable Apps size is 262KB-SoftDevice:100KB=162KB?

    And
    Is it possible to create a DFU user transport?

Reply
  • Thank you

    Does it mean DFU in parallel in the background of a application?

    additional question.

    I plan to use SoftDevice Controller.
    What size applications can be created?
    example: nRF52832 FLASH: 512KB Apps: 100KB + SoftDevice: 100KB + MCU: 50KB remain:512KB-250KB=262KB
    Updatable Apps size is 262KB-SoftDevice:100KB=162KB?

    And
    Is it possible to create a DFU user transport?

Children
Related