本文档详细说明了遥控器与USB HID设备之间的数据通信格式。
- 数据包长度: 18字节
- 通信周期: ~100ms (从日志时间戳分析)
- 字节序: 小端序 (Little-Endian)
| 字节位置 | 字段名称 | 大小 | 数据类型 | 说明 |
|---|---|---|---|---|
| 1-2 | 帧头 | 2字节 | 固定值 | 0x02 0x0E |
| 3-4 | 时间戳/计数器 | 2字节 | UINT16 | 递增计数器 |
| 5-6 | 左摇杆X轴 | 2字节 | INT16 | 左摇杆水平方向 |
| 7-8 | 左摇杆Y轴 | 2字节 | INT16 | 左摇杆垂直方向 |
| 9-10 | 右摇杆X轴 | 2字节 | INT16 | 右摇杆水平方向 |
| 11-12 | 右摇杆Y轴 | 2字节 | INT16 | 右摇杆垂直方向 |
| 13-14 | 左波轮 | 2字节 | INT16 | 左旋钮/滚轮 |
| 15-16 | 右波轮 | 2字节 | INT16 | 右旋钮/滚轮 |
| 17 | 功能按键 | 1字节 | UINT8 | 返回/录像/拍照组合 |
| 18 | 五维按键 | 1字节 | UINT8 | 上下左右中 |
02 0E 68 63 00 04 00 04 00 04 00 04 00 04 00 04 00 00
解析结果:
- 帧头: 02 0E ✓
- 计数器: 0x6368 = 25448
- 左摇杆: X=0x0400 (1024), Y=0x0400 (1024)
- 右摇杆: X=0x0400 (1024), Y=0x0400 (1024)
- 左波轮: 0x0400 (1024)
- 右波轮: 0x0400 (1024)
- 五维键(18位): 0x00 (无操作)
- 功能键(17位): 0x00 (无操作)
02 0E 2B 67 DC 04 64 05 00 04 00 04 00 04 00 04 00 00
解析结果:
- 帧头: 02 0E ✓
- 计数器: 0x672B = 26411
- 左摇杆:
- X=0x04DC (1244) ← 偏移+220
- Y=0x0564 (1380) ← 偏移+356
- 右摇杆: X=0x0400 (1024), Y=0x0400 (1024)
- 波轮: 均为0x0400 (1024)
- 按键: 无操作
| 按键 | 值 | 二进制 | 说明 |
|---|---|---|---|
| 无 | 0x00 | 00000000 | 无按键按下 |
| 上 | 0x01 | 00000001 | 五维键上 |
| 下 | 0x02 | 00000010 | 五维键下 |
| 左 | 0x04 | 00000100 | 五维键左 |
| 右 | 0x08 | 00001000 | 五维键右 |
| 中 | 0x10 | 00010000 | 五维键中(确认) |
注意: 五维键支持组合按键,通过位或运算实现
| 按键 | 值 | 二进制 | 说明 |
|---|---|---|---|
| 无 | 0x00 | 00000000 | 无按键按下 |
| 返回 | 0x02 | 00000010 | 返回键 |
| 录像 | 0x04 | 00000100 | 录像键 |
| 拍照 | 0x08 | 00001000 | 拍照键 |
| 组合 | 值 | 二进制 | 计算 |
|---|---|---|---|
| 返回+录像 | 0x06 | 00000110 | 0x02 |
| 返回+拍照 | 0x0A | 00001010 | 0x02 |
| 返回+录像+拍照 | 0x0E | 00001110 | 0x02 | 0x04 | 0x08 |
注意: 功能键支持组合按键,通过位或运算实现
- 最小值: TBD (需要测试)
- 最大值: TBD (需要测试)
- 中位值: 0x0400 (1024) - 当前观察到
- 范围: 疑似 0-2047 或 -1024~+1023
- 最小值: TBD (需要测试)
- 最大值: TBD (需要测试)
- 中位值: 0x0400 (1024) - 当前观察到
- 范围: 疑似与摇杆相同
从日志数据可以看出:
-
计数器持续递增: 每个包递增约997-1045
- 0x6368 → 0x6548 (+472)
- 0x6548 → 0x672B (+483)
- 0x672B → 0x690D (+482)
-
中位值特征: 所有摇杆和波轮在待机时为 0x0400 (1024)
-
通信频率: 约10Hz (每100ms一帧)
- 摇杆和波轮的完整数据范围
- 数据是否为有符号数
- 0x0400 是否为真实中位值
- 第17字节是否还有其他未发现的按键定义
- 数据包是否有校验和或CRC
| 日期 | 版本 | 说明 |
|---|---|---|
| 2026-01-23 | 1.1 | 修正第17/18字节定义(17位=功能键,18位=五维键) |
| 2026-01-23 | 1.0 | 初始版本,基于实际通信日志分析 |