chipweinberger / flutter_blue_plus

Flutter plugin for connecting and communicationg with Bluetooth Low Energy devices, on Android, iOS, macOS
Other
773 stars 468 forks source link

[Bug]: PlatformException(writeCharacteristic, data longer allowed. dataLen: 11 > max: 509 #539

Closed Nicola-Pozza closed 1 year ago

Nicola-Pozza commented 1 year ago

FlutterBluePlus Version

1.14.13

Flutter Version

3.10.5

What OS?

Android

OS Version

Android 13

What happened?

Can't write in the characteristics, trying to pass a file by 509 byte at time Set the mtu to 512 on Android

Error execute command: PlatformException(writeCharacteristic, data longer allowed. dataLen: 11 > max: 509 (withResponse, No Splits), null, null)

Logs

I/flutter (29740): ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): │ #0   BluetoothUtilities.setMTUIfNeeded (package:xxxx_core/core/managers/bluetooth/utilities/bluetooth_utilities.dart:44:14)
I/flutter (29740): │ #1   <asynchronous suspension>
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 11:26:05.966 (+0:00:52.091404)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 💡 BluetoothUtilities.setMTUIfNeeded | 512
I/flutter (29740): └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
D/[FBP-Android](29740): [FBP-Android] onMethodCall: setNotification
D/BluetoothGatt(29740): setCharacteristicNotification() - uuid: ed2af5d6-d595-11ea-87d0-0242ac130003 enable: true
D/[FBP-Android](29740): [FBP-Android] onDescriptorWrite: uuid: 00002902-0000-1000-8000-00805f9b34fb status: 0
I/flutter (29740): ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): │ #0   FirmwareUpgradeRequest.bleRequest (package:xxxx_models/models/firmware_upgrade/firmware_upgrade_request.dart:45:9)
I/flutter (29740): │ #1   FirmwareUpgradeMixin.writeFirmwareUpgradeRequest (package:xxxx_core/features/firmware_upgrade/device/mixin/firmware_upgrade_mixin.dart:29:64)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 11:26:12.935 (+0:00:59.060415)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 🐛 BYTE: MTU: [0, 2]
I/flutter (29740): └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): │ #0   FirmwareUpgradeRequest.bleRequest (package:xxxx_models/models/firmware_upgrade/firmware_upgrade_request.dart:46:9)
I/flutter (29740): │ #1   FirmwareUpgradeMixin.writeFirmwareUpgradeRequest (package:xxxx_core/features/firmware_upgrade/device/mixin/firmware_upgrade_mixin.dart:29:64)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 11:26:12.938 (+0:00:59.063646)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 🐛 BYTE: File Length: [200, 20, 18, 0]
I/flutter (29740): └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): │ #0   FirmwareUpgradeRequest.bleRequest (package:xxxx_models/models/firmware_upgrade/firmware_upgrade_request.dart:47:9)
I/flutter (29740): │ #1   FirmwareUpgradeMixin.writeFirmwareUpgradeRequest (package:xxxx_core/features/firmware_upgrade/device/mixin/firmware_upgrade_mixin.dart:29:64)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 11:26:12.941 (+0:00:59.066485)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 🐛 BYTE: Firmware version: [0, 1, 0, 92]
I/flutter (29740): └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): │ #0   FirmwareUpgradeMixin.writeFirmwareUpgradeRequest (package:xxxx_core/features/firmware_upgrade/device/mixin/firmware_upgrade_mixin.dart:29:12)
I/flutter (29740): │ #1   DeviceFirmwareUpgradeBloc.upgradeFirmwareNotification (package:xxxx_core/features/firmware_upgrade/device/bloc/device_firmware_upgrade_bloc.dart:187:11)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 11:26:12.957 (+0:00:59.083172)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 🐛 firmwareUpgradeStatusWrite => [255, 0, 2, 200, 20, 18, 0, 0, 1, 0, 92]
I/flutter (29740): └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): │ #0   FirmwareUpgradeRequest.bleRequest (package:xxxx_models/models/firmware_upgrade/firmware_upgrade_request.dart:45:9)
I/flutter (29740): │ #1   FirmwareUpgradeMixin.writeFirmwareUpgradeRequest.<anonymous closure> (package:xxxx_core/features/firmware_upgrade/device/mixin/firmware_upgrade_mixin.dart:31:130)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 11:26:12.966 (+0:00:59.091736)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 🐛 BYTE: MTU: [0, 2]
I/flutter (29740): └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): │ #0   FirmwareUpgradeRequest.bleRequest (package:xxxx_models/models/firmware_upgrade/firmware_upgrade_request.dart:46:9)
I/flutter (29740): │ #1   FirmwareUpgradeMixin.writeFirmwareUpgradeRequest.<anonymous closure> (package:xxxx_core/features/firmware_upgrade/device/mixin/firmware_upgrade_mixin.dart:31:130)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 11:26:12.970 (+0:00:59.096072)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 🐛 BYTE: File Length: [200, 20, 18, 0]
I/flutter (29740): └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): │ #0   FirmwareUpgradeRequest.bleRequest (package:xxxx_models/models/firmware_upgrade/firmware_upgrade_request.dart:47:9)
I/flutter (29740): │ #1   FirmwareUpgradeMixin.writeFirmwareUpgradeRequest.<anonymous closure> (package:xxxx_core/features/firmware_upgrade/device/mixin/firmware_upgrade_mixin.dart:31:130)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 11:26:12.975 (+0:00:59.100801)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 🐛 BYTE: Firmware version: [0, 1, 0, 92]
I/flutter (29740): └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
D/[FBP-Android](29740): [FBP-Android] onMethodCall: writeCharacteristic
I/flutter (29740): ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter (29740): │ #0   BLECommandsTailBloc._executeCommand (package:xxxx_core/features/bluetooth/bloc/ble_commands_tail_bloc.dart:51:14)
I/flutter (29740): │ #1   <asynchronous suspension>
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 11:26:12.981 (+0:00:59.107186)
I/flutter (29740): ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
I/flutter (29740): │ 🐛 Error execute command: PlatformException(writeCharacteristic, data longer allowed. dataLen: 11 > max: 509 (withResponse, No Splits), null, null)
I/flutter (29740): └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
chipweinberger commented 1 year ago

fixed in 1.14.14