Raspberry Pi 3 上的 Bluetoothctl 配对超时

标签 bluetooth timeout raspberry-pi3 bluez

我有一个 Raspberry Pi 3B(内置蓝牙)。 使用 bluetoothctl 时,我可以扫描设备并轻松找到我正在寻找的设备。 但是,当尝试与其配对时,我不断收到“配对失败:org.bluez.ErrorEautenticationFailed”消息。 有人告诉我,这可能是因为我尝试连接的设备的广告间隔为 10.2 秒,而 Bluez 在 2 秒后超时。 Bluez 默认情况下会在 2 秒后超时,这是否正确?如果是,我该如何更改此设置?

问候

最佳答案

我找到了一个有效的解决方案。显然,问题出在内核上。这里,自动连接超时设置为 2 秒,低于某些设备所需的时间。 - 解决方案是向内核添加一个小补丁,构建它并使用它。 这可以按照此处的说明来完成:https://www.raspberrypi.org/documentation/linux/kernel/building.md 从git克隆内核后,修改文件include/net/bluetooth/hci.h 需要更改的行如下所示

定义 HCI_LE_AUTOCONN_TIMEOUT msecs_to_jiffies(2000)/* 2 秒 */

将值“2000”更改为“20000”(使超时时间为 20 秒,而不是 2 秒)。 按照上面的说明构建内核,一切似乎工作正常。 如果有人有更好的解决方案,不需要构建新内核,我想听听它,因为这个过程有点复杂。

关于Raspberry Pi 3 上的 Bluetoothctl 配对超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46710890/

相关文章:

java - 安卓。如何知道允许的 block 大小(蓝牙)?

android - HistoryRecord 的 Activity 空闲超时?

android - 在android中使用Ksoap2时处理超时

ajax - jQuery AJAX 超时后 IE7 中出现 "The data necessary to complete this operation is not yet available"消息

ios - 将字符串从 iphone 应用程序传递到 osx 应用程序

ios - 使用 BluetoothManager 私有(private)框架获取蓝牙的 MAC 地址

ios - 低级蓝牙数据包分析

android - Python 与 Android 通信?

linux - 在另一个目录中运行 bash 脚本

linux - 更改crontab后如何正常启动Raspberry?