Sunbreak
Sunbreak
Similar to https://github.com/woodemi/quick_blue/issues/90. Could try some `Future.delayed`?
Could you post `flutter doctor -v`? Try [DebugView](https://docs.microsoft.com/en-us/sysinternals/downloads/debugview) if you need `OutputDebugString` result, for example: https://github.com/woodemi/quick_blue/blob/acc21420688b9b6e3c099cb6c2ed400731d89709/quick_blue_windows/windows/quick_blue_windows_plugin.cpp#L221
> Is setNotifiable with BleInputProperty.notification the same as writing 0x01 to 0x2902 descriptor? I think so according to Android implementation of `setNotifiable` https://github.com/woodemi/quick_blue/blob/acc21420688b9b6e3c099cb6c2ed400731d89709/quick_blue/android/src/main/kotlin/com/example/quick_blue/QuickBluePlugin.kt#L287-L298
> ```dart > QuickBlue.setNotifiable(deviceId, SERVICE_MIBAND2, CHARACTERISTIC_AUTH, > BleInputProperty.notification); > QuickBlue.writeValue(deviceId, SERVICE_MIBAND2, CHARACTERISTIC_AUTH, > Uint8List.fromList(key_cmd + key), BleOutputProperty.withResponse); > ``` You'd better await the result ```dart await QuickBlue.setNotifiable(deviceId, SERVICE_MIBAND2, CHARACTERISTIC_AUTH, BleInputProperty.notification);...
> ```dart > QuickBlue.discoverServices(deviceId); > QuickBlue.setNotifiable(deviceId, SERVICE_MIBAND2, CHARACTERISTIC_AUTH, > BleInputProperty.notification); > QuickBlue.writeValue(deviceId, SERVICE_MIBAND2, CHARACTERISTIC_AUTH, > Uint8List.fromList(key_cmd + key), BleOutputProperty.withResponse); > ``` Try this on Android before Windows. Android BLE is...
Could you try below APPs on Android as peripheral? - LightBlue: https://punchthrough.com/lightblue-features/ - https://github.com/Sunbreak/ble-test-peripheral-android
> Android code didn't work because of permissions. Complete list of permission for AndroidManifest.xml https://github.com/woodemi/quick_blue/commit/e907904bfc10163f32e345577d5151d8de7b824a is here I don't think `` is needed
> ```dart > void mibandAuth(String deviceId) async { > await QuickBlue.setNotifiable(deviceId, SERVICE_MIBAND2, > CHARACTERISTIC_AUTH, BleInputProperty.notification); > await Future.delayed(const Duration(seconds: 1)); > await QuickBlue.writeValue(deviceId, SERVICE_MIBAND2, CHARACTERISTIC_AUTH, > Uint8List.fromList(key_cmd + key), BleOutputProperty.withoutResponse);...
> I got permissions exception on another phone TECNO CC7 and I have to give Location permission manually in App Info. > If it so I can make an example...
https://github.com/woodemi/quick_blue/blob/1083edc15b0076a929969987fe3a72b5ce71350b/quick_blue_windows/windows/quick_blue_windows_plugin.cpp#L274-L285 Some useful doc - https://punchthrough.com/maximizing-ble-throughput-on-ios-and-android/ - https://punchthrough.com/maximizing-ble-throughput-part-2-use-larger-att-mtu-2/ - https://punchthrough.com/maximizing-ble-throughput-part-3-data-length-extension-dle-2/ - https://punchthrough.com/ble-throughput-part-4/