Commit 52f7228

derdilla <82763757+NobodyForNothing@users.noreply.github.com>
2024-06-15 14:48:27
lowercase
Signed-off-by: derdilla <82763757+NobodyForNothing@users.noreply.github.com>
1 parent 93466f1
Changed files (1)
app
lib
app/lib/bluetooth/ble_read_cubit.dart
@@ -149,21 +149,21 @@ class BleReadCubit extends Cubit<BleReadState> {
     final List<BluetoothCharacteristic> allCharacteristics = service.characteristics;
     Log.trace('BleReadCubit allCharacteristics: $allCharacteristics');
     final BluetoothCharacteristic? characteristic = allCharacteristics
-      .firstWhereOrNull((c) => c.uuid.str == _kCharacteristicID,);
+      .firstWhereOrNull((c) => c.uuid.str.toLowerCase() == _kCharacteristicID,);
     if (characteristic == null) {
       Log.err('no characteristic', [_device, allServices, allCharacteristics]);
       emit(BleReadFailure());
       return;
     }
 
-    characteristic.onValueReceived.listen((data) {
-      Log.trace('BleReadCubit data indicated: $data');
-      final record = CharacteristicDecoder.decodeMeasurement(data);
-      Log.trace('BleReadCubit decoded $record');
-      emit(BleReadSuccess(record));
-    });
-
-    // Support indicate
+    // This characteristic only supports indication so we need to listen to values.
+    final indicationListener = characteristic
+      .onValueReceived.listen((data) {
+        Log.trace('BleReadCubit data indicated: $data');
+        final record = CharacteristicDecoder.decodeMeasurement(data);
+        Log.trace('BleReadCubit decoded $record');
+        emit(BleReadSuccess(record));
+      });
     await characteristic.setNotifyValue(true);
 
     late final List<int> data;