This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Error Writing Large Characteristics

I am working on a BLE peripheral. I have a large, variable length characteristic I need to set from the central.

When the central is the BTool, I can write up to the maximum size of my characteristic, which is 512 bytes. It carves it into 90 byte blocks, and sends them 18 bytes at a time.

When the central is Android, any write more than 18 bytes fails. In the onCharacteristicWrite callback I receive status 133 (GATT_ERROR).

Any ideas why I would get this error?

Edit 1: I also have a Windows client implementation. There, the function BluetoothGATTSetCharacteristicValue() returns 58, ERROR_BAD_NET_RESP, "The specified server cannot perform the requested operation.".

I have a test point that I set when I am copying the bytes from each packet into the blob. I can see that with both the Windows and Android implementations I am only getting the first packet.

Parents Reply Children
No Data
Related