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

The method to update a firmware over the air

We would like to develop OTA firmware update with nRF52840. 

In the development phase, we have been using "Thingy: 91" and place the firmware onto the MCUs of nRF9160 and nRF52840. 

Using the BLE DFU protocol, we would like to update the firmware on both module, BLE and LTE over the air.

We would like to know the feasibility to achieve updating firmware on both modules with DFU protocol.

We also heard that in order to develop the OTA update function, Zephyr project should be referred instead the nRF5 SDK since Nordic shifts the SDK to Zephyr.  

https://docs.zephyrproject.org/latest/guides/device_mgmt/dfu.html

https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.3.0%2Flib_bootloader_dfu_process.html 

But the nRF Connect SDK includes a fork of the Zephyr Project. 

Could you please advise me? 

  • Hi,

     

    Our support for Zephyr (and NCS) on nRF52-series devices are limited to the nrf_desktop at this time, so I would recommend that you contact the zephyr community to ask about how mcuboot + bluetooth dfu works in this environment.

    But the nRF Connect SDK includes a fork of the Zephyr Project. 

    This is correct, and this is the reason why we're always a "bit behind" upstream master. We fork the zephyr-rtos project, and our plan is to always try to upstream (contribute back) changes that are relevant to zephyr in general, and we continuously sync up with the upstream repository. The differences should be minimal, but there are some, like tying in the "nrf" repo into the source tree.  

     

    Kind regards,

    Håkon

Related