SteamVR-for-Linux
SteamVR-for-Linux copied to clipboard
Room setup won't start
Your system information
- Steam client version (build number or date): Jul 20 2021, at 22:25:57
- Distribution (e.g. Ubuntu): Ubuntu Studio 21.04
- Graphics driver version (run nvidia-settings): 470.57.02
- Gist for SteamVR System Information: https://gist.github.com/davegorst/2f946eaee961a145b26bb49696f5eff8
- Opted into Steam client beta?: No
- Opted into SteamVR beta?: Yes
- Have you checked for system updates? Yes
Please describe your issue in as much detail as possible:
Moved to another machine with a new nVidia GPU (3060). System appears to be working (headset display working and showing bases and controllers), but attempting to start room setup opens inital window then immediately fails.
gdb reporting an issue with libmono.so when starting from command line :
Thread 4 "steamvr_room_se" received signal SIGPWR, Power fail/restart.
[Switching to Thread 0x7ffff1ba3640 (LWP 21426)]
__futex_abstimed_wait_common64 (cancel=true, private=
Steps for reproducing this issue:
- Plug in controllers and headset, set up base stations and start up SteamVR
- Start room setup - fails
- Start up room setup from tools directory with debugger (from .local/share/Steam/steamapps/common/SteamVR/tools/steamvr_room_setup/linux64/) - room setup fails with an error indicating SIGPWR/Mono.
Hello @davegorst, not that it directly helps, but the SIGPWR backtrace is a red herring and expected. If you want to use GDB to troubleshoot mono, then you need to ignore some signals with handle SIGXCPU SIG33 SIG35 SIGPWR nostop noprint (https://stackoverflow.com/a/27964472).
Interesting. Thanks.
OK - a bit further now :
#1 0x00007fff6c49174d in CSharedSemaphoreLinux::ImportVulkanSemaphore(VkDevice_T*, unsigned long) () at /home/dgorst/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrclient.so #2 0x00007fff6c2c7855 in CVRCompositorSharedTextures::UpdateTextureSet(CVRCompositorSharedTextures::Params const*, VRCompositorState_TextureSet_t*) () at /home/dgorst/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrclient.so #3 0x00007fff6c2ba5c1 in CVRCompositorClient::SubmitWithArrayIndex(vr::EVREye, vr::Texture_t const*, unsigned int, vr::VRTextureBounds_t const*, vr::EVRSubmitFlags) () at /home/dgorst/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrclient.so #4 0x00000000011145ed in () #5 0x00000000010f6cc6 in () #6 0x00000000012227b6 in () #7 0x000000000122b32b in () #8 0x00000000012206d7 in () #9 0x00000000008d8c78 in () #10 0x00007ffff7f6f450 in start_thread (arg=0x7fff86ffe640) at pthread_create.c:473 #11 0x00007ffff7b02d53 in clone () --Type <RET> for more, q to quit, c to continue without paging-- at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Seems to be dying while starting the compositor :
Have you tried rolling back to v1.14 in the betas tab to see if it'll let you complete room setup there?
Yeah - I rolled forward to the beta to see if it fixed the issue. I'm going to try a full reinstall and see if that helps once I've finished backing everything up.
Just a blind guess here. Ubuntu 21.04 ships with Wayland as default which doesn't work with SteamVR yet. Was in a similar situation last week when I installed Arch, devices light up in SteamVR, but they're not detected in Room Setup, and SteamVR throws an error 307 IIRC. Fixed by switching to X11 instead of Wayland at login.
I also can't start Steam VR Room setup. Running KDE x11 on Arch.
Found path: /home/joe/.local/share/Steam/steamapps/common/SteamVR/tools/steamvr_room_setup/linux64/steamvr_room_setup
Mono path[0] = '/home/joe/.local/share/Steam/steamapps/common/SteamVR/tools/steamvr_room_setup/linux64/steamvr_room_setup_Data/Managed'
Mono path[1] = '/home/joe/.local/share/Steam/steamapps/common/SteamVR/tools/steamvr_room_setup/linux64/steamvr_room_setup_Data/Mono'
Mono config path = '/home/joe/.local/share/Steam/steamapps/common/SteamVR/tools/steamvr_room_setup/linux64/steamvr_room_setup_Data/Mono/etc'
Preloaded 'ScreenSelector.so'
Preloaded 'libopenvr_api.so'
[1] 245041 abort (core dumped) ./steamvr_room_setup
Switching back to the 20.04 LTS release seems to have fixed the issue. Hopefully it'll be fixed soon for 21.04+.
For the record, same issue with EndeavourOS rolling. X11 GNOME 40.4 with RX 5700 XT amdgpu driver, all my other XR stuff works fine including Monado. So that narrows the issue down a bit more.
The issue was totally resolved by switching from amdvlk to vulkan-radeon. Looks like AMD's vulkan driver is out of date but Mesa's isn't!
Same issue on NixOS 22.05: https://github.com/NixOS/nixpkgs/issues/177197
Same issue on NixOS 22.05: NixOS/nixpkgs#177197
Likely the NixOS issue is entirely due to how the NixOS system is designed and more similar to the issue that SteamVR has in flatpak right now.
https://github.com/flathub/com.valvesoftware.Steam/issues/898
@HadetTheUndying i have actually used that workaround to get rid of the error message, but the room setup does still not start.
@HadetTheUndying i have actually used that workaround to get rid of the error message, but the room setup does still not start.
I'm wondering if NixOS still has issues with udev. I know it was an issue before with controllers
I'm wondering if NixOS still has issues with udev.
I don't think so. The option
hardware.steam-hardware.enable = true;
does install udev rules. The Valve Index and Controllers and PS4 Controller works.
I am also having this issue on Ubuntu 22.04 LTS. Having tried to roll back under the betas in steam, I got an error saying that the vrcompositor crashed. Is the best solution still rolling back to ubuntu 20.04 LTS?
Alright, so after much fiddling, it turns out that rolling back to Ubuntu 20.04 LTS was not the best solution. I'm writing what I did that worked for me. 0) Install Ubuntu 22.04 LTS
- Update everything from the command line (sudo apt update; sudo apt upgrade)
- install steam using: sudo apt install steam
- install steamvr from within steam (Before plugging in the headset)
- go to steam->settings->steam play and make sure that experimental proton isn't checked
- go to your library and search for steamvr
- right click steamvr from your library and select properties
- click betas and select the linux beta
- after steamvr finishes switching to the linux beta (it will install something) plug in your headset
- click the little box in the upper right of the steam window that says "vr"
- if boxes pop up suggesting things (for example: "you can increase your resolution") click the buttons and restart steamvr over and over until it starts. This might take a few cycles of suggestions and restarting.
- you should now be able to right click the little steamvr helper box and select the option to set up the room
- after the room is set up, you want to go back to the betas and select "none"
- Finally, go back to steam->settings->steam play and check the box for experimental proton to be able to play games
These are the steps that I did to get it to work. I don't know if they will work for you, I also don't know why you have to leave the linux beta to be able to play games.
If you find yourself here, keep trying things until something works, and then share what worked for you.
Room setup is working fine for me on NixOS 22.11 with SteamVR 1.24.6.