protonscr

Error Code 108 with Vive Pro + Ubuntu Bionic Beaver

steamvrclosed
ValveSoftware/SteamVR-for-Linux#131 · opened 2018-09-17 by georgewsinger · updated 2019-05-03 · 24 comments · github
Ggeorgewsinger 2018-09-17 github

Your system information

  • Steam client version (build number or date): "Steam package versions: 1536436120"
  • Distribution (e.g. Ubuntu): Ubuntu Bionic Beaver 18.04.1 LTS
  • Graphics driver version (run nvidia-settings): 396.54
  • Gist for SteamVR System Information: Here.
  • Opted into Steam client beta?: No (AFAIK)
  • Opted into SteamVR beta?: No (but error persists in Beta).
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

As shown above, I am getting an error 108. Some relevant snippets from my logs (see gist above) are as follows:

Steps for reproducing this issue:

  1. Install a fresh Ubuntu Bionic 18.04 from scratch (with HMD Vive Pro plugged in).
  2. Update graphics drivers to nvidia 396.
  3. Install steam and SteamVR.
  4. Update udev rules per the README.
  5. Launch SteamVR.
  6. Receive 108 Error.
MMuraliSridhar 2018-09-18 github

same issue.. any help ?

Ggeorgewsinger 2018-09-18 github

@MuraliSridhar I just realized this could be an issue with our Vive Pro + Linux combo. Has even a single person confirmed that the Vive Pro works on Linux?

DDiegoAG 2018-09-21 github

Your system information

  • Steam client version (build number or date): v1537398481 (and just right now v1537309452)
  • Distribution (e.g. Ubuntu): Ubuntu Bionic Beaver 18.04.1 LTS
  • Graphics driver version (run nvidia-settings): amdgpu-pro-18.30-641594
  • Gist for SteamVR System Information:
  • Opted into Steam client beta?: [Yes/No] NO (AFAIK)
  • Opted into SteamVR beta?: [Yes/No] NO (AFAIK) but menu says its beta
  • Have you checked for system updates?: [Yes/No] YES

Please describe your issue in as much detail as possible:

captura de pantalla de 2018-09-21 19-31-31
As shown above, I expected to start SteamVR with Vive Pro + Vega 64 but I am getting an error 108. Some relevant snippets from my logs (see gist ) are as follows:
https://gist.github.com/DiegoAG/343f34f0bfa0a977c57ef4da19ea5718

Steps for reproducing this issue:

  1. Install a fresh Ubuntu Bionic 18.04 from scratch.
  2. Update graphics drivers to amd latest nowadays amdgpu-pro-18.30-641594
  3. Install steam and SteamVR.
  4. Update udev rules per the README.
  5. Plugin Htc Vive Pro
  6. Launch SteamVR.
  7. Receive 108 Error.
Ggeorgewsinger 2018-09-22 github

Since @DiegoAG is getting the error on AMD, the only constants left are Ubuntu Bionic 18.04 or the Vive Pro.

Llboklin 2018-09-22 github

Considering my Vive works on Kubuntu 18.04 I'd say it boils down to the Vive Pro

DDiegoAG 2018-09-24 github

I've just realised that I haven't launch Steam as root; as writen in the troubleshooting page:
"Make sure you are running Steam as an administrator."
I'll give it a go in 9h

Llboklin 2018-09-24 github

I don't think you're supposed to run Steam as root.. that sounds like something that might apply to Windows, not Linux.

Kkisak-valve maintainer 2018-09-24 github

Hello @DiegoAG, Steam on Linux does not benefit in any way from running as root, that's only a needless security risk.

If you're feeling adventurous, you could give my PPA a try, but I do not have a Vive Pro to test locally.

DDiegoAG 2018-09-25 github

Hello @DiegoAG, Steam on Linux does not benefit in any way from running as root, that's only a needless security risk.

If you're feeling adventurous, you could give my PPA a try, but I do not have a Vive Pro to test locally.

I was a bit surprised (what on earth!!!) about the execution as an administrator . I will try Kisak PPA in 12h and let you know.
Thanks in advance

MMuraliSridhar 2018-10-08 github

i see same issue with HTC VIVE
running steam on non-root- hit with 108 error
with root - 108 error not observed

Ggeorgewsinger 2018-11-29 github

Any progress on this? Has a single person confirmed that the Vive Pro can run in Linux?

Rrwbaumg 2019-01-05 github

I am also getting the 108 error, and the Vive Pro always shows as disconnected in the Xorg logs. I have yet to get the Vive Pro to display anything under Linux (the headset screens just stay blank and the LED is solid red).

I'm using the official Nvidia drivers 410.93 (on Bionic as well) for testing this - looking at the release notes for Xorg and the comment about requiring 1.20 or higher for AMD in the README leads me to think it might be related to Xorg 1.19, which is packaged with Bionic.

I plan to upgrade to Cosmic today and will post here if I have better luck.

