问题标签 [webusb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
576 浏览

webusb - 通过 WebUSB JavaScript 打开钱箱

我有 ac# 应用程序,可以打开安装了 Windows 驱动程序的现金抽屉。非常简单,因为驱动程序使 USB 设备显示为串行端口:

我现在正试图通过 WebUSB 打开同一个 USB 现金抽屉。我使用 ZaDig 安装了通用 USB 驱动器,Chrome 可以看到 USB 设备;可以打开设备;但是,我正在努力发送正确的命令。

这是配置的图像:

在此处输入图像描述

这是我当前的代码:

0 投票
0 回答
748 浏览

javascript - webusb - DOMException:访问被拒绝

usbweb显示此错误,尝试了一些解决方案但找不到,任何人都可以帮助解决这个问题。此错误 DOMException:访问被拒绝。

0 投票
1 回答
296 浏览

webusb - webUSB 继电器驱动硬件

在过去的几年里,我一直在寻找一种简单的方法来从 Javascript 控制一些继电器。我想构建一个网络应用程序来控制帆船比赛的开始顺序喇叭。

我最近发现了 webUSB,它似乎正是我所需要的。从 chrome 中的 JS 直接连接到 USB 世界。用我已经使用的语言进行简单编码。

在硬件方面,我很难找到兼容的产品。谷歌搜索 USB Relay 发现 100 种产品似乎都依赖于操作系统的某些专有软件。我可以找到很多可以打开和关闭 LED 的教育演示。

有谁知道在哪里可以找到这样的产品?

0 投票
1 回答
1671 浏览

javascript - WebUSB - “无法声明接口”错误

我正在尝试通过 WebUSB API 使用带有以下代码的 POS 打印机,但它失败.claimInterface()并出现错误DOMException: Unable to claim interface。所有测试均在 Linux 上的 Chrome 80.0.3987.116 上完成。我该如何调试呢?

(更新)我找到了这个演示,但它导致了同样的错误。

当然,我在 localhost 服务器(即“安全上下文”start() )上运行它并使用用户手势调用函数。

我还确认没有其他进程正在使用该设备。

下面是 的输出lsusb -vs 001:011

0 投票
1 回答
188 浏览

rust - Rust STM32:webUSB 发布传感器

对于使用stm32f1xx-hal的爱好项目,我想定期读取传感器,然后推送这些值,以便我可以在 webUSB 应用程序中实时绘制它们。

我在mvirkkunen的 webusb_blinky 中找到了一个示例,它演示了连接部分,但我不清楚如何调整它以发布传感器值。我应该压倒一切control_in吗?

任何建议/帮助将不胜感激。谢谢!

0 投票
1 回答
2181 浏览

google-chrome - 我可以在没有应用程序的情况下在 Chrome 中访问 USB HID 吗?

我想使用来自网站的USB HID 。该网站只能由Chrome浏览器访问。该解决方案应该需要最少数量的额外软件和设置才能让网站用户正常工作。

USB 设备将自己作为 USB HID 呈现给操作系统,我需要向它写入和读取字节数组,以便为​​设备的某些功能实现制造商规范。

我目前的解决方案包括两部分:

  1. 使用chrome.hidAPI 与设备通信的 Chrome 应用程序。这个应用程序公开了一个 Chrome 跨扩展消息端口,为“服务调用”提供接口。
  2. 网站上的 JavaScript 代码将请求发送到 Chrome 应用程序,然后与 USB 设备对话以处理请求。

为了让用户更容易我想摆脱该应用程序,因此用户只需浏览网站,必要时授予对设备的访问权限,然后就可以使用该设备。需要明确的是,我希望用户能够使用该网站而无需先安装任何依赖项。

我已经尝试过使用 WebUSB navigator.usbAPI,但 Chrome 会阻止访问 USB HID 设备。还有另一种方法可以做到这一点吗?

0 投票
1 回答
785 浏览

windows - 无法在 Windows 上打开具有多接口 USB 设备的设备

我正在尝试使用 webusb api 连接我的 USB 设备,它基本上是一个数字化仪。USB版本是2.0。我已成功在 chrome 中请求设备,但无法打开设备并显示错误访问拒绝。 请求设备 USB 设备有 3 个接口:2 个 HID 和 1 个 USB(加载了 winusb)。这是xusb中显示的信息:

第一个隐藏界面用于报告数字化仪,我认为它已经被系统声明。我想这是问题所在,因为我试图删除两个隐藏界面并重复该过程。这次设备打开成功。

但是在 Mac OS 上没有出现同样的问题。所以我想知道是否有人有任何解决Windows问题的建议?

0 投票
1 回答
497 浏览

google-chrome - Chrome 以后会支持 CCID USB 设备吗

我正在尝试实现一个可以与 Chromebook 上的 USB 智能卡读卡器通信的应用程序。
但是我在使用 USBDevice.claimInterface() 声明接口时遇到了问题:

根据已回答的其他问题,例如: WebUSB API 受保护的接口类错误USB 设备接口已被阻止 我知道 CCID 已被阻止并且 Chrome 上的 WebUSB 不支持。
有什么出路还是chrome将来会支持CCID类?

0 投票
1 回答
302 浏览

javascript - WebHID API:断开连接事件未触发

我正在尝试使用 WebHID API 从 USB HID 设备获取断开连接事件。

编码:

设备连接成功,但在关闭或与计算机断开连接后,disconnect不会触发事件。

我做错了什么还是一个错误?

0 投票
2 回答
1598 浏览

google-chrome - WebUSB API 将原始数据发送到串行 USB 设备

无法定义要发送到我的串行设备(通过 USB 连接)的数据。

我如何获得设备:


之后我可以进入wireshark并读取值:


但对于我的设备,我还需要设置 usb.LanguageId、usb.DescriptorIndex 等。收件人也不属于这 4 个枚举

有没有办法发送原始数据或设置更多属性?

知道有transferOut功能,但是当我尝试它时,它只是在最后转储它,这对我的问题不起作用。

试图更改接收者或请求参数,但它不起作用,或者更糟糕的是,向 controlTransferOut 对象添加更多参数似乎没有改变任何东西。

资源:

  1. WICG
  2. MDN 网络文档
  3. 谷歌开发者网络更新
  4. WebUSB API Arduino 示例代码
  5. Google Developers 为 WebUSB 构建设备