我已经在GitHub(https://gist.github.com/sabas1080/93115fb66e09c9b40e5857a19f3e7787)上检查了项目,并且试图在ESP32上实现BLE远程控制(此远程控制具有32个键)。问题是,我不太确定如何声明该报告以及因此的输入报告。
我必须发送的HCI数据格式如下:
总大小:8字节
字节0:修改键
字节1:保留
键数组:6个字节每个字节代表一个按钮,最多可容纳6个按钮。
根据文档“通用串行总线HID使用表”,我声明了此报告:
Strict<DataTypeBoolean>
那是正确的吗?我对如何设置报告参数感到困惑。
对于输入报告,我尝试发送如下音量命令:
0x05, 0x0C, // Usage Page (Consumer)
0x09, 0x01, // Usage (Consumer Control)
0xA1, 0x01, // Collection (Application)
0x85, 0x01, // Report ID (1)
0x05, 0x0C, // Usage Page (Consumer Devices)
0x15, 0x00, // Logical Minimum (1)
0x25, 0x01, // Logical Maximum (2)
0x15, 0x08, // Report Size (8)
0x25, 0x01, // Report Count (1) Modifier 1 Byte
0x81, 0x00, // Input(Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
0x15, 0x08, // Report Size (8)
0x25, 0x01, // Report Count (1) Reserved 1 Byte
0x81, 0x01, // Input(Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
0x15, 0x00, // Logical Minimum
0x25, 0x20, // Logical Maximum 32 keys
0x15, 0x08, // Report Size (8)
0x25, 0x06, // Report Count (6) Keys 6 Bytes
0x81, 0x00, // Input(Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
0xC0, // End Collection