WebUSB 不再支持自定义 HID 设备?

custom HID device no longer supported by WebUSB?

几周前,WebUSB 能够在 MAC 和 Window 平台上与我的自定义 HID 设备通信。

现在看来最新的 Chrome 更新 (65.0.3325.162) 已经在 Window 平台上删除了此支持。 https://chromium-review.googlesource.com/c/chromium/src/+/951635

有人可以确认一下吗? 那么自定义 HID 设备与 WebUSB 配合使用的解决方案是什么?

没错。在所有平台上,宣传 HID 协议的设备将由系统 HID 驱动程序声明,不应由使用 WebUSB 的站点声明API。

如果您想连接到 HID 接口,您需要修改设备,使该接口不再标记为 HID。

有关此政策的详细信息,请参阅 this thread

作为 Windows 上的 "workaround",您可以告诉 OS 使用 WinUSB 驱动程序而不是 http://gerritniezen.com/2017/10/connecting-to-usb-devices-with-your-browser/

中建议的 HIDUSB

我使用 Zadig 工具强制使用 WinUSB 驱动程序,它对我有效。我可以通过 Chrome 和 WebUSB 与我的 HID 设备通信。

在我的笔记本电脑上,只要驱动程序开关没有恢复(因此某些应用程序无法再与其通信),HIDUSB 驱动程序将不再访问此 HID 设备。但在其他笔记本电脑上,它仍然可以作为标准 USB HID 设备使用。

我仍在寻找 way/workaround 以允许 Chrome 直接声明 HID 设备...