我是Bluetooth LE的新手。我正在尝试使用pygatt连接到BLE智能手表。我用pip安装了pygatt,并尝试按照给出的示例here。由于我在Windows 10下工作,因此选择了Bluegiga后端。找到设备的地址后,我尝试:
import pygatt
adapter = pygatt.BGAPIBackend()
try:
adapter.start()
device = adapter.connect(''a4:c1:c0:fa:82:ac')
finally:
adapter.stop()
我遇到了以下错误:
NotConnectedError: No BGAPI compatible device detected
检查the documentation on GitHub后,我尝试指定使用的COM端口,但没有结果:
adapter = pygatt.BGAPIBackend(serial_port='COM9')
我实际上尝试了从1到9的所有COM端口,因为我不确定我在使用哪个端口。直到那时,我才注意到GitHub示例中的注释:
# The BGAPI backend will attemt to auto-discover the serial device name of the
# attached BGAPI-compatible USB adapter.
我没有使用兼容BGAPI的USB适配器!我怀疑这就是我的问题所在。 是否可以使用pygatt(或任何其他python工具箱)连接到BLE设备而无需使用这样的适配器?
PS:有关上下文的更多信息,请查看我发布的on IoT exchange相关问题。