cordova-plugin-nordic-update
v0.1.0
Published
Use Nordic Semiconductor's Device Firmware Update (DFU) service to update a Bluetooth LE device
Downloads
38
Maintainers
Readme
Cordova Nordic DFU plugin
This plugin allows you to use the Nordic DFU service on your BLE devices to update the firmware. See the Nordic documentation for more details.
Supported
- Android: fully supported
- iOS: fully supported
Additionally, the device to update must follow the rules as defined in the DFU documentation.
Requirements
- Cordova: at least version 9
- Android: Cordova-android of at least 8.0.0
Installation
run:
cordova plugin add cordova-plugin-nordic-update
API
The API is available as a global NordicUpdate
object
Start update
NordicUpdate.updateFirmware(function successCallback, [function errorCallback], string fileURL, string deviceIdentifier);
Params:
successCallback
: A function that takes a single argument object. See example later for what this looks like. This will be called multiple times during the update process with different statuses.errorCallback
(not required): A function that takes a single argument. The argument will be an error message or an error object.fileURL
: A string that is the path to the file to use in the update. It can be either in eithercdvfile://
orfile://
format. It must be a Zip file and end with.zip
(iOS library requirement, Android doesn't have this issue)deviceIdentifier
: A string that contains the identifier for the Bluetooth LE device to update. It will either be a MAC address (on Android) or a UUID (on iOS).
Testing
To make it easier to test this plugin, there are two files in the test-files
folder.
- Install the one ending in
.hex
on your nRF52-832 dev board by dragging on dropping it into the board's file system (like you would install any example from the nRF5 SDK). - Put the file ending with
.zip
on your phone in a spot where you know the File URL. - Get the MAC address of the dev board (use nRF Connect and look for a device called "Nordic_Buttonless")
- Use the File URL and MAC address with this plugin.
- It should start the DFU process and report progress to the success callback.
Credits
This plugin was inspired by the work on this plugin fork by @fxe-gear.
Thanks!