我观察到一些基于Windows HID驱动程序的自定义设备的奇怪行为 .

通常,一个接口,配置为HID并具有1 ms间隔的中断 endpoints ,可以相对可靠地以大约1的速率发送/接收请求 . 1毫秒但是,在某些芯片组/主板/ USB控制器组合上,此速率要慢得多(在10毫秒甚至更长的范围内) . USB分析仪没有检测到任何硬件问题(例如总线错误),只是看起来USB主机只是懒得做请求 .

现在,最奇怪的部分 - 如果我将另外的USB设备添加到同一个USB控制器(例如下一个USB端口),所提到的自定义HID设备的通信速度会提高(2倍或更快) . 通过在USB主机和设备之间添加常规USB 2.0集线器来解决问题 .

观察到的行为在某种程度上也与批量传输延迟有关 .

通过在Linux下测试同一台PC上的HID /批量接口延迟,我无法复制任何这些问题!

你们有没有观察到任何类似的行为?有没有人知道如何解决这个问题?