android 获取蓝牙已连接的设备_冷知识:一个蓝牙可同时连接多个蓝牙设备

本文介绍了蓝牙连接的基本原理,指出传统蓝牙主设备最多可连接7个从设备,但并非所有设备都能达到这个上限。主设备选择访问从设备,而从设备通常需要随时待命。在BLE中,连接数量可能更多,但具体数量取决于协议栈资源和设备配置。为了增加连接数,可能需要调整参数并进行测试。
摘要由CSDN通过智能技术生成

传统蓝牙主设备最多可与一个微微网(一个采用蓝牙技术的临时计算机网络)中的七个传统蓝牙设备通讯, 当然并不是所有设备都能够达到这一最大量。设备之间可通过协议转换角色,从设备也可转换为主设备(比如,一个头戴式耳机如果向手机发起连接请求,作为连接的发起者,自然就是主设备,但是随后也许会作为从设备运行。)

54384f8daaa46e576eb03d5948d719c8.png

数据传输可随时在主设备和其他设备之间进行(应用极少的广播模式除外)。主设备可选择要访问的从设备;典型的情况是,可以在设备之间以轮替的方式快速转换。因为是主设备来选择要访问的从设备,理论上从设备就要在接收槽内待命,主设备的负担要比从设备少一些。主设备可以与七个从设备相连接,但是从设备却很难与一个以上的主设备相连。规格对于散射网中的行为要求是模糊的。

5105b89911726763040f4fc4c4ebef74.png

此外,准确的说这7个并不是主机(centeral/master/loal)连接设备(peripheral/device/remote),而是logical transport address(LT ADDR)也就是我们常说的ACL链路。ACL链路只有3bit正好就是7个设备。001-111(二进制)000被其他占用,因此,从这个角度将,蓝牙主机最多可以连接7个(同时工作/active)传统蓝牙设备。

5a8be221281f64bee55b0ae43f5aa3df.png

为什么是传统,应为不是所有蓝牙设备都需要ACL链路,BLE本身允许更多的设备连接使用,但每个协议栈主机分配给协议栈的资源,以及官方测试过的稳定连接数量都是非常小的一个保守参数,目前没有统一的答案,只能这样表述:某个协议栈在某台手机商能大概同时连接几个耳机和BLE设备。注意大概这个词,即使你测试到可以连接立体声耳机A+4个BLE设备,也不能代表你就能连接立体声耳机B+4个BLE设备,因为每个蓝牙设备同时开启的通道数量source ID不一样,所占用的主机资源也不一样。

如果客户需要增加大体的连接数量,只能慢慢调参数,慢慢测试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值