AV-H07
HID Report Descriptor Decoder
Decode a USB HID report descriptor item by item, lay out every report bit by bit and catch mistakes hosts reject.
● Runs on your device; nothing is uploadedHow to use it
- Paste the descriptor as hex bytes, a 0x list or a C array (comments are ignored), or pick an example.
- Read the problems list for anything a host might reject.
- Check the Reports tables for bit offsets, sizes and the length of each Input, Output and Feature report.
- Use the Items table, or copy it as a commented C array, to review each item.
- Optionally choose a connected device under WebHID to see the reports your browser parsed from it.
Limits
- Pasted text
- 64 KB
- Item data sizes
- 0, 1, 2, 4 bytes (+ long items)
- Push nesting before warning
- 16
- Field flagged as large
- > 4 KB (Size × Count)
- Linux limits checked
- Report Size ≤ 256, Report Count ≤ 12,288
- Warnings listed
- 50
Features
- Decodes every main, global and local item per HID 1.11, including Push/Pop and 4-byte extended usages
- Signed Logical/Physical values and 4-bit Unit Exponent, with units decoded (e.g. English Rotation: deg)
- Per-Report-ID layout with bit offsets and byte lengths, counting the Report ID byte
- Names for Generic Desktop, Simulation, VR, Game, Keyboard, LED, Button, Consumer, Digitizer and PID (force feedback) usages
- Plain-language warnings: unbalanced collections, Usage Minimum without Maximum, missing Report Size/Count, Report ID 0, truncated bytes
- WebHID view of a connected device’s collections in Chrome and Edge
For AI agents: avtools_hid_descriptor
Loading the tool…