DFU update with custom application

I am trying to do the dfu update in my custom flutter application like it does in the nrf connect application. My device is correctly being put in bootloader mode and the update is working fine in the nrf connect app. I have tried to use the nordic_dfu package from flutter to update the dfu but I kept getting the error message "[DFU] Buttonless DFU characteristic not found!" when doing start dfu, but the device was correctly in the dfu bootloader mode. After that I have also tried to use mcumgr_flutter package but I am getting the following error every time: "MissingPluginException(No implementation found for method getPlatformVersion on channel mcumgr_flutter/method_channel)" and basically the only solution that I have found for that issue is to clean and get the libraries again and restart the app which have also not worked. Is there another way that I could do the dfu update from my custom application? Or maybe a solution to one of my issues with any of the previous packages that I mentioned I used? Thanks in advance!

  • Hello!

    If your device is based on nRF5 SDK and you are using Legacy DFU (SDK v4.3-11) or Secure DFU (SDK v12-17.x) you should use `nordic_dfu` package. The `mcumgr_flutter` supports SMP protocol, which is used in nRF Connect SDK and Zephyr. The fact that you say, that your device is put to bootlaoder mode suggests that you're using nRF5 SDK, in some version.

    Could you please paste here logs from nRF Connect for Android gathered during successful DFU operation?

Related