Bootloader for OTA Updates

I’m using the Adafruit Feather nRF52840 Express (Product ID 4062) with the Arduino IDE (Adafruit nRF52 core) and trying to implement over-the-air firmware updates using a Blues Notecard and Notehub.

When I export compiled binaries from Arduino I receive .hex and .elf files, which I then convert to .bin and package using the Blues binpack tool as required for the Notehub OTA workflow.

However, when attempting the update, the DFU update fails on the device.

My question is about bootloader compatibility:
Does the default UF2 bootloader on the Feather nRF52840 Express support firmware updates delivered through an external OTA system like Blues Notehub, or would this require a different bootloader or a custom firmware update implementation in the application?

Just trying to confirm whether the standard Feather bootloader supports this type of OTA pipeline, or if my approach is incompatible with the default bootloader.

Thank you!

1 Like

Hi @jbro and welcome to the Blues community!

Did you by any chance see this thread? At first glance it may help unblock you:

If not, just let me know.

Thanks,
Rob

This page seems to be talking about using the UF2 bootloader, so it seems safe to say your approach could work:

Also this page, linked from there, had some potentially helpful info on it, but now it’s 404. Maybe Blues can resurrect it?

https://github.com/blues/note-outboard-dfu/blob/main/nrf52840/blinky/Arduino

I think that 404 page is now here - note-outboard-dfu/nrf52840/blinky/arduino at main · blues/note-outboard-dfu · GitHub