Oli*_*erM 12
当我正在考虑做这些事情时,完成@sam的回答。以下是 Linux 中两个蓝牙适配器的演示bluetoothctl:
我的笔记本电脑上没有任何 USB 蓝牙适配器,我看到:
[bluetooth]# list
Controller 84:EF:18:1E:5B:8A olivier-ThinkPad-E460 #1 [default]
Run Code Online (Sandbox Code Playgroud)
热插拔 USB 蓝牙适配器后,我可以看到:
[NEW] Controller 5C:F3:70:8A:A6:97 olivier-ThinkPad-E460 #2 [default]
[CHG] Controller 5C:F3:70:8A:A6:97 UUIDs: 00001112-0000-1000-8000-00805f9b34fb
[CHG] Controller 5C:F3:70:8A:A6:97 UUIDs: 00001801-0000-1000-8000-00805f9b34fb
[CHG] Controller 5C:F3:70:8A:A6:97 UUIDs: 0000110e-0000-1000-8000-00805f9b34fb
[CHG] Controller 5C:F3:70:8A:A6:97 UUIDs: 00001800-0000-1000-8000-00805f9b34fb
[CHG] Controller 5C:F3:70:8A:A6:97 UUIDs: 00001200-0000-1000-8000-00805f9b34fb
[CHG] Controller 5C:F3:70:8A:A6:97 UUIDs: 0000110c-0000-1000-8000-00805f9b34fb
[CHG] Controller 5C:F3:70:8A:A6:97 UUIDs: 0000110a-0000-1000-8000-00805f9b34fb
[CHG] Controller 5C:F3:70:8A:A6:97 UUIDs: 0000110b-0000-1000-8000-00805f9b34fb
[bluetooth]# list
Controller 84:EF:18:1E:5B:8A olivier-ThinkPad-E460 #1 [default]
Controller 5C:F3:70:8A:A6:97 olivier-ThinkPad-E460 #2
Run Code Online (Sandbox Code Playgroud)
要选择具有 MAC 地址的 USB 蓝牙适配器5C:F3:70:8A:A6:97:
[bluetooth]# select 5C:F3:70:8A:A6:97
[bluetooth]# list
Controller 84:EF:18:1E:5B:8A olivier-ThinkPad-E460 #1
Controller 5C:F3:70:8A:A6:97 olivier-ThinkPad-E460 #2 [default]
Run Code Online (Sandbox Code Playgroud)
我们可以看到 USB 适配器现在标记为[default].
当我扫描蓝牙设备时,我可以看到它使用 USB 适配器:
[bluetooth]# scan on
Discovery started
[CHG] Controller 5C:F3:70:8A:A6:97 Discovering: yes
[NEW] Device A0:E6:F8:37:AE:94 5AAA=mRwb6qK$v_~xL5O#uK)AqfHK
[NEW] Device 54:E5:F7:BC:4C:D9 54-E5-F7-BC-4C-D9
Run Code Online (Sandbox Code Playgroud)
当我想连接时也是如此:
[bluetooth]# connect DE:79:A2:A1:E9:FA
Attempting to connect to DE:79:A2:A1:E9:FA
[CHG] Device DE:79:A2:A1:E9:FA Connected: yes
Connection successful
[NEW] Primary Service
/org/bluez/hci1/dev_DE_79_A2_A1_E9_FA/service0008
00001801-0000-1000-8000-00805f9b34fb
Generic Attribute Profile
[NEW] Characteristic
/org/bluez/hci1/dev_DE_79_A2_A1_E9_FA/service0008/char0009
00002a05-0000-1000-8000-00805f9b34fb
Service Changed
Run Code Online (Sandbox Code Playgroud)
注意hci1DBUS 路径中的:/org/bluez/hci1/dev_DE_79_A2_A1_E9_FA