USB调试工具
+ -

USB中文网出品-HID报告描述符分析工具

2021-08-23 12442 52
USB-HID-UVC-UAC调试工具下载:https://www.usbzh.com/article/detail-1192.html

HidReportParser.exe工具已经网页化,可访问http://www.usbzh.com/tool/usb.html 在线分析USB-HID报告描述符

USB HID规范中有一个很重要的概念,就是HID报告描述符
本人搞了这么久的HID设备开发,其中一项最头疼的是HID报告描述符的分析。
因为有时通过抓包获取的HID报告描述符,如果没有文档,就需要自己手动进行分析。但手动分析是一项头疼的工作。这完全就是在浪费时间做一项无聊的工作。

酝酿了很久,终于,本人在移植HIDParser的基础上,完成了HID报告描述符分析工具的第一版开发,现将该工具分享给大家,也欢迎大家提意见。
当然本人也会后续继续更新完善。

HidReportParserV1.8

  • 2022-01-18 17:12:33 星期二
  • 修正读取文件十六进制有时会多读出最后一行的BUG,该BUG会导致HID报告描述符会多解析一行十六进制导致解析内容变长

HidReportParserV1.7

  • 2021-10-21 15:11:32 星期四
  • 去除掉统计信息窗口(冗余)
  • 稳定性更新

HidReportParserV1.7

HidReportParserV1.6

  • 2021-09-24 12:14:04 星期五
  • 完善触摸USEAGE
  • 增加input,output,feateture数据计算过程(属性:字节数.位数),如input 8.3代表输入报告长度为8字节3位。

    这里只统计数据的长度,报告ID不在统计之内。

HidReportParserV1.6

HidReportParserV1.5

  • 2021-08-31 17:25:18 星期二
  • 增加根据选择存储文本数据格式

HidReportParser.exe V1.4

  • 发布于2021-08-30 09:50:35 星期一
  • 报告描述符解析数字的友好化
  • 增加拖拽文件到软件并自动解析功能

HidReportParser.exe V1.3

  • 发布时间:2021-08-25 12:03:07 星期三
  • 修正ITEM_TAG_GLOBAL_LOGICAL_MAXIMUM和ITEM_TAG_GLOBAL_LOGICAL_MAX因为负数导致的数据显示错误(感谢QQ群Spu的反馈)

HidReportParser.exe V1.3

HidReportParser.exe V1.2

  • 发布时间:2021-08-24
  • 修正部分小BUG

HidReportParser.exe V1.1

  • 发布时间:2021-08-24
    • 增加对条目的注释、数值解析
    • 优化存储格式
      对键盘报告描述的分析

HidReportParser.exe V1.0

HID报告描述符解析工具的功能概要:

  • 发布时间:2021-08-23
  • HID报告描述符的输入、输出和特性报告数据长度信息分析
  • 格式化报告描述符
  • 支持导出功能
  • 支持//的注释功能

软件使用

如本人通过BUSHOUND抓包的报告描述符,存储文本文件,其内容如下:

05 01 09 02  a1 01 09 01  a1 00 05 09  19 01 29 03  //这里是注释
15 00 25 01  95 08 75 01  81 02 05 01  09 30 09 31 09 38 15 81  25 7f 75 08  95 03 81 06  c0 c0

打开软件,选择该文件,并点击按钮进行分析:

HID报告描述符解析工具

当然也可以对解析的内容进行导出,这里只需要点击存储按钮即可:
存储解析内容

下载方式

USB中文网技术交流QQ群下载
USB中文网QQ群文件/USB调试工具&测试软件/HidReportParser.exe
下载地址:https://www.usbzh.com/article/detail-1191.html

QQ群号:952873936
952873936
QQ群文件下载需加入本站QQ群。

HID人机交互QQ群:564808376    UAC音频QQ群:218581009    UVC相机QQ群:331552032    BOT&UASP大容量存储QQ群:258159197    STC-USB单片机QQ群:315457461    USB技术交流QQ群2:580684376    USB技术交流QQ群:952873936   

0 篇笔记 写笔记

