NRF BLE DFU (Core)
The core Nordic DFU over BLE library in pure Dart. This package helps enable firmware updates of BLE devices over Bluetooth Low Energy (BLE) in a platform-independent way.
It provides a decoupled implementation of the Nordic DFU protocol (CRC32 calculations, data packeting, command control states) without depending on the Flutter SDK.
If you are building a Flutter application with ready-to-use widgets and plugin bindings (like flutter_blue_plus and shared_preferences), please use the flutter_nrf_ble_dfu package instead.
Getting Started
To use this core library, you must provide your own platform adapters implementing the required interfaces:
DfuBleAdapter,DfuBleDevice,DfuBleCharacteristic,DfuBleServiceDfuStorageAdapterDfuPathAdapterDfuDatabaseAdapter
Then initialize the engine:
import 'package:nrf_ble_dfu/nrf_ble_dfu.dart';
void main() {
NrfBleDfu().initialize(
bleAdapter: MyBleAdapter(),
storageAdapter: MyStorageAdapter(),
pathAdapter: MyPathAdapter(),
databaseAdapter: MyDatabaseAdapter(),
);
}