bluetoothctl-什么是蓝牙代理?


16

我正在使用该bluetoothctl实用程序在计算机和Raspberry Pi之间建立蓝牙连接。

在中bluetoothctl,我可以看到有一个称为“代理”的东西,通过查看大多数教程,必须将“代理”设置为“开”以创建连接。我试图了解什么是蓝牙代理。

1)什么是蓝牙代理?

2)bluetoothctlfor中的“ default-agent”命令是什么?所有连接都可以相同吗?

3)建立连接时不使用代理会有什么影响?

4)通过查看man bluetoothctl,可以设置代理功能。什么是座席能力?什么值可以放在那里?

5)代理仅与蓝牙一起存在吗?是否也可以说wifi代理?

我对蓝牙世界还很陌生,并且bluetoothctl的文档非常有限...任何信息将不胜感激。

Answers:


12

蓝牙代理负责管理蓝牙“配对代码”。它可以响应传入的“配对代码”,也可以发出一个。

默认代理应该为您工作。您说您不熟悉蓝牙,因此建议您暂时使用默认设置。

不使用代理将意味着这两个设备无法协商“配对代码”。

一个示例可能会有所帮助,因此下面是一个示例,该示例适用于我的名为Shep的Raspberry Pi 3:

pi@shep:~/bluetooth $ bluetoothctl
[NEW] Controller B8:27:EB:B0:BC:22 shep [default]
[NEW] Device 18:9E:FC:94:8C:33 iPhone4
[bluetooth]# agent on
Agent registered
[bluetooth]# default-agent
Default agent request successful
[CHG] Device 18:9E:FC:94:8C:33 Connected: yes
[CHG] Device 18:9E:FC:94:8C:33 Connected: no

在这里,我要求iPhone与Shep配对,然后iPhone发送了680044。

[CHG] Device 18:9E:FC:94:8C:33 Connected: yes
Request confirmation
[agent] Confirm passkey 680044 (yes/no): yes

如果要预先设置密码,请参见以下内容:

http://www.heatxsink.com/entry/how-to-pair-a-bluetooth-device-from-command-line-on-linux

设置蓝牙代理以传递预期的配对代码

$ bluetooth-agent 0000 &

显然,“ 0000”可以是任何数字。

这些代理和“配对代码”特定于蓝牙而不是Wi-Fi。


谢谢杰夫。很好的澄清。另外,您提供给我的链接说明了如何通过蓝牙建立串行连接,这是我的下一个问题。
phodor

似乎bluetooth-agent在xenial上不可用。一些谷歌搜索表明它曾经是bluez软件包的一部分。关于如何在Xenial上预先设置密码的想法?
cheshirekow

@cheshirekow检查出BT-剂的bluez的工具
比约恩·尼尔森
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.