3D Mouse (3D 鼠标)
外观
- 这些设备也称为蝙蝠(bats)、飞行鼠标(flying mice)或魔杖(wands),通常通过超声波工作,并提供至少三个自由度。1990年代初,3DConnexion/罗技的SpaceMouse可能是最著名的例子。
注意 以下说明已在最基础的型号(Space Navigator)上进行测试并证明有效。
专有驱动程序自2014年以来未更新,需要进行可能不安全的黑客操作才能使其工作。
安装
有一个由spacenav项目维护的3Dconnexion设备的开源驱动程序。从支持spacenavd的软件简列表中,我们可以列出:
- Blender
- Freecad
- OpenSCAD
为了使其工作,必须满足三个条件:
- 设备必须被内核识别为输入设备
- spacenavd守护进程必须正在运行
- 应用程序必须使用spacenav支持进行编译。(blender 应该如此)
第一个要求应该在连接设备后自动满足。可以通过查看设备是否列在/proc/bus/input/devices来检查。
$ grep 3Dconnexion /proc/bus/input/devices
N: Name="3Dconnexion SpaceNavigator"
对于第二个点,请安装libspnav 和 spacenavdAUR。为了测试,最好以前台模式启动守护进程。输出应该类似于:
# spacenavd -v -d
Spacenav daemon 0.5 Device detection, parsing /proc/bus/input/devices using device: /dev/input/event21 device name: 3Dconnexion SpaceNavigator trying to open X11 display ":0" XAUTHORITY=/home/user/.Xauthority
如果工作正常,您可以通过按Ctrl+c来停止守护进程,然后使用以下服务来启动守护进程(应该随spacenavd一起提供)。
/etc/systemd/system/spacenavd.service
[Unit] Description=Userspace Daemon of the spacenav driver. [Service] Type=forking PIDFile=/var/run/spnavd.pid Environment=XAUTHORITY=/run/user/1000/gdm/Xauthority ExecStart=/usr/bin/spacenavd [Install] WantedBy=multi-user.target
现在一切都已启动并正在运行,并且所有支持的应用程序都应该能够使用3D鼠标。
故障排除
如果您收到设备输入访问错误,例如:
failed to open device: Permission denied
请按照udev#允许普通用户使用设备的说明操作,以允许用户访问输入设备。
参见
- 3dconnexion Linux论坛[死链 2025-08-15—HTTP 404]
- 使用的C程序来源[死链 2025-08-15—HTTP 404]
- 关于libXm.so.4和libXm.so.3的信息[死链 2025-08-15—HTTP 404]
- 开源驱动程序spacenav的网站
- 关于Spacemice的社区Wiki