Rrwbaumg 2019-02-20 github

Sorry for not getting back to this for a while. I'll try to make up for it with some details; if you want the short version scroll to the end.

I can confirm that the Vive Pro is working with SteamVR on kernel 4.18 + Xorg 1.20.1 (included in Ubuntu Cosmic 18.10) and the NVIDIA binary drivers 410.93. It is actually working quite well with my HTC Vive Pro on an Ubuntu 18.10 test HVM (using PCI passthrough for GPU and USB), all things considered.

I'm not yet sure which version bump allowed it to work (my guess is probably both), but I know that X.org completed VR HMD support as part of their 1.20 release cycle and the kernel had some changes in 4.15, so I imagine you likely need to upgrade both the kernel and Xorg.

The Linux kernel had some important changes to support the Vive Pro, but Ubuntu maintains their own kernel, and do not always backport patches like they should. As a result, the kernel that ships with Xenial is missing important v4.15 kernel patches. You can check this for yourself by looking at their Git log (https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/xenial/log/).

The kernel commits I found that appear to be relevant here:

  • acb1d8e: drm/edid: quirk HTC vive headset as non-desktop. [v2]
  • 66660d4: drm: add connector info/property for non-desktop displays [v2]
  • c353bfc: Merge tag 'drm-for-v4.15-part2' of git://people.freedesktop.org/~airl…

EDIT: Bionic has the right kernel patches but ships with an older Xorg (v1.19.6). Updating Xorg to v1.20 or later should be enough to get the Vive Pro to work with Bionic. You can try installing the xserver-xorg-hwe-18.04 package for Xorg 1.20.1 (remember to rebuild GPU drivers after upgrading).

I was not able to narrow down the specific commits for X.org (please share if you know them), but there is mention of VR HMD support on Phoronix blog:

I will post back if I happen to learn anything more; for now I'm just starting to test everything. A couple things worth mentioning right away:

  • Direct Rendering mode does not work; neither does SteamVR restart (just quits).
  • The Headset Firmware updater fails every time. All other firmware installers work fine.
  • Framerate is lower than expected (but that could be just my particular testing setup).

TL;DR - SteamVR will not work with the Vive Pro on Xenial or even Bionic; you will need to upgrade to Cosmic (18.10) or later. Alternatively you can try upgrading Xorg using the xserver-xorg-hwe-18.04 package (not verified), while ensuring kernel version 4.15 or later. Remember to rebuild/reinstall GPU drivers after upgrading.

Kkisak-valve maintainer 2019-02-20 github

It should be noted that Ubuntu 18.04 currently has xorg 1.20.1 in the hwe stack with the xserver-xorg-hwe-18.04 package pulling it in. Be careful if using it with a PPA with an xorg ddx because that could be built against the older X server.

Rrwbaumg 2019-02-20 github

@kisak-valve Thanks for clarifying. Indeed xserver-xorg-hwe-18.04 should be enough to get the Vive Pro to work on Bionic, although I'm not able to test that at the moment.

