我认为可以使用“ hci_send_req”功能或“ hci_send_cmd”功能读取/写入gatt配置文件。 但是,我们找不到设置数据的参数。 是否已连接到BLE终端并且未准备好对Gatt配置文件的读/写操作?
已添加..2018 / 11/22 17:06(JST)
首先,我研究它是否可以从命令行实现。
环境是RaspberryPi3。
pi@raspberrypi:~ $ sudo dbus-send --print-reply --system --dest=org.bluez /org/bluez/hci0/dev_XX_XX_XX_XX_XX_XX --type=method_call org.bluez.Device1.Connect
Error org.bluez.Error.Failed: Software caused connection abort
对不起,请隐藏MAC地址。
使用gatttool命令,可以使用connect,primary,char-read-hnd和char-write-req(cmd)终端。
添加... 2018/11/22 20:43
感谢您提供信息。
我尝试过,但是org.bluez.Adapter1实际上存在,但是发生错误。
pi@raspberrypi:~ $ sudo ./glibtest XX:XX:XX:XX:XX:XX
Adapter is Powered "on"
Unable to get result: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: Method "ConnectDevice" with signature "a{sv}" on interface "org.bluez.Adapter1" doesn't exist
使用以下命令检查org.bluez.Adapter1是否存在。
sudo dbus-send --print-reply --system --dest=org.bluez /org/bluez/hci0 --type=method_call org.freedesktop.DBus.Introspectable.Introspect
</method></interface><interface name="org.bluez.Adapter1"><method name="StartDiscovery"></method><method name="SetDiscoveryFilter"><arg name="properties" type="a{sv}" direction="in"/>
bluez的版本已从5.43更新到5.44。