【发布时间】:2014-09-10 11:04:54
【问题描述】:
有没有办法在 Linux 中为 USB 设备 获取 HID 使用 ID?
我可以使用lsusb 来获取 PID 和 VID,但是在设备驱动程序开发中我们不能使用 PID,因为它在以特别相同的模式运行的不同设备中是不同的。从 Windows 开发的角度考虑 HID 使用 ID 是这个级别的唯一。
【问题讨论】:
标签: linux usb linux-device-driver hid
有没有办法在 Linux 中为 USB 设备 获取 HID 使用 ID?
我可以使用lsusb 来获取 PID 和 VID,但是在设备驱动程序开发中我们不能使用 PID,因为它在以特别相同的模式运行的不同设备中是不同的。从 Windows 开发的角度考虑 HID 使用 ID 是这个级别的唯一。
【问题讨论】:
标签: linux usb linux-device-driver hid
设备支持的使用页面必须从设备的报告描述符中解析出来。当您致电 HidD_GetPreparsedData 时,Windows 会为您执行此操作。从设备获取报告描述符有两种方式:
/dev/hidrawN 设备节点并使用HIDIOCGRDESCSIZE 和HIDIOCGRDESC ioctls 获取报告描述符。report_descriptor 文件从 sysfs 中读取报告描述符。此属性也可通过 udev 库获得。获得原始报告描述符后,您可以使用像 hidrd 这样的库来解析它。
【讨论】: