使用BlueZ的最大BLE连接数

7

问题1:使用BlueZ 5.34连接BLE外设时,BLE中央设备是否有连接限制?

我的问题是关于使用BlueZ的一般连接能力,而不是白名单。

问题2:如果连接数量取决于控制器。有没有找到最大限制的方法?

问题3:主机BlueZ或Bluedroid是否可以添加限制以支持控制器的最大LE连接数?

问题4:如果LE设备存在连接限制,则作者在下面的段落中引用的“无固有限制”是什么意思。

来自Robin Heydon BLE Developer's handbook的信息

这也意味着对于给定设备可以同时与多少设备通信,不应该有固有限制。如果设备想要与另一个设备通信,那么它应该能够做到这一点,不必担心只有七个可能连接的从设备,这是经典蓝牙所施加的限制。

实验:

如下面的参考资料所示,在使用不同的控制器时,我也看到了各种LE白名单大小,插入式usb4btle为32,内部蓝牙适配器为24。 (使用命令:hcitool lewlsz)

在我的测试设置中,我能够连接12个BLE设备。(我有最多12个BLE外设)。 我使用的是Ubuntu 15.04中的BlueZ 5.34,并使用plugable usbbt4le dongle。

1个回答

8

我遇到了这个问题...有点混乱。

A1. 连接限制是基于硬件的。我使用过一些只有3个连接的设备,而其他一些似乎可以超过7个。

A2. 当您尝试建立超过硬件支持范围的连接时,设备应返回错误。不同的设备会报告不同的错误,但通常与资源耗尽有关。然而,我使用过一些设备,没有报告任何错误,事情在超过某个未知限制后就无法正常工作了。我遇到的是其中一些连接停止返回通知。因此,这完全取决于您是否拥有一个设计良好且表现良好的控制器。

A3. 我不确定我是否理解问题... BlueZ和la本身不会添加任何限制。

A4. BLE在连接数量方面没有设计限制。然而,大多数消费者不需要连接100个设备,因此蓝牙 dongle tend to只包含维护较小数量的连接所需的必要资源。因此,完全取决于制造商要支持多少设备。

请记住,每个连接都需要硬件保留状态信息,诸如白名单之类的东西也需要存储内存。存储器需要硬件,而硬件的成本则需要钱。由于大多数dongles都比较便宜,制造商必须通过尽可能少地使用硬件来进行竞争。而测试也需要时间和金钱,连接限制通常不是消费者遇到的问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接