OTA DFU with Seeed XIAO Sense

New to the XIAO Sense but I’ve used the nRF52840 in the past. Has anyone gotten the OTA DFU to work? After setting up, I’ve found the example that puts the XIAO sense into OTA DFU mode. How do you load a new image from there? With the nordic development kit, I was able to generate files and zip to perform DFU all in segger. Arduino is also pretty new to me.
Thanks

1 Like

I was wondering the same. Have you made any progress on getting this to work?
Also, can you point me to the example to put it into OTA DFU mode?
You might be able to use MCU Manager. I think it’s part of the Nordic tools in nRF Connect for Desktop.
Ultimately I want to do OTA DFU over BLE using the web MCU Manager: GitHub - boogie/mcumgr-web: MCU Manager for browsers

Hi all,
from my experience typically the OTA DFU can be performed using the DFU application from NORDIC.

You have to produce a zip file using the nrfutil utility and also you have to flash a bootloader builded with a private key (of course after you have generated it). Using this key and nrfutil through this command (softdevice s140 version 7.2.0 require a Firmware ID equal to 0x100 as parameter --sd-req):

nrfutil pkg generate --hw-version 52 --application-version XXX --application <your_hex_file>.hex --sd-req 0x100 --key-file <your_private_key.key> <name_of_dfu_package_file>.zip

the system will produce a zip file that can be uploaded through the DFU app to the device.

Note that if the application version XXX has to be equal or greater then the previously loaded into the device otherwise you will be unable to perform the upgrade.

A tutorial about all the process is at following link:

https://devzone.nordicsemi.com/guides/short-range-guides/b/software-development-kit/posts/getting-started-with-nordics-secure-dfu-bootloader

So the flow may be from Arduino, when the bootloader was previusly flashed inside the device, after compilation, get the hex file, build the zip pakage and then make the OTA DFU process by the NORDIC application. Just to see if the Arduino programming delete also the bootloader or not, this is to check.

Best Regards
Fire

1 Like