linux - 使用 Bluetooth 2.0 dongle headless 与 Raspberry Pi Zero 配对

标签 linux bluetooth raspberry-pi bluez

我有一个 Raspberry Pi Zero,USB 端口有一个蓝牙 2.0 加密狗,因为它是蓝牙 2.0,我不能使用简单配对模式(仅适用于蓝牙 2.1+)。我想将我的计算机与 Raspberry Pi 配对,但计算机要求我输入 PIN,我不想与 Raspberry 交互。

由于简单配对模式不可用,我想到了使用固定 PIN(如 0000),这样当计算机要求输入 PIN 时,我可以输入 0000,它就会配对设备。但是,我还没有找到设置固定 PIN 码的方法。

我在互联网上搜索过,但只能找到蓝牙 2.1+ 或使用 Bluez4 的解决方案(我使用的是 Bluez 5.23-2+rpi2)。

我试过下载 simple-agent编辑 RequestPinCode 以返回“0000”,因为我在某处读到它可以工作,但随后我运行代码:

python agent.py

我得到一个错误:

Illegal instruction

我也尝试过:

sudo python agent.py

在这种情况下,我没有得到任何错误,我没有得到任何输出,程序只是存在。

我不确定 simple-agent 是如何工作的,但我很确定它应该在无限循环中等待。

我不知道我做错了什么。我只想为 Raspberry PI 设置一个固定的 PIN (0000),这样每次有新设备想要通过蓝牙连接到 Raspberry PI 时,我都可以引入该 PIN。只要它有效,我真的不在乎它是如何完成的。

更新 #1: 我已经尝试了 this question 中的答案所以我想我以错误的方式执行了脚本,所以我尝试了这个:

./simple-agent -c NoInputNoOutput

就像答案说的那样,但它给出了一个错误:

-bash: ./simple-agent: Permission denied

我试过:

sudo ./simple-agent -c NoInputNoOutput

然后它说:

sudo: ./simple-agent: command not found

更新 #2:在授予 simple-agent 文件执行权限后,我现在收到此错误:

-bash: ./simple-agent: /usr/bin/python^M: bad interpreter: No such file or directory
实际上,^M 字符只是一个 Windows 字符,我运行了 dos2unix,现在该文件应该没有奇怪的字符,我再次测试它,即使在授予它执行权限后,它也会给我和以前一样的错误(非法指令)。< p>

最佳答案

我决定单独询问 StackOverflow 上的 Illegal instruction 问题:

Python Illegal instruction on Raspberry Pi Zero

所以我解决了这个错误,它是由为不同架构编译的安装包引起的,所以我用 apt-get 重新安装了所有东西,现在脚本可以工作了。

接下来要做的是确保我可以将设备与 PIN 0000 配对,这是我提出这个问题的主要原因。所以我运行了脚本,然后尝试将它与我的计算机配对,它要求输入 PIN,我输入了 0000,它成功了!

关于linux - 使用 Bluetooth 2.0 dongle headless 与 Raspberry Pi Zero 配对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37737420/

相关文章:

Linux 允许执行但拒绝编辑

linux - 如何将 index.php 复制到所有子文件夹和每个子文件夹的所有子目录中?

linux - 如何从一台机器远程执行不同机器上的linux命令?

android - 多个蓝牙连接

iOS刷新蓝牙特性

linux - 仅在指定进行调试时才添加 -pg

iphone - 查找附近的 iOS 设备

c++ - 如何在树莓派上的 Arm 组装中获取纪元时间并将其转换为本地时间?

c - 音频波没有负值

Java - 线程崩溃后应用程序无法正常工作