【问题标题】:Connecting to Serial USB device via WebUSB通过 WebUSB 连接到串行 USB 设备
【发布时间】:2019-01-29 21:50:05
【问题描述】:

我有通过 USB 串行模式连接到 mac 或 windows 的硬件。目前,我有一个 nodejs 应用程序,它使用“串行”节点模块向该硬件发送和接收消息。 我正在尝试从网页连接到硬件。我使用了 WebUSB serial.js。我能够看到该设备并猜测它正在连接。但是当我尝试发送/接收消息时 - 它说无法声明接口。

我想知道我可以将 WebUSB 用于支持串行的 USB 吗?

【问题讨论】:

  • 欢迎来到 Stack Overflow!你看过github.com/monteslu/webusb-serial之类的东西吗?包含您尝试过的一些东西以及可能有效或无效的东西会很棒。代码示例等

标签: webusb


【解决方案1】:

claimInterface() 调用失败,因为您的操作系统已经加载了此设备的 USB 串行类驱动程序(或者可能是供应商特定的驱动程序,例如 FTDI)。 USB 接口一次只能由一件事声明。更改设备固件的选项,以便驱动程序不再识别接口(修改接口类或产品 ID),然后您将能够声明接口并使用您找到的 Arduino WebUSB 库的 serial.js 之类的代码.

另一种选择是等待 Chrome 完成实现 Serial API。可以跟踪其状态here

【讨论】:

    【解决方案2】:

    对我有用的是在控制台中运行sudo modprobe -r ftdi_sio

    这样,它会从操作系统中卸载 USB 并使其可供 WebUSB 使用并声明接口。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-15
      • 2017-03-25
      相关资源
      最近更新 更多