连接到 raspberry pi 3b+ 时出现 GATT 错误 133,但连接到 arduino 时却没有?

GATT Error 133 when connecting to raspberry pi 3b+ but not when connecting to arduino?

总结一下我想在这里完成的事情: 我想在 raspberry pi 上模拟传感器,并通过低功耗蓝牙将它们提供给 android phone。

那么什么有效: 使用 "nRF Connect" 应用程序连接到 arduino。 使用自己的应用程序连接到 arduino。

有时似乎是随机的: 正在连接 "nRF Connect" 到 rbpi。

什么不起作用: 正在用自己的应用程序连接到 rbpi。

当 nRF Connect 应用程序出现错误时,它告诉我发生了 GATT 错误 133 错误,这与我在我的应用程序中收到的错误相同,但我的应用程序永远无法连接。只是用作验证工具,以确定问题不在我的应用程序中。 但是肯定有一些不同,因为它确实在 most/some 的时间与 nRF Connect 应用程序一起工作。 另一方面,如果它有问题,它不应该与 arduino 一起工作,但它确实有效。

大家怎么看? 问题的原因是什么? 应用程序还是 rbpi? 网上看到error 133一直是个很棘手的问题,一直没看到具体的解决办法。

我发现了问题。 raspberry pi 3b+有双模蓝牙芯片。 在 android 端的代码中,您使用方法 connectGatt() 连接到远程 ble gatt 服务器。你会期望它会自然地连接到 rbpi 蓝牙芯片的 LE 端,但显然情况并非如此。 post 为我提供了答案: https://raspberrypi.stackexchange.com/questions/90696/bluetooth-low-energy-gatt-services-not-found-on-android