- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi everyone,
I'm trying to transmit some data over GATT characteristics.
The connection setup allows the minium connection interval of 7.5ms (i can see this in the connection updated events from EZSerial)
The peripheral allows a maximum MTU per write of 154 bytes.
If I use write handle without acknowledgement I can only got down to around 20ms between each write.
If I go below this delay, I will have data loss.
If I use acknowledgement instead, I can get up to 5kByte/s throughput.
Is the CYBT343026 capable of going above that throughput?
Is there any setting that I can adjust for improving the performance? I feel like this is way to low for 4.2 BLE.
Best regards
Alex
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I think the bottleneck is the GATT itself. Unlike CYSPP, which is based on RFCOMM, GATT is based on ATT. ATT is a connectionless protocol, while RFCOMM is a connection-oriented protocol. This fundamental difference results in the different theoretical transmission throughput. So I think it can't achieve the same TX/RX rate as Bluetooth Classic.
Also, the minimum connection interval of 7.5ms is hardly achieved in the tests. Due to hardware restrictions, around 25ms was detected as the actual minimum interval. You can record the air log to verify this.
The actual maximum throughput you could get should be 5-7 kbytes/s, based on the interval of 25ms and the maximum MTU of 154 bytes. So I think you have already achieved the actual maximum throughput, via GATT.
Best regards