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

Ubuntu系统Chrome中SpaceMouse Compact无法适配JS Gamepad API怎么办

Chrome 配置标识调整

  • 打开Chrome地址栏输入 chrome://flags 进入实验性功能配置页
  • 分别搜索以下两个配置项,修改状态为 Enabled 后重启浏览器生效:
    • #enable-gamepad-extensions:开启游戏控制器扩展支持,兼容非标准6自由度控制器
    • #enable-experimental-web-platform-features:开启实验性Web API,包含Gamepad API的更新迭代支持

系统权限配置(核心修复项)

Gazebo可正常运行是因为适配了spacenavd的上层接口,而Chrome的Gamepad API默认直接读取底层HID输入设备,需要用户持有对应设备的读写权限,操作步骤:

  • 新建udev规则文件:执行命令 sudo nano /etc/udev/rules.d/99-spacemouse.rules
  • 写入以下规则内容:
SUBSYSTEM=="usb", ATTRS{idVendor}=="256f", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="input", ATTRS{idVendor}=="256f", MODE="0666", GROUP="plugdev"
  • 保存退出后执行命令重载udev规则:sudo udevadm control --reload-rules && sudo udevadm trigger
  • 将当前用户加入设备访问组:sudo usermod -aG plugdev $USER
  • 注销当前用户重新登录后生效

适配层桥接方案

如果以上操作后依然无法识别,可以使用信号桥接工具将SpaceMouse信号模拟为标准游戏手柄信号:

  • 安装依赖包:sudo apt install libspnav-dev libusb-1.0-0-dev git build-essential
  • 编译安装spacenav-gamepad-bridge工具,启动后保持后台运行即可,Chrome会将SpaceMouse识别为标准XBox类游戏控制器,完全适配Gamepad API的读取逻辑

注意事项

  • 不要使用Snap/Flatpak格式安装的Chrome,沙箱限制会阻止HID设备的访问,建议安装官方deb格式的Chrome包
  • 不要同时运行3DxWare 10和spacenavd,二者会抢占设备导致识别冲突,保留spacenavd即可

内容的提问来源于stack exchange,提问作者Mateusz Goik

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 18:24:08