如何让iOS和CoreBluetooth可以发现Raspberry Pi 3?

时间:2016-06-20 16:36:21

标签: ios bluetooth bluetooth-lowenergy core-bluetooth raspberry-pi3

我有一个Raspberry Pi 3,我试图让iOS设备可以发现它。我跑了sudo hciconfig hci0 piscan让它可以被发现。我可以用我的iMac看到它。

在iOS上,我正在使用CoreBluetooth并对附近的设备运行扫描。我可以发现几个FitBit设备和我的iMac,但Raspberry Pi没有出现。

是否还有其他设置我必须启用蓝牙LE可发现性? Raspberry Pi 3是否与iOS兼容以实现蓝牙连接?

提前致谢。我很感激任何帮助。

3 个答案:

答案 0 :(得分:10)

经过大量研究和Twitter朋友的帮助,要启用LE广播,您必须使用以下命令之一。

sudo hciconfig hci0 leadv 0
sudo hciconfig hci0 leadv 3

0表示可连接。

3表示不可连接。

答案 1 :(得分:1)

对于那些与Iphone有问题连接的人,我发现在蓝牙扫描屏幕上显示RPi的唯一方法是将Rasberry PI角色/配置文件设置为音频接收器,如下所示,除了@Jeremiah Jessel中的帖子回答:

sudo / bin / hciconfighci0 inqdata" 0c097261737062657272797069020a00091002006b1d460217050d03001801180e110c1115110b1100"

所有在一行中,长字符串是查询数据,在此字符串中我们设置蓝牙名称和我们的覆盆子PI支持的配置文件

答案 2 :(得分:0)

对于任何得到HubuN帮助但想与Manuel Otto相同的人,您可以通过在0c09之后和020a之前编辑十六进制数据来更改名称。我没有添加评论的声誉,这就是为什么我要添加一个单独的答案。

使用HubuN的例子:

sudo / bin / hciconfig hci0 inqdata“0c097261737062657272797069020a00091002006b1d460217050d03001801180e110c1115110b1100”

“raspberrypi”是7261737062657272797069

因此,假设您想将其更改为“MyName”

您将获得“MyName”的十六进制,并用0的

填充剩余的空数据

4d794e616d65 =“MyName”

{{1}}

sudo / bin / hciconfig hci0 inqdata“0c094d794e616d650000000000020a00091002006b1d460217050d03001801180e110c1115110b1100”

我对其余的十六进制代码并不十分熟悉,所以如果其他人想要解释它,甚至提供更简单的解决方案,请随意。