I have the Valve Index and I’m looking to experiment with using Linux as a daily driver (again). I’ve tried the latest version of Pop!_OS since I heard people have had good experiences with that, but I get various errors when starting SteamVR (some bluetooth errors, and some others that I don’t remember the codes for) that don’t seem to have any fixes right now. I would rather not spend an entire day downloading and installing a big list of distro’s just to find out something doesn’t work, so can anyone detail their good experiences using VR (ideally the Index) on Linux?
I’m by no means afraid of the terminal, so if I have to set up a few things there then that’s fine, but I would rather that be kept to a relative minimum if possible.
I use my Index with Arch and it works just fine. I had to add a SteamVR profile to Corectrl in order for it to use the full GPU though.
Hmm, I’ve just tried a fresh install of Manjaro and it’s exhibiting the same problems as Pop. It could be something to do with my setup? Or maybe there’s some other Linux fuckery going on? It’s strange though, since Windows works just fine.
What kind of problems are you seeing? The only issue I had was stuttering but I fixed that with corectrl. I have an AMD GPU and running Wayland if that helps.
When launching SteamVR my headset turns on but all I see is a grey screen. In the left eye there’s a very glitchy image of my desktop that flickers rapidly. Disabling asynchronous reprojection fixes the flickering desktop but the view is still completely grey.
Also, my base stations don’t wake up when launching SteamVR. Trying to scan for them results in it find them but being unable to connect (with an unhelpful error message that says “failed to connect” or something along those lines). I assume the lack of base station connectivity is causing the grey screen in the headset, but I’m not sure how to get them to connect.
I’ve tried using
lh.py
to get them to wake up, but there’s some Bluetooth error that happens that I haven’t figured out yet:bluepy.btle.BTLEManagementError: Failed to execute management command 'le on' (code: 17, error: Invalid Index)
. I read somewhere that this might be because the Index’s Bluetooth chip doesn’t work on Linux and that I may have to buy a separate Bluetooth adapter :/Make sure bluetooth is set up correctly before buying anything. https://wiki.archlinux.org/title/bluetooth
One thing about the base stations is that you won’t be able to put them to sleep on Linux so you’ll have to disconnect them.
I’ve followed the Bluetooth instructions but now SteamVR crashes on launch.
I get a 109 error on the 1.14 Linux branch (no change from before).
On the beta branch it crashes as soon as I launch it (nothing specific, just a message saying SteamVR is disabled because it crashed and a Retry button). Upon retrying my entire system froze and I had to hard reset. Upon rebooting and trying again it broke the window manager so now I have no window chromes (if that’s what you call them on Linux? the top bar and title and min/max/close buttons) so I had to reboot again.
On the stable branch it seems to now work but there’s a very noticeable delay in my head movements, which is very nauseating. Disabling asynchronous reprojection seemed to slightly improve this, but it’s still noticeable.
If I can’t find a fix for that, it seems like Linux VR is still a pipe dream for me. But in any case, thanks for your help so far!
Regarding the lag, to fix that I had to make sure the gpu was using it’s full capacity which I managed to do by using the Corectrl app to add a SteamVR profile and setting it to max. Without it I would see the same issue where it didn’t move fast enough with my head movement.
Definitely more involved but I hope that helps.
It seems CoreCtrl doesn’t support Nvidia GPUs, which is unfortunate. I did also attempt to set PowerMizer mode to Maximum Performance in
nvidia-settings
but that didn’t help. I suppose I’ll need an AMD card to have a good Linux VR experience?