通过WebUSB连接到串行USB设备

时间:2019-01-29 21:50:06

标签: webusb

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

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

2 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

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

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