ValveSoftware / SteamVR-for-Linux

Issue tracker for the Linux port of SteamVR
931 stars 45 forks source link

Error: Shared IPC Compositor Connect Response (307) #194

Open Mattia98 opened 5 years ago

Mattia98 commented 5 years ago

Your system information

Please describe your issue in as much detail as possible:

SteamVR gives an error on startup. Afterwards it starts, but my HTC Vive stays off.

https://imgur.com/a/xWehi6C

Steps for reproducing this issue:

  1. Fresh system install
  2. Install SteamVR
  3. Start SteamVR
lostgoat commented 5 years ago

Hi,

It seems like vrcompositor is crashing on your system during startup.

Can you let me know the following information:

  1. What monitors you have connected (resolution of each one and connection type e.g. HDMI/DP/etc.)
  2. Can you try the SteamVR beta and see if the issue persists
Mattia98 commented 5 years ago

SteamVR beta behaves a bit differently, but still doesn't work. With the beta the widget pops up first, and then the error message. This time a slightly different one. https://imgur.com/a/5ywKAHj

The Vive Linkbox is connected via HDMI to an USB-C dock that is connected to my laptop. The USB is also connected to the dock. I'm trying to get this to work on my laptop because I'd like to bring the Vive to another place sometime. It works fine on my desktop (other config though).

Here is the xrandr output if it helps:

Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
eDP-1-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
   1920x1080     60.03*+  60.01    59.97    59.96    59.93  
   1680x1050     59.95    59.88  
   1600x1024     60.17  
   1400x1050     59.98  
   1600x900      59.99    59.94    59.95    59.82  
   1280x1024     60.02  
   1440x900      59.89  
   1400x900      59.96    59.88  
   1280x960      60.00  
   1440x810      60.00    59.97  
   1368x768      59.88    59.85  
   1360x768      59.80    59.96  
   1280x800      59.99    59.97    59.81    59.91  
   1152x864      60.00  
   1280x720      60.00    59.99    59.86    59.74  
   1024x768      60.04    60.00  
   960x720       60.00  
   928x696       60.05  
   896x672       60.01  
   1024x576      59.95    59.96    59.90    59.82  
   960x600       59.93    60.00  
   960x540       59.96    59.99    59.63    59.82  
   800x600       60.00    60.32    56.25  
   840x525       60.01    59.88  
   864x486       59.92    59.57  
   800x512       60.17  
   700x525       59.98  
   800x450       59.95    59.82  
   640x512       60.02  
   720x450       59.89  
   700x450       59.96    59.88  
   640x480       60.00    59.94  
   720x405       59.51    58.99  
   684x384       59.88    59.85  
   680x384       59.80    59.96  
   640x400       59.88    59.98  
   576x432       60.06  
   640x360       59.86    59.83    59.84    59.32  
   512x384       60.00  
   512x288       60.00    59.92  
   480x270       59.63    59.82  
   400x300       60.32    56.34  
   432x243       59.92    59.57  
   320x240       60.05  
   360x202       59.51    59.13  
   320x180       59.84    59.32  
DP-1-1 disconnected (normal left inverted right x axis y axis)
   2160x1200     89.53 +
   720x480       60.00    59.94  
   640x480       60.00    59.94  
HDMI-1-1 disconnected (normal left inverted right x axis y axis)
lostgoat commented 5 years ago

The Vive Linkbox is connected via HDMI to an USB-C dock that is connected to my laptop

This might be the source of the issue. Can you provide me some info on the dock like model # or a link to the product website?

Additionally, can you:

