1
我正在尝试将总连接数+写入时间降至最低BLE设备。 BLE模块由我工作的公司开发,所以我已经知道设备的所有服务和特性。跳过BLE服务发现
到目前为止,连接时间+服务发现时间过长(约800ms,其中要求最高为500 ms)。我尝试过跳过服务发现,为此,我已经在代码中手动创建了特性和服务(使用反射设置受保护的属性等),并且可以通过传递服务发现来“技术上”。
问题是,如果我这样做了,第一个数据包大约需要300毫秒,在服务发现的情况下,发现大约需要280毫秒,第一个数据包需要20毫秒,所以看起来服务发现是无论如何,只是后来,即使我不直接打电话 - 我的假设是正确的? 如果是这样,是否有办法绕过发现呢?
希望得到任何帮助,到目前为止我找不到任何有用的信息在线,而那些300毫秒是关键。
GATT已经过优化(只有所需的服务和特性存在),在优化之前,它需要约550 ms的时间来完成服务发现。将固件/硬件组指向链路层并报告结果。谢谢 –
还有一件事可以尝试:将MTU增加到比缺省值23更高的值(例如512)。这样更多的服务/特性可以适应每个响应,从而减少连接事件的数量。 – Emil