将一个蓝牙设备连接为多个设备

时间:2015-05-04 00:28:29

标签: c++ c windows bluetooth protocols

我意识到可以将多个蓝牙设备连接到主设备。

我的问题很简单:具有单个MAC地址的单个蓝牙芯片可以连接到另一个蓝牙设备作为多个客户端吗?

修改: 基本上可以接受具有相同MAC地址的多个蓝牙客户端,否则客户端计算机可以使用不同的虚假地址进行连接吗?

例如,我正在编写模拟Wii / WiiU的wiimote的软件。我希望使用单个蓝牙usb加密狗来模拟多个wiimote。

如果需要hack,则首选C或C ++代码。 对于窗户,如果平台相关, 请在任何答案中描述。

2 个答案:

答案 0 :(得分:1)

Bluetooth HID Spec v1.0

4.4 Multiple Devices per Host/Multiple Hosts per Device

Bluetooth HIDs shall set no limitation on the number of devices per host (up to the seven simultaneous active devices allowed per piconet). All trusted devices (devices that have either been authenticated or have no security procedures required) shall be allowed to have simultaneous connections to the host, if the host so desires. For example, multiple Bluetooth mice and keyboards are allowed. The behavior in this case shall be the same as for the USB case; i.e., input from all devices is allowed and the data streams are logically ORed together.

Similarly, a single Bluetooth HID may have established a bond or have its address known by multiple hosts. However, if it has declared itself virtually cabled, it is mandatory that the device only support a single host connection, and only one control and one interrupt L2CAP channel to that host, at one time (see SDP attribute HIDVirtualCable). If the device has not declared itself virtually cabled, it is still recommended that the device only support a single host connection at one time, i.e. no more than one SDP, control, and interrupt channel may be open at a time. A Bluetooth HID that implements the Virtual Cable feature shall have sufficient resources to remember a minimum of two hosts, and four hosts is recommended, to make later reconnection easier without passkey entry.

答案 1 :(得分:0)

我不确定你要求的是什么,但是:

蓝牙网络称为微微网,微微网必须具有最少2个设备和最多8个设备(7个从设备和1个主设备)。设备可以是一个或多个微微网的成员,但他只能是其中一个的主设备,这个设备被称为桥接器,因为他在散射网中混合了更多的微微网。

因此,您可以将单个蓝牙芯片与单个MAC地址连接到更多的蓝牙设备,但我认为您不能将同一设备A作为多个客户端连接到同一个Master M,因为当Master M启动问题阶段A将仅响应其MAC地址和时钟的偏移一次,稍后在页面阶段M和A将建立一个连接。