I'm not sure if the Vive Pro will work with open-source DDX packages - I've only had success with the binary NVidia drivers (I don't have AMD cards to test with). They will need to be rebuilt (re-running the installer is probably easiest) after updating Xorg and/or kernel version.

As a reminder, you can check the installed Xorg version by running sudo Xorg -version (only console users and root can run Xorg).

Rrwbaumg 2019-02-28 github

Just another quick update; Direct Rendering Mode (DRM) is working on Cosmic :+1: . I'm seeing a strange glitch that makes it appear as though Xorg has crashed just as the headset is connecting, but once the HMD comes up the desktop comes back and no errors in the system logs. I haven't really gone through the Steam logs yet, so I may post another update here if I find anything that might be relevant to this ticket - otherwise this issue is resolved for me.

In my opinion the main issue here is poor documentation with regards to SteamVR and HMD requirements, but there are definitely some other issues I would like to pursue in other tickets over the next few weeks. I'm also starting to wonder what might be required to get headsets like the Vive Pro Eye to work under Linux, or if they are already supported with the current stack.

@georgewsinger: Have you had any success getting your Vive Pro to work yet?

JJustAndreww 2019-04-09 github

Installed 18.10 Ubuntu (Kernel 4.18+, XOrg 1.20.1, Latest nVidia driver, 1.3.22 SteamVR beta), but still getting 108 error with Vive Pro (Lighthouse 2.0 system):
image

Here is from logs:

Tue Apr 09 2019 21:40:09.239887 - lighthouse:     28DE, 2300: s/n LHR-722CB678: LHR (interface 0)
Tue Apr 09 2019 21:40:09.239893 - lighthouse:     28DE, 2300: s/n LHR-722CB678: LHR (interface 1)
Tue Apr 09 2019 21:40:09.239899 - lighthouse:     28DE, 2300: s/n LHR-722CB678: LHR (interface 2)
Tue Apr 09 2019 21:40:09.239904 - lighthouse:     28DE, 2101: s/n 410047DA8C: Watchman Dongle (interface 0)
Tue Apr 09 2019 21:40:09.239909 - lighthouse:     28DE, 2101: s/n 8A3DD4FB53: Watchman Dongle (interface 0)
Tue Apr 09 2019 21:40:09.239914 - lighthouse:     BB4, 309: s/n 206333504156: VIVE Pro (interface 0)
Tue Apr 09 2019 21:40:09.239920 - lighthouse:     BB4, 30B: s/n /dev/hidraw4: VIVE Pro Mutimedia Audio (interface 0)
Tue Apr 09 2019 21:40:09.239934 - lighthouse: CHidDevice: Can't open USB device VID 000028de, PID 00002300 LHR-722CB678 1
Tue Apr 09 2019 21:40:09.239939 - lighthouse: Could not open device 10462, 8960, LHR-722CB678 to read its config
Tue Apr 09 2019 21:40:09.239944 - lighthouse: Unable to read device config for vid 0x28DE pid 0x2300 serial LHR-722CB678. Rejecting it
Tue Apr 09 2019 21:40:09.239958 - Driver 'lighthouse' started activation of tracked device with serial number 'LHR-722CB678'
Tue Apr 09 2019 21:40:09.240003 -   driver lighthouse implements interfaces IVRSettings_002 ITrackedDeviceServerDriver_005 IVRDisplayComponent_002 IVRDriverDirectModeComponent_005 IVRCameraComponent_003 IServerTrackedDeviceProvider_004 IVRWatchdogProvider_001 IVRVirtualDisplay_002 IVRDriverManager_001 IVRResources_001 IVRCompositorPluginProvider_001 
Tue Apr 09 2019 21:40:09.240011 - Loaded server driver lighthouse (IServerTrackedDeviceProvider_004) from /home/silent/.steam/steamapps/common/SteamVR/drivers/lighthouse/bin/linux64/driver_lighthouse.so
Tue Apr 09 2019 21:40:09.240017 - Driver lighthouse has no suitable devices.

Regular Vive (not Pro) works just fine even on Ubuntu 18.04.

Is there any hints or tips to make Vive Pro work as expected?

Kkisak-valve maintainer 2019-04-09 github

Hello @rbt2008, lighthouse: CHidDevice: Can't open USB device VID 000028de, PID 00002300 LHR-722CB678 1 reads like a udev permissions issue.

~I'm guessing you have steam-devices, but that doesn't have a config line that handles 28de:2300. You could try adding https://github.com/ValveSoftware/steam-devices/blob/master/60-steam-input.rules#L7 to your udev rules.~

EDIT: I was looking at 60-HTC-Vive-perms.rules and the linked line is in 99-steam-controller-perms.rules. Maybe the steam controller rules are too late?

CCasuallynoted 2019-04-09 github

Installed 18.10 Ubuntu (Kernel 4.18+, XOrg 1.20.1, Latest nVidia driver, 1.3.22 SteamVR beta), but still getting 108 error with Vive Pro (Lighthouse 2.0 system): ...

@rbt2008 Where are logs located? Thinking they may be able to help me figure out what’s going on with my Pro as well.

Sent with GitHawk

JJustAndreww 2019-04-09 github

@Casuallynoted
I'm looking for logs in web ui: http://127.0.0.1:8998/console/index.html

@kisak-valve
There is udev rules defined (as stated in docs here: https://github.com/ValveSoftware/SteamVR-for-Linux#usb-device-requirements), file /lib/udev/rules.d/60-HTC-Vive-perms.rules exists and contains all the required info.

Not sure that I understand compltely what to do with controller rules - could you please elaborate?

Thanks!

Kkisak-valve maintainer 2019-04-09 github

Might as well try adding KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2300", TAG+="uaccess" to /lib/udev/rules.d/60-HTC-Vive-perms.rules and reload the rules then re-plug the vive (or just reboot) and check if it makes a difference.

JJustAndreww 2019-04-09 github

After adding 60-steam-input.rules to udev dir and I was able to get some output in HMD, but only for a few seconds. Than I got XOrg crash and image is freezing on desktop. Only reebot helps.

Will try to modify Vive-perms according to your message.

Thanks!

Nneopostmodern 2019-04-23 github

ATTRS{idProduct}=="2300" solved it for me; could that please be added to the README?

Kkisak-valve maintainer 2019-05-03 github

The VR udev rule in the Valve-provided Steam package has had usb ids for the Vive Pro since Steam 1.0.0.55. The README.md has been updated to point users to the steam-devices repo which should get updated when more devices are added to udev rule in the Steam package.

If you're using a distro-provided Steam package that is missing 28de:2300, their udev rule for HMDs will need to be updated by the distro's package maintainer for Steam or add the steam-devices variant linked above.

Nothing extracted yet.