OpenPuck WebUSB 面板显示 Disconnected?3 步修复 Linux 权限的完整指南 【免费下载链接】openpuckOpensource firmware for NRF52840 Pro Micro that copycats the Steam Controller 2 Puck and adds an Xbox and Switch mode项目地址https://gitcode.com/gh_mirrors/op/openpuck点击查看免费下载OpenPuck是一款运行在 NRF52840 Pro Micro 上的开源固件它模仿 Steam Controller 2 的 Puck 无线接收器并额外提供 Xbox 和 Switch 等模式。在 Linux 上使用它的 WebUSB 配置面板时一个高频问题就是设备明明选对了面板却提示Disconnected已断开。别急——这几乎总是WebUSB 权限问题导致的按本文 3 步即可修复。为什么 Linux 下会显示 Disconnected在 Windows 上浏览器可以直接打开 USB 设备但 Linux 出于安全考虑默认不允许普通用户访问原始 USB 设备raw USB。OpenPuck 通过 WebUSB 提供配置面板切换模式、映射背键、升级固件都靠它浏览器需要直接读取/dev/bus/usb/下的设备节点。如果你的用户不在对应的访问组里浏览器一打开设备就会被系统拒绝前端表现就是选择正确设备后仍然显示 disconnected。 记住这个判断标准Windows 正常、Linux 报 Disconnected → 90% 是权限问题不是固件坏了。修复步骤 1查看浏览器设备日志确认是权限错误修复前先验伤避免改错方向在 Chrome / Chromium / Edge 地址栏输入chrome://device-log/Chromium 用chromium://device-logEdge 用edge://device-log。重新在配置面板里选择一次 OpenPuck 设备。观察日志输出。如果看到下面这条错误就确认是权限问题Failed to open /dev/bus/usb/xxx/xxx: Operation not permitted看到Operation not permitted就可以放心继续按下面两步授权即可。修复步骤 2创建 udev 规则文件放行 OpenPuck 的 USB Vendor IDudev 规则按USB Vendor ID匹配设备。OpenPuck 在不同模式下会以不同厂商身份枚举Steam 模式是 Valve 的 IDXbox 模式是 Microsoft 的 IDSwitch 模式是 Nintendo 的 ID……所以规则要覆盖它枚举过的所有 Vendor ID。各模式对应的 Vendor ID 参考表模式厂商身份Vendor IDSteam Controller / Lizard 模式Valve28deXbox 360 模式Microsoft045eSwitch Pro 模式Nintendo057eHori Pad 模式HORIPAD (Hori)0f0dPS5 / DS4 / PS3 模式Sony054cDirectInput 模式pid.codes1209操作步骤以 root 身份创建规则文件/etc/udev/rules.d/50-openpuck.rules。将 docs/WEBUSB_LINUX.md 中的规则内容写入该文件大致形如SUBSYSTEMusb, ATTR{idVendor}28de, MODE0664, GROUPplugdev SUBSYSTEMusb, ATTR{idVendor}045e, MODE0664, GROUPplugdev SUBSYSTEMusb, ATTR{idVendor}057e, MODE0664, GROUPplugdev # ……其余模式对应行完整清单以官方文档为准保存退出。✂️ 如果你只用 Steam / Lizard 模式只保留28deValve那一行就够了其余规则是为各模拟模式准备的因为 USB 身份会随模式切换而变化。修复步骤 3把当前用户加入 plugdev 组并重新加载规则规则文件只是声明plugdev 组的成员可以访问还需要两件事让它生效1. 把当前用户加入plugdev组sudo usermod -a -G plugdev $USER2. 重新加载 udev 规则或直接重启sudo udevadm control --reload-rules3. 拔下再插上 OpenPuck重新插拔后浏览器应就能在Steam Controller 模式下正常连接面板了。此时状态从 Disconnected 变为已连接即可开始切换模式、调整背键映射等操作。⚠️ 特殊情况Chromium 是通过 Snap 安装的如果你用 Snap 方式安装了 Chromium它还有一层独立的应用沙箱权限需要额外放行 raw-usbsnap connect chromium:raw-usb完成后再按上面流程重插设备即可。修复没生效按这份清单自查现象可能原因与对策设备选择器里根本看不到 OpenPuck确认用的是支持 WebUSB 的浏览器Chrome / Edge设备插在本机USB 口且处于 Steam Controller 模式能看到设备但连接即断开日志报Operation not permittedudev 规则未生效确认规则文件在/etc/udev/rules.d/下、已执行udevadm control --reload-rules并重新插拔设备加入组后仍然失败usermod的组变更需要重新登录或重启后才生效查看组归属groups $USER中应出现plugdev所有模式都想配但某些模式下面板连不上某些模拟模式的 USB 身份会变化建议回到 Steam 模式背键 ×4 A再重插接收器Xbox 模式故意不提供 WebUSB 接口需先切回 Steam 模式再配置Snap 版 Chromium 依旧失败执行snap connect chromium:raw-usb相关文档与模块速查资料说明docs/WEBUSB_LINUX.md本文的官方原始出处含完整 udev 规则清单README.md项目总览各模式切换组合键、配对与配置流程docs/BUILD_AND_DEPLOY.md自行编译固件与烧录部署指南docs/PROTOCOL.mdOpenPuck 无线协议细节连接状态包0x79等OpenPuck/webusb_config.cppWebUSB 配置面板的固件端实现OpenPuck/xinput_auth.cppXbox 模式的主机侧鉴权实现总结Linux 下 OpenPuck 面板显示Disconnected的三步修复流程验证chrome://device-log/中确认Operation not permitted锁定为权限问题授权创建/etc/udev/rules.d/50-openpuck.rules放行 OpenPuck 各模式的 Vendor ID生效sudo usermod -a -G plugdev $USERsudo udevadm control --reload-rulesSnap 版 Chromium 补一句snap connect chromium:raw-usb重插设备收工。完成后你就可以在 WebUSB 面板里自由切换 Steam / Xbox / Switch 等模式了。赞分享【免费下载链接】openpuckOpensource firmware for NRF52840 Pro Micro that copycats the Steam Controller 2 Puck and adds an Xbox and Switch mode项目地址https://gitcode.com/gh_mirrors/op/openpuck点击查看免费下载相关推荐3步解决Devika终端故障从命令执行到界面显示的完整修复指南3步解决Devika终端故障从命令执行到界面显示的完整修复指南 终端功能是Devika项目中实现代码运行和结果展示的核心模块但在使用过程中可能会遇到命令执行人工智能大模型AI Agent代码智能体本地部署前端昇腾CANN原子操作确定性计算样例数据搬运随路原子操作做确定性计算的样例 概述 本样例首先介绍在数据搬运随路原子操作的场景下做确定性计算的必要性和具体实现方案随后分别介绍在单个AIV核、多AI人工智能深度学习算子库CANNAscend3步打造完美游戏界面字体显示异常修复与个性化指南3步打造完美游戏界面字体显示异常修复与个性化指南 游戏字体优化是提升视觉体验的关键环节不仅能解决烦人的口口口显示异常问题还能通过个性化界面设计让游戏体开发工具游戏开发上一篇Path of Building PoE2从零开始构建你的完美流放之路角色下一篇域名、DNS 与网络接入从平台默认链接到自有域名的完整实战指南vibe-vibe 第十三章创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考