USB复合HID设备报告描述符的区分
在USB规范中,设备的功能是通过接口来承载的,在USB规格书中就是接口描述符。对于一般的设备,一般一个接口就是一个功能,这个功能可以是鼠标,键盘或其它设备类型。当然这个只是对USB简易设备而言的,对于一些USB复杂设备如UVC摄像头,UAC音频等是多接口相互配合来实现其功能的,为了整合这么多接口使......
HID报告描述符详解
HID的报告描述符和其它描述符不一样,不是具有固定的数据结构,而是由固件开发商根据上报的数据自行组装的。这个组装的原材料是HID规范定义的ITEM。所以说HID报告描述符就像搭积木一样,其最终的数据结构和设计图纸是什么,都是由固件开发商决定的,但是其最终的产品又是由HID规范提供的各个标准积木模块搭......
USB键盘报告描述符数据格式分析
USB键盘的HID报表描述符的内容参见下表。数据的输入端点为中断方式,当有键盘敲击事件时,会上报数据长度为8字节的数据报告。0x05,0x01,// Global Generic Desktop0x09,0x06,// Local KeyBoard 0xA1,0x01,// Main app col......
USB鼠标HID报告描述符数据格式分析
注意:这里的鼠标为普通鼠标报告描述符的信息解释,其并不适用于全鼠标报表描述符。一个示例如下:0x05,0x01, // Global Generic Desktop0x09,0x02, // Local Mouse0xa1,0x01, // Main app collection0x09,......
USB中文网出品-HID报告描述符分析工具
HidReportParser.exe工具已经网页化,可访问http://www.usbzh.com/tool/usb.html 在线分析USB-HID报告描述符USB HID规范中有一个很重要的概念,就是HID的报告描述符。本人搞了这么久的HID设备开发,其中一项最头疼的是HID报告描述符的......
HID 报表描述符/报告描述符
报表描述符用于描述USB HID设备与主机之间数据交互的格式。根据数据的传输方向,分为输入报告和输出报告。输入报告是USB设备发送数据给主机的。大部分的USB HID设备主要实现的是输入报告。如我们平常使用的USB鼠标,就是通过我们点击鼠标按键或滑动鼠标流轮实现给主机上报鼠标的报告信息。输出报告......
HID报告描述符协议
HID报告描述符通过报告描述符的条目定义了HID报告数据的格式。对于大部分的HID设备来说,数据的传输方向都是输入的,即使用输入端点数据从设备端到主机端,并且使用的是中断的方式。当然HID设备不仅仅为数据的输入,有时也需要数据的输出。这时就需要一个输出中断端点来实现。报告描述符包含了属于特定Rep......
USB官网HID报告描述符生成工具
USB规范官网提供了一个HID报告描述符生成工具,https://www.usb.org/document-library/hid-descriptor-tool 使用我们此工具,我们可以:创建、编辑和验证HID报告描述符。输出多种输出(.txt、.inc、.h等)查看一些标准的设备报告描述符......
VS2019分析HID报告描述符解析源代码
常有人问,有没有HID解析的工具,好像除了usb官网提供的dt.exe,没有其它的好的东东了。Linux下有相关的工具,在本站的社区里:http://www.usbzh.com/zone/detail-12.html 可以查看做HID开发,其实最麻烦的就是HID报表描述符了。这里本人移植了Reac......
HID报告描述符Report Descriptor解析分析
HID独有的报告描述符也叫报表描述符对于初学者来说比较复杂,但是如果真正理解了它,我们又不得不惊吧于设计者的巧妙设计。HID报告描述符是由一系列的条目(item)组成的,一个item一般是又包括头部信息(bTag,bType,bSize)和数据内容。所以说item在HID的报告描述符中是最小的信息单......
HID报告描述符Usage
Usage是HID报告描述符的一部分,用于应用开发人员提供有关控制测量内容的信息。Usage标签指示了设备供应商对其设备的控制或者设备控制组的特定用途建议。例如虽然报告描述符中定义了数据格式(例如,三个 8 位字段),但使用Usages定义了应对数据执行的操作含义,例如 x、y 和 z 输入。 此功......
HID报告描述符分类大全
下表列出的是全部的项目的前缀字和简要功能说明。项目类型项目标志(Tag)项目前缀,nn为数据长度功能说明MainInput8x1000 00 nn定义输入报表,主机利用该信息解析设备提供的数据。主机向控制端口发送Get_Report实现输入MainOutpu......
HID音量控制报告描述符
音量控制HID规范提供了两种报告描述符,分别对应按钮式和旋钮式。Up/Down 按钮音量控制下面的示例定义了一对按钮,用于渐变变量,例如音量增大和音量向下按钮。输入设备必须定义为相对设备。–1将减小音量+1将增大音量。0对音量没有影响。UsagePage(Consumer)Usage(Vol......
HID磁带滚轮按钮报告描述符
磁带滚轮按钮是一个弹簧式旋钮,可旋转 ±90°,用户食指有一个小凹痕。 当用户向右或向左扭转旋钮时,磁带与从弹簧加载的中心位置的旋转成正比的速率前进或后退。UsagePage(Consumer)Usage(Tape Jog)Logical Minimum(-127),Logical Maxi......
HID 单元按钮报告描述符
单选按钮是一组相互排斥的按钮。在下面的示例中,音频接收器使用三个单选按钮在计算机、DVD 设备或万维网之间进行选择作为显示源。机械连接式单选接钮 Mechanically Linked Radio Buttons一般的,单选按钮实现有一个机械系统,它释放任何未按下的按钮,并将最后按下的按钮保持在活......
关注公众号
  • HID人机交互
  • Linux&USB
  • UAC音频
  • TYPE-C
  • USB规范
  • USB大容量存储
  • USB百科
  • USB周边
  • UVC摄像头
  • Windows系统USB
  • 音视频博客
  • 取消
    感谢您的支持,我会继续努力的!
    扫码支持
    扫码打赏,你说多少就多少

    打开支付宝扫一扫,即可进行扫码打赏哦

    您的支持,是我们前进的动力!