如何在Linux中获取USB(HID使用ID)连接设备的使用ID或类似属性

时间:2014-09-10 11:04:54

标签: linux usb linux-device-driver hid

有没有办法在 Linux 中为 USB设备获取 HID使用ID ? 我可以使用lsusb来获取PID和VID但是在设备驱动程序开发中我们不能使用PID,因为它在以特定模式运行的不同设备中是不同的。从Windows开发的角度来看,HID使用ID对于这个级别是唯一的。

1 个答案:

答案 0 :(得分:1)

设备支持的使用率页面必须从设备的报告描述符中解析出来。当您致电HidD_GetPreparsedData时,Windows会为您执行此操作。有两种方法可以从设备获取报告描述符:

  1. 打开/dev/hidrawN设备节点并使用HIDIOCGRDESCSIZEHIDIOCGRDESC ioctl获取报告描述符。
  2. 通过打开设备sysfs目录中的report_descriptor文件,从sysfs中读取报告描述符。此属性也可通过udev库获得。
  3. 获得原始报告描述符后,您可以使用hidrd之类的库来解析它。