首页 > 解决方案 > STM32MP1 上的 Bluez 连接

问题描述

我有一个装有 OpenSTLinux 和 bluez 5.50 版的 VisionSOM-STM32MP1。

我能够找到附近的设备。使用 bluetoothctl 我可以与 android 设备配对。不幸的是,当我尝试从 android 设备建立连接时,它失败了。

[CHG] Device 00:00:00:00:00:00 Connected: yes
[CHG] Device 00:00:00:00:00:00 Connected: no

然后我尝试建立与android设备的连接,我得到:

[bluetooth]# connect 00:00:00:00:00:00
Attempting to connect to 00:00:00:00:00:00
[CHG] Device 00:00:00:00:00:00 Connected: yes
Failed to connect: org.bluez.Error.Failed
[CHG] Device 00:00:00:00:00:00 Connected: no

我也尝试在 c 程序中执行此操作,就像它在这里一样,因此在创建套接字后我得到 errno 93(Protocol not supported)。

s = socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM);
if(s == -1) {
   printf("errno %d\n", errno);
   return -1;
}

谢谢你的任何建议。

标签: bluetoothembedded-linux

解决方案


您可以尝试通过多种方式获取有关您的问题的更多信息。

我建议您在蓝牙守护程序中启用调试日志记录。我认为您需要使用“-d”运行 Bluez 守护程序才能使其正常工作。调试日志将在 syslog 中。

然后您可以使用 hcidump 记录 HCI 日志。这将告诉您 Bluez 向控制器发送了哪些 HCI 命令。


推荐阅读