From 834023f79afc13ce43ab77251490d76277cec969 Mon Sep 17 00:00:00 2001 From: Jonathan Salmon Date: Wed, 13 Aug 2025 22:17:10 +0100 Subject: [PATCH] chore: updated to latest dependencies --- lib/ble_midi_device.dart | 10 +++++----- lib/flutter_midi_command_windows.dart | 28 +++++++++++++-------------- pubspec.yaml | 7 ++----- 3 files changed, 20 insertions(+), 25 deletions(-) diff --git a/lib/ble_midi_device.dart b/lib/ble_midi_device.dart index 1944498..eee8737 100644 --- a/lib/ble_midi_device.dart +++ b/lib/ble_midi_device.dart @@ -49,7 +49,7 @@ class BLEMidiDevice extends MidiDevice { } disconnect() { - UniversalBle.setNotifiable(deviceId, _midiService!.uuid, _midiCharacteristic!.uuid, BleInputProperty.disabled); + UniversalBle.unsubscribe(deviceId, _midiService!.uuid, _midiCharacteristic!.uuid); UniversalBle.disconnect(deviceId); } @@ -138,12 +138,12 @@ class BLEMidiDevice extends MidiDevice { _sendBytes(List bytes) async { try { - await UniversalBle.writeValue( + await UniversalBle.write( deviceId, _midiService!.uuid, _midiCharacteristic!.uuid, Uint8List.fromList(bytes), - BleOutputProperty.withoutResponse, + withoutResponse: true, ); } catch (e) { print('WriteError $e'); @@ -162,7 +162,7 @@ class BLEMidiDevice extends MidiDevice { if (_midiService != null) { _midiCharacteristic = _midiService!.characteristics.where((characteristic) => characteristic.uuid.toUpperCase() == MIDI_CHARACTERISTIC_ID).firstOrNull; if (_midiCharacteristic != null) { - var isPaired = await UniversalBle.isPaired(deviceId); + var isPaired = await UniversalBle.isPaired(deviceId) ?? false; if (isPaired) { _startNotify(); @@ -183,7 +183,7 @@ class BLEMidiDevice extends MidiDevice { _startNotify() { try { - UniversalBle.setNotifiable(deviceId, _midiService!.uuid, _midiCharacteristic!.uuid, BleInputProperty.notification); + UniversalBle.subscribeNotifications(deviceId, _midiService!.uuid, _midiCharacteristic!.uuid); } catch (e) { print(e); } diff --git a/lib/flutter_midi_command_windows.dart b/lib/flutter_midi_command_windows.dart index 458f884..1adba2f 100644 --- a/lib/flutter_midi_command_windows.dart +++ b/lib/flutter_midi_command_windows.dart @@ -174,10 +174,10 @@ class FlutterMidiCommandWindows extends MidiCommandPlatform { } }; - UniversalBle.onConnectionChanged = (deviceId, state) { + UniversalBle.onConnectionChange = (deviceId, isConnected, error) { if (_discoveredBLEDevices.containsKey(deviceId)) { - if (state == BleConnectionState.connected) { - _discoveredBLEDevices[deviceId]!.connectionState = state; + if (isConnected) { + _discoveredBLEDevices[deviceId]!.connectionState = BleConnectionState.connected; _setupStreamController.add('deviceConnected'); } else { _discoveredBLEDevices.remove(deviceId); @@ -186,15 +186,15 @@ class FlutterMidiCommandWindows extends MidiCommandPlatform { } }; - UniversalBle.onValueChanged = (deviceId, characteristicId, Uint8List data) { + UniversalBle.onValueChange = (deviceId, characteristicId, Uint8List data) { if (_discoveredBLEDevices.containsKey(deviceId)) { _discoveredBLEDevices[deviceId]!.handleData(data); } }; - UniversalBle.onPairingStateChange = (deviceId, state, msg) { + UniversalBle.onPairingStateChange = (deviceId, isPaired) { if (_discoveredBLEDevices.containsKey(deviceId)) { - _discoveredBLEDevices[deviceId]!.pairingState = state; + _discoveredBLEDevices[deviceId]!.pairingState = isPaired; } }; } @@ -391,26 +391,24 @@ final List partialSysExBuffer = []; void _onMidiData( int hMidiIn, int wMsg, int dwInstance, int dwParam1, int dwParam2) { - // print('midi data $hMidiIn, $wMsg, $dwInstance, $dwParam1, $dwParam2'); - var sw = Stopwatch()..start(); var dev = FlutterMidiCommandWindows().findMidiDeviceForSource(hMidiIn); final midiHdrPointer = Pointer.fromAddress(dwParam1); final midiHdr = midiHdrPointer.ref; switch (wMsg) { - case MIM_OPEN: + case MM_MIM_OPEN: dev?.connected = true; break; - case MIM_CLOSE: + case MM_MIM_CLOSE: dev?.connected = false; break; - case MIM_DATA: + case MM_MIM_DATA: // print("data! $dwParam1 at: $dwParam2"); var data = Uint32List.fromList([dwParam1]).buffer.asUint8List(); dev?.handleData(data, dwParam2); break; - case MIM_LONGDATA: + case MM_MIM_LONGDATA: if ((midiHdr.dwFlags & MHDR_DONE) != 0) { final dataPointer = midiHdr.lpData.cast(); @@ -444,13 +442,13 @@ void _onMidiData( } break; - case MIM_MOREDATA: + case MM_MIM_MOREDATA: print("More data - unhandled!"); break; - case MIM_ERROR: + case MM_MIM_ERROR: print("Error"); break; - case MIM_LONGERROR: + case MM_MIM_LONGERROR: print("Long error"); break; } diff --git a/pubspec.yaml b/pubspec.yaml index d583df0..b88db71 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -13,11 +13,8 @@ dependencies: flutter_midi_command_platform_interface: ^0.4.0 ffi: ^2.1.0 win32: ^5.5.0 - universal_ble: ^0.9.11 - device_manager: #^0.0.2 - git: - url: https://github.com/bojidartonchev/device_manager.git - ref: c53f37f10b1286590e6487d8d344021a700ca04c # use PR #3 + universal_ble: ^0.21.0 + device_manager: ^0.0.7 dev_dependencies: flutter_test: