Details
-
Bug
-
Resolution: Done
-
P2: Important
-
5.9.1
-
None
Description
Some BTLE peripherals seem to send larger MTU's than the standard 23 bytes. Android does not seem to automatically negotiate the MTU value when connecting. This lead to cases where a received packet is truncated at 23 bytes because the peripheral sends more than 23 bytes.
BluetoothGatt.requestMtu() should be used to initiate the MTU negotiation. This function requires Android API v21.