You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下Chromium使用Web Serial API无法识别兼容设备求助

解决Chromium(Snap安装)无法识别串口设备的问题

针对Ubuntu 22.04系统下Snap版Chromium无法通过Web Serial API识别Arduino设备的问题,可按以下步骤排查修复:

  • 添加用户串口权限
    串口设备默认归dialout组管理,将当前用户加入该组以获取访问权限:

    sudo usermod -aG dialout $USER
    

    执行后需注销并重新登录使权限生效。可通过ls -l /dev/ttyACM0(替换为你的Arduino设备实际路径)确认设备权限是否包含dialout组的读写权限。

  • 解除Snap沙箱的串口访问限制
    Snap应用的沙箱会限制硬件访问,需手动给Chromium添加USB/串口权限:

    sudo snap connect chromium:raw-usb
    sudo snap connect chromium:serial-port
    

    这两个命令分别授予Chromium访问USB设备和串口的权限,解决沙箱导致的设备无法被检测到的问题。

  • 调整Web Serial API的设备过滤规则
    如果代码中使用了过滤条件,可能会遗漏设备。若之前未指定过滤,navigator.serial.requestPort({})应列出所有可用设备;若需要精准匹配,可通过lsusb命令获取Arduino的USB VID/PID(比如Arduino Uno的VID为0x2341,CH340芯片的VID为0x1A86),修改代码如下:

    let port = await navigator.serial.requestPort({
      filters: [
        { usbVendorId: 0x2341 },
        { usbVendorId: 0x1A86 }
      ]
    });
    

    同时,可在Chromium设置chrome://settings/content/serial中清除已保存的设备许可,重新发起设备请求。

  • 重启验证
    完成上述操作后,完全关闭Chromium(包括后台进程),重新插拔Arduino设备,再打开浏览器测试Web Serial API。

  • 确认API启用状态
    虽然Chromium 111默认支持Web Serial API,仍可通过chrome://flags/#enable-experimental-web-platform-features确认该功能处于启用状态。

内容的提问来源于stack exchange,提问作者Mehdi Coding

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 18:55:05