应用场景:
Android应用程序通过蓝牙以及它们之间的一些数据传输连接到嵌入式设备。在任何时候,只有一个应用程序可以控制并将数据发送到嵌入式设备。
开发环境:
linux,c / c ++,bluez堆栈,cmdline工具(如bluetoothctl)。
Bluetooth 4.0允许多个从属设备可以通过Bluetooth piconet与主设备进行通信。
那么如何限制连接到嵌入式设备的电话数量?
答案 0 :(得分:2)
使用蓝牙4.0,一个从设备只能连接到一个主设备。另一方面,一个主设备可以具有多个从设备(例如,在微微网中,您的Android设备可以连接8个或更多从设备,但是如果从设备是4.0设备,则它们不能连接到另一个主设备。)
蓝牙4.1中引入了一种功能,该功能可将一个从机连接到一个以上的主机,该功能称为 LE链路层拓扑。在使用此功能之前,一个从站只能有一个连接。
因此,要回答您的问题,您无需执行任何操作即可限制可以连接到嵌入式设备的电话数量。连接电话后,您的嵌入式设备将无法接受任何其他传入的BLE连接。
最后,实际上,有一种方法可以确保您的从属设备仅连接到一个主设备,无论使用什么版本的Bluetooth。通过在连接后禁用广告来实现此目的。广告是接受传入连接的唯一方法,如果您的设备不进行广告,则远程设备甚至看不到它。
有关更多信息,请参阅蓝牙规范v5.1,第6卷,B部分,第1.1节链接层状态。
我希望这会有所帮助。