Valve Index

Table of content

Preamble

The Valve Index is a consumer virtual reality headset created and manufactured by Valve. The headset was released on June 28 2019. The Index is a second-generation headset and the first to be fully manufactured by Valve.

From the very beginning it was possible to run those devices on Linux. However with some limitations, drawbacks and workarounds. Purpose of this document is to collect those workaround and limitations and how to deal with them.

Most recent tests and work was conducted on an up to date Arch Linux desktop running SteamVR.

Setup

When first launching SteamVR I got a notice that root privilegues are required and if confirmed, it dies with an error. Workaround is executing the setup script in a terminal which can ask you for your sudo password: ~/.local/share/Steam/steamapps/common/SteamVR/bin/vrsetup.sh or ~/.steam/root/steamapps/common/SteamVR/bin/vrsetup.sh

Video

tldr: X11 is dead; use wayland.

X11

Tested with i3 Works somewhat out of the box. With limitations like the window which is supposed to show what the person wearing the headset sees simply does not diesplay anything. Same goes with the settings from your desktop. The window which is supposed to show the setting just stays emtpy/dead. Settings can be adjusted wearing the headset though, so inside VR.

Wayland Sway

Sway and SteamVR just “works”. Good performance, did not notice any limitations. The “Setup” step might be required.

Wayland Gnome

Did not test Gnome myself, but got positive reports. The “Setup” step might be required.

Audio

The most important bit of information is that the Index has two audio devices. One mic/source, which is available through usb. And one (stereo?) Sink/Output though DisplayPort. Keep that in mind when troubleshooting!

Pulse Audio

This was some time ago, but I know of people who ran it without issue using pulse audio in the past. They all run Pipewire by now.

Pipewire

Pipewire registers your graphics card as one audio device. I can imagine it is possible to change that, but I did not find the time to investigate yet.
If you have a screen with speakers on port 1, this will be used if you select your graphics card as output device unless you change it. Install pavucontrol (pavuctonrol-qt) and run it. Switch to the configuration tab and find your graphics card. (in my case: Navi 31 HDMI/DP-Audio) Under Profile select the right port you’ve connected your Index to. I’ve connected it to the second DP of my card, so I have to select a “(HDMI 2)” Entry. “Digital Stereo” is confirmed working. I’ve not tested 5.1 or 7.1.