- This fork is based on the fork by @afloanalytics that fixed iOS and Android issues with newer versions
- This fork disables
alternativeAdvertisingNameEnabled
on iOS to allow legacy DFU, see https://github.com/NordicSemiconductor/IOS-DFU-Library/blob/main/iOSDFULibrary/Classes/Implementation/DFUServiceInitiator.swift#L228-L248 - Android-DFU-Library is updated to 2.1.0
This Cordova Plugin is a Wrapper to use Nordic Semiconductor's Device Firmware Update (DFU) service to update a Bluetooth LE device.
It currently uses iOSDFULibrary (Version 4.8.0
) on iOS and
Android-DFU-Library (Default-Version 1.11.0
) on Android.
This and other Open-Source Cordova Plugins are developed in my free time. To help ensure this plugin is kept updated, new features are added and bugfixes are implemented quickly, please donate a couple of dollars (or a little more if you can stretch) as this will help me to afford to dedicate time to its maintenance. Please consider donating if you're using this plugin in an app that makes you money, if you're being paid to make the app, if you're asking for new features or priority bug fixes.
Table of Content
This Plugin is developed in Swift and automaticaly adds the Plugin to Support Swift.
- ANDROID_NORDIC_VERSION - Version of
no.nordicsemi.android:dfu
/ default to1.11.0
The plugin is available via a global variable named window.DfuUpdate
.
A TypeScript definition is included out of the Box. You can import it like this:
import DfuUpdate from 'cordova-plugin-dfu-update';
The list of available methods for this plugin is described below.
Start the Firmware-Update proccess
- An Object, which has the following Values:
- fileUrl (string) - A string that is the path to the file to use in the update. It can be either in either
cdvfile://
orfile://
format. - deviceId (string) - 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).
- packetReceiptNotificationsValue (number) - See here (Default to 10)
- fileUrl (string) - A string that is the path to the file to use in the update. It can be either in either
window.DfuUpdate.updateFirmware(function(success) {
console.log(success);
}, function (error) {
console.error(error);
}, {
fileUrl: 'fileUrl',
deviceId: 'deviceId'
});
The full Changelog is available here