Sir-Branch / nrf52-desktop-dfu

A library and command-line utility to perform firmware upgrades on Nordic NRF52 devices.
MIT License
3 stars 1 forks source link

NRF52 Desktop DFU

A cross-platform library to perform device firmware upgrades (DFU) for Nordic's NRF52 devices. The API is straightforward and agnostic to the BLE implementation, giving developers a quick way to carry out a DFU from a desktop environment.

Code Structure

Build Instructions

We have specific scripts to compile the library on each platform. All binaries will be placed in the bin folder.

Windows

Linux

macOS

Usage of the DFU application.

To perform a DFU with the bundled application that we developed, the following information and files are needed:

Usage: dfu_app.exe <mac_address> <dfu_zip_path>

Windows Example

Linux Example

MacOS Example

Important Notes

Functionality

macOS - MAC Addresses and UUIDs

In an effort to protect privacy, CoreBluetooth (the underlying macOS Bluetooth API) does not expose the MAC address of a device to a user. Instead, it randomizes the MAC address to a UUID (Universal Unique Identifier) that is exposed to the user. Instead, you will need to scan for devices and find the UUID of the desired device to connect to.

License

All components within this project that have not been bundled from external creators, are licensed under the terms of the MIT Licence.