Hello, I want to use ble dfu on nordic.
But most examples work with Adroid App, and I need nRFxx transmit dfu to another nordic.
Can you tell me if vag has ready-made examples for this, if not, where to look?
Hello, I want to use ble dfu on nordic.
But most examples work with Adroid App, and I need nRFxx transmit dfu to another nordic.
Can you tell me if vag has ready-made examples for this, if not, where to look?
I have implemented it using GATT client functionality of the SDK from one NRF to the other, but unfortunately it's not a public source code. The protocol is relatively simple, you can look it up in the nrfutil phython code, or also in this C source code which is intended to run on Linux: github.com/.../nrfdfu
We hit the same problem, so we built a cross-platform CLI for it in Go:
github.com/.../ed-nrfdfu
It runs Nordic Secure DFU over BLE straight from a terminal — no phone, no GUI — so it works in scripts and CI. With a Go 1.25+ toolchain:
go install github.com/E-DEVICE/ed-nrfdfu@latest
ed-nrfdfu --mac "AA:BB:CC:DD:EE:FF" --dfuPath firmware.zip
If you'd rather not install Go, prebuilt binaries for Linux and Windows (amd64 and arm64) are attached to the releases, with a SHA256SUMS file.
It's Apache 2.0.
Fair warning: it's a developer aid, not a certified production component. Linux/BlueZ is what we use daily — the macOS and Windows backends are implemented but not yet tested against real hardware, so feedback on those is very welcome.