总结一下我想在这里完成的工作: 我想在树莓派上模拟传感器,并通过低功耗蓝牙将其提供给Android手机。
那么有效的方法是: 使用“ nRF Connect”应用程序连接到arduino。 与自己的应用程序连接到arduino。
有时似乎是随机的: 通过“ nRF Connect”连接到rbpi。
什么不起作用: 用自己的应用程序连接到rbpi。
当nRF Connect应用程序发生错误时,它告诉我发生了GATT错误133错误,这与我在应用程序中收到的错误相同,但是我的应用程序无法连接。 Just用作验证工具,以便确定问题不在我的应用程序中。 但是必须有所不同,因为它在大多数情况下/在某些情况下都可以与nRF Connect应用程序一起使用。 另一方面,如果出现问题,则它不适用于arduino,但确实可以。
你们怎么看? 是什么原因引起的? 应用还是rbpi? 我在网上看到错误133是一个非常棘手的问题,还没有看到具体的解决方案。
答案 0 :(得分:0)
我发现了问题。 树莓派3b +具有双模蓝牙芯片。 在android方面的代码中,您使用connectGatt()方法连接到远程ble gatt服务器。您可能希望它自然地连接到rbpi的蓝牙芯片的LE端,但是显然不是这种情况。 这篇文章为我提供了答案: https://raspberrypi.stackexchange.com/questions/90696/bluetooth-low-energy-gatt-services-not-found-on-android