protonscr

Cannot start VR by pressing button on Vive HMD

steamvropen
ValveSoftware/SteamVR-for-Linux#138 · opened 2018-10-04 by ryao · updated 2018-11-04 · 7 comments · github
Rryao 2018-10-04 github

Your system information

  • Steam client version (build number or date): 1538437695
  • Distribution (e.g. Ubuntu): Gentoo
  • Graphics driver version (run nvidia-settings): Nvidia 396.54.06
  • Gist for SteamVR System Information: https://gist.github.com/ryao/fe8d42b52fe3bb9df3f8ccdce8451cac
  • Opted into Steam client beta?: Yes
  • Opted into SteamVR beta?: No
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

On Windows, if you press the button on the side of the HMD, SteamVR starts with the Steam Home. On Linux, this button does nothing.

Steps for reproducing this issue:

  1. Start Linux machine.
  2. Optionally start Steam.
  3. Press button on side of VR headset.
PPlagman 2018-10-04 github

This used to work; could have regressed. Do you have all the needed udev rules installed and active? Do all the event device nodes that show up from USB when plugging in the Vive link box end up writable for the active seat?

Rryao 2018-10-04 github

I am physically miles away from my Vive at present and will be fairly worn out by the time I am able to check this today. I should have that information for you tomorrow though. Feel free to ping me in discord if I don’t provide it for some reason.

Also, Gentoo uses consolekit by default, so there is only 1 seat.

Kkisak-valve maintainer 2018-10-04 github

This works on my Gentoo test box with steam running.

Rryao 2018-10-05 github

@Plagman

Do you have all the needed udev rules installed and active?

I have /lib/udev/rules.d/60-steam-input.rules and /lib/udev/rules.d/60-steam-vr.rules from this tarball:

http://repo.steampowered.com/steam/pool/steam/s/steam/steam_1.0.0.56.tar.gz

I have done udevadm trigger to ensure that they are parsed by udev, but pressing that button doesn't launch SteamVR, even if Steam is open.

I also had 60-HTC-Vive-perms.rules there from the main page, but I removed it and reran udevadm trigger to see if it would make a difference:

https://github.com/ValveSoftware/SteamVR-for-Linux

Removing it made no difference.

Do all the event device nodes that show up from USB when plugging in the Vive link box end up writable for the active seat?

Not originally, but my current user now has permissions to all of these and I restarted X. No change.

If it matters, I am using libinput. I could switch back to evdev if that is a problem.

By the way, how is SteamVR supposed to hook into the system such that the button press launches it?

@kisak-valve Is your Gentoo testbox using systemd or OpenRC? Also, how old is it? My install was done in the past few weeks.

Kkisak-valve maintainer 2018-10-05 github

That gentoo install has been around for a fair while, setup with the 1.0.0.54-r3 steam-overlay ebuild. It uses openrc.

Hh1z1 2018-10-11 github

Funny, had this happen a few days ago. Light on the HMD was red, tried rebooting it without luck. At some point it went green but I still couldn't operate it. Found these in the logs (may not be related):

Mon Oct 08 2018 04:16:39.839789 - Processing message VRMsg_Connect from vrstartup (4198) took 0.278 seconds
Mon Oct 08 2018 04:16:39.908102 - lighthouse: LHR-2E711234 H: tdm sync acquired
Mon Oct 08 2018 04:16:40.029876 - New Connect message from /zvol/vm1/Steam/steamapps/common/SteamVR/bin/linux64/vrcompositor (VRApplication_Background) (Args: ) 4232 
Mon Oct 08 2018 04:16:40.030087 - Setting app openvr.component.vrcompositor PID to 4232
Mon Oct 08 2018 04:16:40.031099 - App openvr.component.vrcompositor (vive) loaded default binding file:///zvol/vm1/Steam/steamapps/common/SteamVR/resources/config/vrcompositor_bindings_vive.json
Mon Oct 08 2018 04:16:40.031122 - Using existing HMD lighthouse.LHR-2E711234
Mon Oct 08 2018 04:16:40.065007 - [Steam] Steam INIT.
Mon Oct 08 2018 04:16:40.068491 - Invalid input type click for controller (/user/head/input/system)
Mon Oct 08 2018 04:16:40.068530 - Invalid input type double for controller (/user/head/input/system)
Mon Oct 08 2018 04:16:40.068549 - Invalid input type long for controller (/user/head/input/system)
Mon Oct 08 2018 04:16:40.687311 - [Settings] Save Json Settings to /zvol/steam/config/steamvr.vrsettings

?

Bbeniwtv 2018-11-04 github

I'm using Manjaro and I am opted into the Steam and SteamVR betas.

For me, when Steam is open, pressing the button works, SteamVR starts.

If Steam is not started, nothing happens, but I guess that is normal as I am not aware you can launch something into the user session with udev.

Perhaps a small .desktop file in the XDG-autostart folder that runs a small app that listens to the button and launches Steam + SteamVR when it is pressed could solve that.

@ryao I have some rules in my udev (I never installed any udev rules myself, must be installed by Manjaro) that aren't listed on https://github.com/ValveSoftware/SteamVR-for-Linux


KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="2c87", TAG+="uaccess"

+++++++
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="0306", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="0309", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030a", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030b", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030c", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030e", TAG+="uaccess"
+++++++

/usr/lib/udev/rules.d/71-Valve-Controllers.rules:

# Valve USB devices
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0660", TAG+="uaccess"
# Steam Controller udev write access
KERNEL=="uinput", SUBSYSTEM=="misc", MODE="0660", TAG+="uaccess"

# Valve HID devices; USB
KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0660", TAG+="uaccess"

# Valve HID devices; bluetooth
KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0660", TAG+="uaccess"

/usr/lib/udev/rules.d/71-Valve-SteamVR.rules:

# Valve
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2101", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2000", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2050", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1043", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2011", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2012", TAG+="uaccess"

+++++++
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1142", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2010", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2021", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2022", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2150", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2300", TAG+="uaccess"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2301", TAG+="uaccess"
+++++++

/usr/lib/udev/rules.d/71-AlphaImagingTechnologyCo-SteamVR.rules:

# Alpha Imaging Technology Corp.
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="114d", ATTRS{idProduct}=="8a12", TAG+="uaccess"

Nothing extracted yet.