Bluetooth 蓝牙乐(Bluez)和#x27;权限写入错误';应通知请求

Bluetooth 蓝牙乐(Bluez)和#x27;权限写入错误';应通知请求,bluetooth,bluetooth-lowenergy,scale,bluez,Bluetooth,Bluetooth Lowenergy,Scale,Bluez,我正在尝试连接Wahoo磅秤1.3,通过蓝牙通知读取一个人的活体重 可通过以下特征读取活重: handle: 0x0025, char properties: 0x10, char value handle: 0x0026, uuid: 00002b01-0000-1000-8000-00805f9b34fb. 这是我的iPhone上的LightBlue应用程序 当我尝试通过gatttool接收通知时,出现以下错误: 命令行gatttool:(还尝试了来自不同堆栈溢出主题的许多不同符号) 蓝牙

我正在尝试连接Wahoo磅秤1.3,通过蓝牙通知读取一个人的活体重

可通过以下特征读取活重:

handle: 0x0025, char properties: 0x10, char value handle: 0x0026, uuid: 00002b01-0000-1000-8000-00805f9b34fb.
这是我的iPhone上的LightBlue应用程序

当我尝试通过gatttool接收通知时,出现以下错误:

命令行gatttool:(还尝试了来自不同堆栈溢出主题的许多不同符号)

蓝牙日志

< ACL Data TX: Handle 0 flags 0x00 dlen 9                                                                                                                                                                                    [hci0] 4.291021
          ATT: Write Request (0x12) len 4
            Handle: 0x0026
              Data: 0100
    > HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                       [hci0] 4.327199
            Num handles: 1
            Handle: 0
            Count: 1
    > ACL Data RX: Handle 0 flags 0x02 dlen 9                                                                                                                                                                                    [hci0] 4.383580
          ATT: Error Response (0x01) len 4
            Write Request (0x12)
            Handle: 0x0026
            Error: Write Not Permitted (0x03)
HCI事件:完成的数据包数(0x13)plen 5[hci0]4.327199
Num句柄:1
句柄:0
计数:1
>ACL数据接收:句柄0标志0x02 dlen 9[hci0]4.383580
附件:错误响应(0x01)第4列
写入请求(0x12)
句柄:0x0026
错误:不允许写入(0x03)
我注意到的一点是,在UUID1901(权重服务)下有3个属性:1:write/indicate、2:notify、3:notify。

我能用gatttool写第一个属性,但不能写第2和第3个属性。但是LightBlue是如何开始监听通知的呢

我尝试了两种不同的系统: 带QN9021 BLE控制器的Beaglebone Black(Bluez 5.38,OpenWrt Linux 4.4) Beaglebone黑色WiFi/蓝牙(Bluez 5.23,Debian Linux 4.4)

我得到这个错误是因为Bluez堆栈和Wahoo Scale不兼容吗?我该如何解决这个问题


谢谢大家!

0x0026是值的句柄,而不是描述符的句柄。我猜描述符的句柄是0x0027。

谢谢!这确实是解决办法。我假设下一个特征是0x0027,但事实并非如此,它是0x0028。
< ACL Data TX: Handle 0 flags 0x00 dlen 9                                                                                                                                                                                    [hci0] 4.291021
          ATT: Write Request (0x12) len 4
            Handle: 0x0026
              Data: 0100
    > HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                       [hci0] 4.327199
            Num handles: 1
            Handle: 0
            Count: 1
    > ACL Data RX: Handle 0 flags 0x02 dlen 9                                                                                                                                                                                    [hci0] 4.383580
          ATT: Error Response (0x01) len 4
            Write Request (0x12)
            Handle: 0x0026
            Error: Write Not Permitted (0x03)