我最近一直在修改BLE(蓝牙低功耗)连接类,并且无法以1KB / 5秒的速度传输数据。我相信,在文档中,它说最大速度是每20毫秒60个字节。通过数据传输和计数每组数据包后的Ack传输,我相信我们应该能够以每秒1.5KB的速度运行。所以我的代码比它应该慢了大约7-8倍。
我只是想知道是否有人能够像文档中说的那样能够在BLE中进行数据传输。如果比我快,你会得到什么样的速度?
非常感谢
答案 0 :(得分:3)
请参阅Apple的guidlines,您将看到需要连接更新请求才能加快连接速度。
https://developer.apple.com/hardwaredrivers/BluetoothDesignGuidelines.pdf
我有min = 20ms max 40 ms
我希望我能帮忙
罗马
答案 1 :(得分:2)
如果您能够使用更高的MTU大小(由iOS协商),那么您将能够进一步增加带宽,因为有一个4字节的L2CAP报头和一个3字节的ATT报头不会被传输超过一个数据包。
如果你能够传输6个连接间隔的数据包,那么你可以在每个连接间隔内增加35个字节(第一个数据包的7字节头仍然存在)MTU大小也可以分割在几个连接间隔内,增加7个字节pr连接间隔的吞吐量。 (只需花费更长的时间再次组装数据包。)ATT允许的最大MTU大小为515字节(att的最大大小为512字节+操作码+句柄的3字节标头)