仍在询问有关BLE设备和gatttool的信息。
我可以在交互模式下发送char-write-cmd,但在非交互模式下不能这样做。
这是我在交互模式下发送的内容:
gatttool -I
[]> connect BTADDR
[BTADDR]> char-write-cmd 0x0040 01
[BTADDR]> exit通过这种方式,我启动了Alert服务,在我的例子中,它会发出蜂鸣器的声音。
理论上,非交互模式应该是:
gatttool -b BTADDR --char-write -a 0x0040 -n 01但这不会将请求命令事件发送到电路板,我正在使用开发板进行检查。
发布于 2017-03-11 13:42:40
手动(非交互)方式读取或写入BLE外围设备:
写入和接收回复一次:(取决于您如何配置BLE设备)
sudo gatttool -i hci0 -b xx:xx:xx:xx:xx:xx --char-write-req -a 0x0025 -n ff无限期写入和接收回复:(直到您从BLE设备断开连接或停止蓝牙客户端)
sudo gatttool -i hci0 -b xx:xx:xx:xx:xx:xx --char-write-req -a 0x0025 -n ff --listen请注意,我只在末尾添加了--listen选项。仅当您将BLE节点(传感器或执行器)配置为读取和回复时,此机制才起作用。资料来源::How to use gatttool non-interactive mode Bluetooth Low Energy: listening for notifications/indications in linux
尽管如此,我仍然不认为从BLE设备控制或获取值是最好的。我的方向是继续使用API (可能是在python中)来为您完成这项工作。
https://github.com/peplin/pygatt这个接口已经被证明可以和Raspberry Pi Jessie一起使用。
https://stackoverflow.com/questions/40303153
复制相似问题