-
Notifications
You must be signed in to change notification settings - Fork 196
udev rules list
On Linux, OpenHMD (and other XR runtimes like SteamVR and Monado) require direct access to the USB interface of HMDs. For this purpose, respective udev rules have to be installed. After installing udev rules with any method, udev has to be told to reload rules:
udevadm control --reload-rules
udevadm trigger
It might be necessary to re-plug the HMD, and if everything fails a reboot should do the trick.
A well maintained and consistent set of udev rules for popular XR hardware can be found in xr-hardware.
xr-hardware has been packaged for these distributions:
- Archlinux AUR xr-hardware-git
- Ubuntu xr-hardware in the Monado PPA
On other distributions the udev rules from xr-hardware can be installed by copying 70-xrhardware.rules
into /usr/lib/udev/rules.d/70-xrhardware.rules
or running sudo make install
.
If your HMD is not supported by xr-hardware or you want to create your own rules instead, here is how.
You can utilize these devices with hidapi via libusb:
echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="2833", MODE="0666", GROUP="plugdev"' >> /etc/udev/rules.d/83-hmd.rules
udevadm control --reload-rules
or hidraw:
echo 'KERNEL=="hidraw*", ATTRS{busnum}=="1", ATTRS{idVendor}=="2833", MODE="0666", GROUP="plugdev"' >> /etc/udev/rules.d/83-hmd.rules
udevadm control --reload-rules
In this case the idVendor
is 2833
, which is the vendor ID from Oculus used for their HID devices.
This can be replaced by any vendor to add permission to use those devices.
The required ID can also be found when running lsusb
and then looking at the vendor.
Windows Mixed Reality Motion Controllers produce touchscreen events, which can cause spurious selections, window movement, and onscreen keyboard popups on the desktop when touching the touchpad. To avoid this, they can be blacklisted from libinput:
echo 'ENV{LIBINPUT_DEVICE_GROUP}=="5/45e/65b*", ENV{LIBINPUT_IGNORE_DEVICE}="1"' >> /etc/udev/rules.d/83-hmd.rules
udevadm control --reload-rules
If more than one ID is listed, this means multiple vendors have worked on a device and require all IDs to function properly.
Device | ID |
---|---|
Oculus | 2833 |
Vive | 0bb4 |
28de | |
Deepoon | 0483 |
Sony PSVR | 054c |
OSVR | 1532 |
Pimax 4K | 2833 |
0483 | |
NOLO CV1 | 0483 |
Samsung GearVR | 04E8 |
Samsung Odyssey+ | 04e8 |
045e | |
HP Mixed Reality | 03F0 |
Lenovo Mixed Reality | 045e |
DreamWorld DreamGlass AR | 0483 |
Dell Visor | 04b4 |
045e |