LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware
User Name
Password
Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?

Notices


Reply
  Search this Thread
Old 09-27-2019, 08:49 AM   #1
MirceaKitsune
Member
 
Registered: May 2009
Distribution: Manjaro
Posts: 156

Rep: Reputation: 1
VR headset not detected by X11


A few weeks ago I ordered my first VR headset which just arrived today. I have what seems to be a Linux specific issue which prevents me from being able to use it. As I paid 50$ to get it shipped from the US and don't wish to go through the process of returning an otherwise functional product, I'd strongly appreciate any response in helping me figure this problem out. My OS is openSUSE Tumbleweed x64 (KDE).

https://walmart.com/ip/VR-Tek-Window...Black/56206937

The headset simply doesn't start up: It's ignored and not detected as a display device. If I go into the Desktop Settings (System Settings - Hardware - Display and Monitor - Displays) I only see my normal monitor but not the headset.

The device isn't broken and is properly plugged in: It actually works in the post screen (when booting) and I can even see GRUB2 in it! But the moment I select the option to boot and the Plymouth splash screen appears, the device goes black. This is clear indication that X11 or another component is deliberately shutting it down and ignoring it.

I'm very confused as to why: It's a HDMI device and any such screen should automatically be handled by the video card. What do you believe is causing this, and what must I do so the device stays on after the OS boots? Thank you.
 
Old 09-27-2019, 09:10 AM   #2
MirceaKitsune
Member
 
Registered: May 2009
Distribution: Manjaro
Posts: 156

Original Poster
Rep: Reputation: 1
I asked on IRC and have an important clue already: The device is being detected by xrandr. DVI-D-1 is my normal monitor, HDMI-A-0 is the headset.

Code:
mircea@linux-qz0r:~> xrandr

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
HDMI-A-0 disconnected (normal left inverted right x axis y axis)
   1080x1920     60.12 +
   1280x720     100.00 
   1024x768      60.12 
   800x600       60.12 
   640x480       60.12 
DVI-D-0 disconnected (normal left inverted right x axis y axis)
DVI-D-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 510mm x 290mm
   1920x1080     60.00*+
   1680x1050     59.88 
   1400x1050     59.95 
   1600x900      60.00 
   1280x1024     75.02    60.02 
   1440x900      59.90 
   1280x800      59.91 
   1152x864      75.00 
   1280x720      60.00 
   1024x768      75.03    60.00 
   832x624       74.55 
   800x600       75.00    60.32    56.25 
   640x480       75.00    59.94 
   720x400       70.08
As suggested, I tried "xrandr --output HDMI-A-0 --auto --left-of DVI-D-1" but this has absolutely no effect and the device stays disconnected.
 
Old 09-27-2019, 09:19 AM   #3
MirceaKitsune
Member
 
Registered: May 2009
Distribution: Manjaro
Posts: 156

Original Poster
Rep: Reputation: 1
https://pastebin.com/raw/BBuRh0y1 The contents of /var/log/Xorg.0.log after booting with both the normal monitor (DVI-D-1) and headset (HDMI-A-0) plugged in.

https://pastebin.com/raw/rBFQNqAS The output of dmesg (ran as user not root).
 
Old 09-27-2019, 10:21 AM   #4
MirceaKitsune
Member
 
Registered: May 2009
Distribution: Manjaro
Posts: 156

Original Poster
Rep: Reputation: 1
Someone on Reddit just offered some huge help: The device was being intentionally disabled by a flag called "non-desktop"... apparently VR headsets are marked with that so they only run in specific applications, whereas I want it to work all the time. Running "xrandr --output HDMI-A-0 --set non-desktop 0" fixed the detection problem: The device now shows up in the KDE display manager while xrandr lists it as connected just as it should!

Unfortunately it's still pitch black and no image is showing up, no matter which xrandr modes I use or how I map the screen. Even using "Unified Output" causes no image to show up.

Could there also be a brightness issue? I tried something like "xrandr --output HDMI-A-0 --mode 1080x1920 --brightness 2 --gamma 2 --right-of DVI-D-1" but still nothing. Once more, the screen does light up at boot and in GRUB2 and I'm putting it on my face to activate the infrared sensor, so this is not a hardware defect. Perhaps another flag or mode issue?
 
Old 09-27-2019, 02:34 PM   #5
MirceaKitsune
Member
 
Registered: May 2009
Distribution: Manjaro
Posts: 156

Original Poster
Rep: Reputation: 1
Just found another important clue: When the headset is powered on at boot time, even if the image on the screen is just black, you still see background lighting on the screen itself and can tell that it's functioning. Once I'm in Linux, the screen does NOT have this background light, indicating the display is simply not powering on any more. This rules out the possibility that due to the xrandr configuration it was perceiving a black area: It simply doesn't turn on.

Could this have something to do with the infrared sensor that detects when the headset is on my face? But how on Earth would that work during the boot procedure and not in the OS itself?

I'm actually suspecting that Linux might be recognizing the device via USB and choosing to power it off until a program tells it "hey I need VR support, turn this device back on". This would explain why it works in the POST screen but not the moment I start booting. To rule this out, I'll have to see if I can plug the USB port to a phone charger, which should give it power but not be able to send any standby signals. This will obviously disable the head tracker but no idea if that was going to work anyway so it would be a valid workaround.
 
Old 09-27-2019, 02:48 PM   #6
MirceaKitsune
Member
 
Registered: May 2009
Distribution: Manjaro
Posts: 156

Original Poster
Rep: Reputation: 1
I got it to work at long last! Took me a while to figure out what was happening: Linux likely detected that it's a VR headset through the USB port, and was disabling the device on purpose. To work around this I plugged it directly into the power socket, which now tells it to stay powered on all the time.

The only issue I have left is that the color looks off, it's green or pink instead of the right tint. This likely has to do with the color settings which I'll need to adjust later. I also won't get head tracking support without plugging the USB port into my computer but that's a secondary issue for later.
 
  


Reply

Tags
display, hdmi, headset, monitor, x11


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] /usr/bin/X11/X11/....... 10 X11 subsets & counting walter74 Linux - General 2 06-07-2015 12:36 AM
[SOLVED] X11 Forwarding-X11 Applications Works but startx Not Works gonny95 Linux - Newbie 4 07-27-2014 08:00 PM
[SOLVED] CD-ROM not detected, then hard disk not detected helpless-new-fulla Linux - Newbie 4 06-28-2010 01:39 AM
Bluetooth headset, Alsa - no soundcard in /proc/asound/cards (but headset works) simopal6 Linux - Hardware 1 04-29-2009 09:07 AM
Logitech USB Headset 30 (or another USB headset) dezza Linux - Hardware 0 11-29-2004 12:21 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware

All times are GMT -5. The time now is 05:02 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration