一个驱动程序是否可以包装另一个驱动程序以使用WEBUSB
Can a driver wrap another driver to use WEBUSB
我有一个我想通过 WebUsb 访问的设备,驱动程序是源代码封闭的,所以有没有办法创建我自己的驱动程序来包装官方驱动程序?,只是为了让设备从chrome 和 WebUsb ?
更新:
得到真正帮助了我很多的答案后,我可以说如下:
如果您无法访问 USB 的固件并且无法修改它以使其与 WebUsb 兼容,则下一个方法是了解设备的低级别工作方式,您不需要了解完整的 USB协议,但至少知道如何发送和接收命令,并且 WINDOWS 是必须的,你的 usb 设备的驱动程序是 WinUsb.sys
你不需要创建一个全新的驱动程序,只需要知道设备和计算机之间的通信是如何工作的,然后在javascript中重写。
WebUSB 旨在提供 low-level 在单个 USB 传输级别访问 USB 设备。如果该设备有一个现有的驱动程序,那么它应该负责传输并为您系统上的应用程序提供一个 higher-level 接口。尝试将其包装在呈现 low-level 界面的东西中会适得其反。
如果没有有关相关设备及其驱动程序的更多信息,我无法提供更准确的建议。
一个选项需要大量工作,但应用范围可能更广,那就是围绕现有驱动程序编写一个包装器,使其能够使用 WebUSB 连接到设备。已经有工作,例如,它通过提供内部使用 WebUSB 的 libusb 端口,将使用 libusb 的 user-space 驱动程序移植到 Web。这对于 open-source 驱动程序更容易工作,因为您可以重新编译它们以使用包装器。例如,如果这是一个 closed-source 本机 Windows 驱动程序,运行 在网络上的模拟器内部将是一项艰巨的任务。
我有一个我想通过 WebUsb 访问的设备,驱动程序是源代码封闭的,所以有没有办法创建我自己的驱动程序来包装官方驱动程序?,只是为了让设备从chrome 和 WebUsb ?
更新:
得到真正帮助了我很多的答案后,我可以说如下:
如果您无法访问 USB 的固件并且无法修改它以使其与 WebUsb 兼容,则下一个方法是了解设备的低级别工作方式,您不需要了解完整的 USB协议,但至少知道如何发送和接收命令,并且 WINDOWS 是必须的,你的 usb 设备的驱动程序是 WinUsb.sys
你不需要创建一个全新的驱动程序,只需要知道设备和计算机之间的通信是如何工作的,然后在javascript中重写。
WebUSB 旨在提供 low-level 在单个 USB 传输级别访问 USB 设备。如果该设备有一个现有的驱动程序,那么它应该负责传输并为您系统上的应用程序提供一个 higher-level 接口。尝试将其包装在呈现 low-level 界面的东西中会适得其反。
如果没有有关相关设备及其驱动程序的更多信息,我无法提供更准确的建议。
一个选项需要大量工作,但应用范围可能更广,那就是围绕现有驱动程序编写一个包装器,使其能够使用 WebUSB 连接到设备。已经有工作,例如,它通过提供内部使用 WebUSB 的 libusb 端口,将使用 libusb 的 user-space 驱动程序移植到 Web。这对于 open-source 驱动程序更容易工作,因为您可以重新编译它们以使用包装器。例如,如果这是一个 closed-source 本机 Windows 驱动程序,运行 在网络上的模拟器内部将是一项艰巨的任务。