Some USB-C video adapters tend to be very problematic :(

Mattia98 commented 5 years ago

I was afraid of that... According to amazon, the model is AUKEY CB-C55 (link). Have you already had similar experiences with laptops?

The dump folder stays empty with the beta because it does not crash. The stable version however does occasionally crash, not always (dump of that one: https://mega.nz/#!TosFHKYJ!jkRRi_K0MT42nq9vrUc3L2MRr1sx4xGtMyRm2AoRO4g) (dmesg with beta: https://gist.github.com/Mattia98/4502db3342d2664528254b7d9e8b556b).

One thing I noticed with beta is that the vrcompositor dies immediately and becomes a zombie until you close the monitor. https://imgur.com/a/VZyzLJM

kisak-valve commented 5 years ago

For reference, the attached minidumps are DUMP_REQUESTED in crashhandler.so.

lostgoat commented 5 years ago

Thanks for the info @Mattia98

Have you already had similar experiences with laptops?

It really depends. Some laptops have the USB-c ports incorrectly wired to the graphics card. Other times the USB-c breakout box does something weird with the video signal.

Two more things sorry:

Mattia98 commented 5 years ago

You can find the model of the laptop in dmesg. In this case on line 49: Lenovo YOGA 720-15IKB

Here the dmesg: https://gist.github.com/Mattia98/48d533ba6903f3b8132b809441d400c6 This time it just hanged for a few minutes and crashed without an error message. (dump: https://mega.nz/#!y4sSxAIb!XpIaPbGHlj7Bw8CpOzEhgc0mZewLlhVlk4Y8Fvtupgo)

h1z1 commented 5 years ago

I've hit this many, many times. There's no reason from what I can tell, in my case it's the same hardware. When it starts dropping off like that I either have to restart the linkbox or reboot because eventually it will crash the host. Seems to happen more often with controllers plugged in / charging which would lead one to believe it's a power issue with the linkbox (or sleep).

TL;dr - Kernel bug and hardware. Try only charging from the wall and use a dedicated powered usb hub.

First wave shortly after boot

[ 52.430309] usb 3-1.4.1.6: reset full-speed USB device number 11 using xhci_hcd
...
[  345.828129] usb 3-1.4.1.7: reset full-speed USB device number 12 using xhci_hcd
[  347.232050] usb 3-1.4.1.7: reset full-speed USB device number 12 using xhci_hcd

Upstream hub finally gives up..

Camera disconnects OK

[ 371.696922] usb 3-1.4.1.2: USB disconnect, device number 9

Everything else fails.. this is a kernel bug, the hub is gone. Should be fixed in newer kernels.

[  371.783807] hub 3-1.4.1:1.0: hub_ext_port_status failed (err = -71)
[  371.783812] hub_port_connect: 15 callbacks suppressed

[  371.783812] usb 3-1.4.1-port2: connect-debounce failed <-- Onboard USB Hub

[  371.783920] hub 3-1.4.1:1.0: hub_ext_port_status failed (err = -71)

Kernel logs it .. 100ms later

[  371.953928] usb 3-1.4.1: USB disconnect, device number 6   -- Vive USB Hub
[  371.953934] usb 3-1.4.1.1: USB disconnect, device number 8 -- Lighthouse
[  371.956268] usb 3-1.4.1.5: USB disconnect, device number 10 -- Vive
[  371.957968] usb 3-1.4.1.6: USB disconnect, device number 11 -- Watchman 1
[  371.959396] usb 3-1.4.1.7: USB disconnect, device number 12 -- Watchman 2

Internal hub comes back 600-ish ms later

[  372.676173] usb 3-1.4.1: new high-speed USB device number 13 using xhci_hcd
[  372.776500] usb 3-1.4.1: New USB device found, idVendor=0bb4, idProduct=2134, bcdDevice=60.80
[  372.776504] usb 3-1.4.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  372.776507] usb 3-1.4.1: Product: USB2137B
[  372.776509] usb 3-1.4.1: Manufacturer: SMSC
[  372.777924] hub 3-1.4.1:1.0: USB hub found
[  372.778021] hub 3-1.4.1:1.0: 7 ports detected

In both cases the bulk of resets were due to the same watchman:

[ 4.246127] usb 3-1.4.1.6: new full-speed USB device number 11 using xhci_hcd
[ 4.442138] usb 3-1.4.1.7: new full-speed USB device number 12 using xhci_hcd

[ 4.351619] usb 3-1.4.1.6: SerialNumber: 741512D582
[ 4.549203] usb 3-1.4.1.7: SerialNumber: 7742B1E6B2

[ 52.610425] usb 3-1.4.1.7: reset full-speed USB device number 12 using xhci_hcd

[ 379.962694] usb 3-1.4.1.6: SerialNumber: 741512D582
[ 380.303080] usb 3-1.4.1.7: SerialNumber: 7742B1E6B2
[ 1373.616115] usb 3-1.4.1.7: reset full-speed USB device number 16 using xhci_hcd

[ 1630.523385] usb 3-1.4.1.6: SerialNumber: 741512D582
[ 1630.867647] usb 3-1.4.1.7: SerialNumber: 7742B1E6B2
Mattia98 commented 5 years ago

I wanted to test again with a newer kernel so I downloaded and compiled the newest one and tested again. It still didn't work, but I found out something new. At first it worked and I was able to go through the setup and start SteamVR. After putting on the headset the performance was sub-par and it was glitching quite a bit. After some thought I remembered that I left the PRIME settings to Intel in the nVidia control panel. After setting it back to performance mode I tried again and it stopped working. SteamVR would not start. So I guess it's a wiring problem like lostgoat suggested? Anyways, I attach the logs for both variants https://gist.github.com/Mattia98/ed220f070bf154d35cb31c840bf75015.