(已更新)
我正在尝试使用命令行或程序与 BLE设备通信。
我已经使用 bluetoothctl v5.50 与该设备进行了配对:
[bluetooth]# paired-devices
Device XX:XX:XX:XX:XX:XX Mydevice
但是当我尝试使用gatttool
来读取其特征时,就会得到答案Characteristic value/descriptor operation failed: Attribute requires authentication before read/write
。
sudo gatttool -b XX:XX:XX:XX:XX:XX -I -t random --sec-level=high
[XX:XX:XX:XX:XX:XX][LE]> connect
Attempting to connect to d2:a7:4c:76:f3:e0
Connection successful
[XX:XX:XX:XX:XX:XX][LE]> char-read-hnd 0x000e
Error: Characteristic value/descriptor read failed: Attribute requires authentication before read/write
[XX:XX:XX:XX:XX:XX][LE]>
我也尝试使用bleah,但收到错误Error from Bluetooth stack (comerr)
。
对于蓝牙,list-attributes
不返回任何内容。而且我无法读取标准特性,例如00002a00-0000-1000-8000-00805f9b34fb
(设备名称):
[MyDevice]# list-attributes
[MyDevice]# attribute-info 00002a00-0000-1000-8000-00805f9b34fb
Attribute 00002a00-0000-1000-8000-00805f9b34fb not available
请注意,特征是可读的(我用bleah枚举了设备):0x000e具有READ属性。
有人可以提出解决方案来读取此类特征吗?