[SOLVED] Laptop can't detect external HDMI monitor

Getting your soundcard to work, using Debian on non-i386 hardware, etc

[SOLVED] Laptop can't detect external HDMI monitor

Postby negora » 2018-01-09 13:32

Hello:

I'm using Debian 9.3 (Stretch), with the KDE Plasma DE, in a laptop model Dell Inspiron 15 7577. It has 2 GPUs: an integrated Intel GPU on the one hand, and a dedicated Nvidia 1060 GPU on the other. The laptop seems to use the Nvidia Optimus technology.

I'm trying to connect the laptop to an external monitor using the HDMI connector, but "xrandr" is unable to detect the monitor. This is its output:

Code: Select all
$ xrandr --current

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
   1920x1080     60.02*+  59.93    48.03
   1680x1050     59.95    59.88
   1600x1024     60.17
   1400x1050     59.98
   1280x1024     60.02
   1440x900      59.89
   1280x960      60.00
   1360x768      59.80    59.96
   1152x864      60.00
   1024x768      60.04    60.00
   960x720       60.00
   928x696       60.05
   896x672       60.01
   960x600       60.00
   960x540       59.99
   800x600       60.00    60.32    56.25
   840x525       60.01    59.88
   800x512       60.17
   700x525       59.98
   640x512       60.02
   720x450       59.89
   640x480       60.00    59.94
   680x384       59.80    59.96
   576x432       60.06
   512x384       60.00
   400x300       60.32    56.34
   320x240       60.05
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
HDMI-2 disconnected (normal left inverted right x axis y axis)
DP-3 disconnected (normal left inverted right x axis y axis)
HDMI-3 disconnected (normal left inverted right x axis y axis)


I've thought that this is one of that cases in which the HDMI connector is wired to the dedicated GPU instead of the integrated one. So I've installed "bumblebee-nvidia" and have followed the steps indicated here: Multi monitor setup. But I've had no luck. "intel-virtual-output" seems to run fine, but nothing happens.

Then I've decided to try the live disks of Kubuntu 16.04.3 and Kubuntu 17.10. In both cases the external monitor has got a proper signal from my laptop. Even during the splash screen of Plymouth. I've checked the packages installed by default in these live disks (to compare them against the ones of the Debian KDE live disk), and, for my surprise, Bumblee was not installed in them. So I guess that it's possible to get signal in the monitor even without Bumblebee.

I've checked the output of "xrandr", and effectively the monitor was being detected:

Code: Select all
$ xrandr --current

Screen 0: minimum 320 x 200, current 3840 x 1080, maximum 8192 x 8192
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
   1920x1080     60.02*+  59.93    48.03
   1680x1050     59.95    59.88
   1600x1024     60.17
   1400x1050     59.98
   1280x1024     60.02
   1440x900      59.89
   1280x960      60.00
   1360x768      59.80    59.96
   1152x864      60.00
   1024x768      60.04    60.00
   960x720       60.00
   928x696       60.05
   896x672       60.01
   960x600       60.00
   960x540       59.99
   800x600       60.00    60.32    56.25
   840x525       60.01    59.88
   800x512       60.17
   700x525       59.98
   640x512       60.02
   720x450       59.89
   640x480       60.00    59.94
   680x384       59.80    59.96
   576x432       60.06
   512x384       60.00
   400x300       60.32    56.34
   320x240       60.05
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
HDMI-2 disconnected (normal left inverted right x axis y axis)
DP-3 disconnected (normal left inverted right x axis y axis)
HDMI-3 disconnected (normal left inverted right x axis y axis)
HDMI-1-4 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 531mm x 299mm
   1920x1080     60.00*+  59.93
   1680x1050     69.88    59.95    59.88
   1600x1024     60.17
   1400x1050     74.76    70.00    59.98
   1280x1024     75.02    60.02
   1440x900      59.89    59.90
   1280x960      60.00
   1360x768      59.80    59.96
   1280x800      59.91
   1152x864      75.00    75.00    70.00    60.00
   1280x720      60.00
   1024x768      75.05    60.04    75.03    70.07    60.00
   960x720       75.00    60.00
   928x696       75.00    60.05
   896x672       75.05    60.01
   960x600       60.00
   832x624       74.55
   960x540       59.99
   800x600       75.00    70.00    65.00    60.00    72.19    75.00    60.32    56.25
   840x525       74.96    69.88    60.01    59.88
   800x512       60.17
   700x525       74.76    70.06    59.98
   640x512       75.02    60.02
   720x450       59.89
   640x480       60.00    75.00    72.81    75.00    66.67    59.94
   720x400       70.08
   680x384       59.80    59.96
   576x432       75.00    75.00    70.00    60.06
   512x384       75.03    70.07    60.00
   416x312       74.66
   400x300       72.19    75.12    60.32    56.34
   320x240       72.81    75.00    60.05
  1920x1080 (0x46) 138.500MHz +HSync -VSync
        h: width  1920 start 1968 end 2000 total 2080 skew    0 clock  66.59KHz
        v: height 1080 start 1083 end 1088 total 1111           clock  59.93Hz
  1680x1050 (0x48) 146.250MHz -HSync +VSync
        h: width  1680 start 1784 end 1960 total 2240 skew    0 clock  65.29KHz
        v: height 1050 start 1053 end 1059 total 1089           clock  59.95Hz
  1680x1050 (0x49) 119.000MHz +HSync -VSync
        h: width  1680 start 1728 end 1760 total 1840 skew    0 clock  64.67KHz
        v: height 1050 start 1053 end 1059 total 1080           clock  59.88Hz
  1600x1024 (0x4a) 103.125MHz +HSync +VSync
        h: width  1600 start 1600 end 1656 total 1664 skew    0 clock  61.97KHz
        v: height 1024 start 1024 end 1029 total 1030           clock  60.17Hz
  1400x1050 (0x4d) 122.000MHz +HSync +VSync
        h: width  1400 start 1488 end 1640 total 1880 skew    0 clock  64.89KHz
        v: height 1050 start 1052 end 1064 total 1082           clock  59.98Hz
  1280x1024 (0x4f) 108.000MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock  63.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  60.02Hz
  1440x900 (0x50) 106.500MHz -HSync +VSync
        h: width  1440 start 1520 end 1672 total 1904 skew    0 clock  55.93KHz
        v: height  900 start  903 end  909 total  934           clock  59.89Hz
  1280x960 (0x52) 108.000MHz +HSync +VSync
        h: width  1280 start 1376 end 1488 total 1800 skew    0 clock  60.00KHz
        v: height  960 start  961 end  964 total 1000           clock  60.00Hz
  1360x768 (0x53) 84.750MHz -HSync +VSync
        h: width  1360 start 1432 end 1568 total 1776 skew    0 clock  47.72KHz
        v: height  768 start  771 end  781 total  798           clock  59.80Hz
  1360x768 (0x54) 72.000MHz +HSync -VSync
        h: width  1360 start 1408 end 1440 total 1520 skew    0 clock  47.37KHz
        v: height  768 start  771 end  781 total  790           clock  59.96Hz
  1152x864 (0x59) 81.620MHz -HSync +VSync
        h: width  1152 start 1216 end 1336 total 1520 skew    0 clock  53.70KHz
        v: height  864 start  865 end  868 total  895           clock  60.00Hz
  1024x768 (0x5c) 133.475MHz -HSync +VSync DoubleScan
        h: width  1024 start 1100 end 1212 total 1400 skew    0 clock  95.34KHz
        v: height  768 start  768 end  770 total  794           clock  60.04Hz
  1024x768 (0x5f) 65.000MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806           clock  60.00Hz
  960x720 (0x61) 117.000MHz -HSync +VSync DoubleScan
        h: width   960 start 1024 end 1128 total 1300 skew    0 clock  90.00KHz
        v: height  720 start  720 end  722 total  750           clock  60.00Hz
  928x696 (0x63) 109.150MHz -HSync +VSync DoubleScan
        h: width   928 start  976 end 1088 total 1264 skew    0 clock  86.35KHz
        v: height  696 start  696 end  698 total  719           clock  60.05Hz
  896x672 (0x65) 102.400MHz -HSync +VSync DoubleScan
        h: width   896 start  960 end 1060 total 1224 skew    0 clock  83.66KHz
        v: height  672 start  672 end  674 total  697           clock  60.01Hz
  960x600 (0x66) 77.000MHz +HSync -VSync DoubleScan
        h: width   960 start  984 end 1000 total 1040 skew    0 clock  74.04KHz
        v: height  600 start  601 end  604 total  617           clock  60.00Hz
  960x540 (0x68) 69.250MHz +HSync -VSync DoubleScan
        h: width   960 start  984 end 1000 total 1040 skew    0 clock  66.59KHz
        v: height  540 start  541 end  544 total  555           clock  59.99Hz
  800x600 (0x6c) 81.000MHz +HSync +VSync DoubleScan
        h: width   800 start  832 end  928 total 1080 skew    0 clock  75.00KHz
        v: height  600 start  600 end  602 total  625           clock  60.00Hz
  800x600 (0x6f) 40.000MHz +HSync +VSync
        h: width   800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628           clock  60.32Hz
  800x600 (0x70) 36.000MHz +HSync +VSync
        h: width   800 start  824 end  896 total 1024 skew    0 clock  35.16KHz
        v: height  600 start  601 end  603 total  625           clock  56.25Hz
  840x525 (0x73) 73.125MHz -HSync +VSync DoubleScan
        h: width   840 start  892 end  980 total 1120 skew    0 clock  65.29KHz
        v: height  525 start  526 end  529 total  544           clock  60.01Hz
  840x525 (0x74) 59.500MHz +HSync -VSync DoubleScan
        h: width   840 start  864 end  880 total  920 skew    0 clock  64.67KHz
        v: height  525 start  526 end  529 total  540           clock  59.88Hz
  800x512 (0x75) 51.562MHz +HSync +VSync DoubleScan
        h: width   800 start  800 end  828 total  832 skew    0 clock  61.97KHz
        v: height  512 start  512 end  514 total  515           clock  60.17Hz
  700x525 (0x78) 61.000MHz +HSync +VSync DoubleScan
        h: width   700 start  744 end  820 total  940 skew    0 clock  64.89KHz
        v: height  525 start  526 end  532 total  541           clock  59.98Hz
  640x512 (0x7a) 54.000MHz +HSync +VSync DoubleScan
        h: width   640 start  664 end  720 total  844 skew    0 clock  63.98KHz
        v: height  512 start  512 end  514 total  533           clock  60.02Hz
  720x450 (0x7b) 53.250MHz -HSync +VSync DoubleScan
        h: width   720 start  760 end  836 total  952 skew    0 clock  55.93KHz
        v: height  450 start  451 end  454 total  467           clock  59.89Hz
  640x480 (0x7c) 54.000MHz +HSync +VSync DoubleScan
        h: width   640 start  688 end  744 total  900 skew    0 clock  60.00KHz
        v: height  480 start  480 end  482 total  500           clock  60.00Hz
  640x480 (0x80) 25.175MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.47KHz
        v: height  480 start  490 end  492 total  525           clock  59.94Hz
  680x384 (0x82) 42.375MHz -HSync +VSync DoubleScan
        h: width   680 start  716 end  784 total  888 skew    0 clock  47.72KHz
        v: height  384 start  385 end  390 total  399           clock  59.80Hz
  680x384 (0x83) 36.000MHz +HSync -VSync DoubleScan
        h: width   680 start  704 end  720 total  760 skew    0 clock  47.37KHz
        v: height  384 start  385 end  390 total  395           clock  59.96Hz
  576x432 (0x87) 40.810MHz -HSync +VSync DoubleScan
        h: width   576 start  608 end  668 total  760 skew    0 clock  53.70KHz
        v: height  432 start  432 end  434 total  447           clock  60.06Hz
  512x384 (0x8a) 32.500MHz -HSync -VSync DoubleScan
        h: width   512 start  524 end  592 total  672 skew    0 clock  48.36KHz
        v: height  384 start  385 end  388 total  403           clock  60.00Hz
  400x300 (0x8e) 20.000MHz +HSync +VSync DoubleScan
        h: width   400 start  420 end  484 total  528 skew    0 clock  37.88KHz
        v: height  300 start  300 end  302 total  314           clock  60.32Hz
  400x300 (0x8f) 18.000MHz +HSync +VSync DoubleScan
        h: width   400 start  412 end  448 total  512 skew    0 clock  35.16KHz
        v: height  300 start  300 end  301 total  312           clock  56.34Hz
  320x240 (0x92) 12.587MHz -HSync -VSync DoubleScan
        h: width   320 start  328 end  376 total  400 skew    0 clock  31.47KHz
        v: height  240 start  245 end  246 total  262           clock  60.05Hz


Pay attention to the HDMI-1-4 output.

Then, I've listed the providers, and there are 2:

Code: Select all
$ xrandr --listproviders

Providers: number : 2
Provider 0: id: 0xbc cap: 0x9, Source Output, Sink Offload crtcs: 3 outputs: 7 associated providers: 1 name:modesetting
Provider 1: id: 0x44 cap: 0x6, Sink Output, Source Offload crtcs: 4 outputs: 1 associated providers: 1 name:nouveau


To know if it was because of some "magic" made by Nouveau, I've uninstalled the package "xserver-xorg-video-nouveau" from the live Kubuntu, and have restarted SDDM. And it has worked fine again. Although, in this case, the second provider was being controlled by the "modesetting" driver instead of "nouveau", of course:

Code: Select all
$ xrandr --listproviders

Providers: number : 2
Provider 0: id: 0xbc cap: 0x9, Source Output, Sink Offload crtcs: 3 outputs: 7 associated providers: 1 name:modesetting
Provider 1: id: 0x44 cap: 0x6, Sink Output, Source Offload crtcs: 4 outputs: 1 associated providers: 1 name:modesetting


In Debian I've not been able to get anything like this. Even although I've uninstalled all the packages related to the privative Nvidia driver and I've came back to Nouveau again. I've also tried the Debian live disk that includes non-free firmwares, just in case (although I had already installed them in my main system). Same result.

Can you help me, please? Thank you a lot!

Best regards.
Last edited by negora on 2018-01-10 07:51, edited 2 times in total.
negora
 
Posts: 8
Joined: 2016-09-15 06:28

Re: Laptop can't detect external HDMI monitor

Postby negora » 2018-01-09 22:26

I've came to the conclusion that it's not possible to use the Nvidia GeForce GTX 1060 Max-Q (GP106M) with the version of Nouveau that is included in Debian 9. I think that it works fine in Kubuntu 16.04.3 and Kubuntu 17.10 just because they use more recent versions of this same driver. I still have not tested Kubuntu 16.04.1, but I would bet that it won't work like their "siblings". Because it doesn't use the HWE stack (Hardware Enablement); it uses software that is older than the one of Debian 9.

So I better focus on the privative driver and Bumblebee. According to the file at /usr/share/doc/nvidia-driver/README.txt.gz, the "nvidia" driver seems to support my GPU model:

Code: Select all
$ lspci -s 01:00.0 -n

01:00.0 0300: 10de:1c20 (rev a1)


Code: Select all
...
GeForce GTX 1060 with Max-Q Design    1C20 17AA 39B9     H
...
GeForce GTX 1060 with Max-Q Design    1C60 103C 8390     H
...


I guess that "10de" corresponds to the manufacturer and "1c20" to the model. Am I right?
negora
 
Posts: 8
Joined: 2016-09-15 06:28

Re: Laptop can't detect external HDMI monitor

Postby negora » 2018-01-10 07:50

Finally, I've it working :) .

I had read the manual from the official GitHub repository: Multi monitor setup (from the official GitHub repository). However, I hadn't been able to make the multi-monitor setup work.

So I've started from scratch, following the guide from the Arch Wiki: Bumblebee (from Arch Wiki). In addition to that, I've applied some knowledge acquired from messages of some forums.

First of all, I've created the file "/usr/share/X11/xorg.conf.d/20-intel.conf" with the following content:

Code: Select all
Section "Device"
  Identifier "IntelGPU"
  Driver "intel"
  BusID "PCI:00:02:0"
EndSection


I've done this in order to force the use of the "intel" driver, because Debian uses the "modesetting" driver by default. Each user will need to set the "BusID" according to its specific case.

Then, I've installed "bumblebee-nvidia", as usual. And I've changed these lines in "/etc/bumblebee/xorg.conf.nvidia":

Code: Select all
  Option "AutoAddDevices" "true"
  Option "UseEDID" "true
  # Option "UseDisplayDevice" "none"


Notice that I've commented out the option "UseDisplayDevice". This step isn't specified explicitly in the official guide, and has made a BIG difference for me. Indeed, it was the only step that I was missing.

After that, I have added these lines at the end of that same file:

Code: Select all
Section "Screen"
  Identifier "Screen0"
  Device "DiscreteNvidia"
EndSection


This has been necessary because the Xorg instance created by Bumblebee was failing to start, after not finding a specific screen.

I've restarted the services "sddm.service" and "bumblebeed.service". And, from my X session (from Konsole, indeed), I've just run "intel-virtual-output". This has made that my external monitor is recognised by "xrandr", as being connected to the VIRTUAL1 output:

Code: Select all
$ xrandr --current

Screen 0: minimum 8 x 8, current 3840 x 1080, maximum 32767 x 32767
eDP1 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 340mm x 190mm
   1920x1080     60.02*+  59.93    48.03 
   1680x1050     59.88 
   1600x1024     60.17 
   1400x1050     59.98 
   1600x900      60.00 
   1280x1024     60.02 
   1440x900      59.89 
   1280x960      60.00 
   1368x768      60.00 
   1360x768      59.80    59.96 
   1152x864      60.00 
   1280x720      60.00 
   1024x768      60.00 
   1024x576      60.00 
   960x540       60.00 
   800x600       60.32    56.25 
   864x486       60.00 
   640x480       59.94 
   720x405       60.00 
   640x360       60.00 
DP1 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
DP3 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
HDMI3 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   VIRTUAL1.447-1920x1080  60.00*
   VIRTUAL1.448-1680x1050  59.95 
   1440x900      59.89 
   VIRTUAL1.450-1280x1024  75.02 
   1280x1024     60.02 
   1280x960      60.00 
   VIRTUAL1.453-1280x800  59.81 
   VIRTUAL1.454-1280x720  60.00 
   VIRTUAL1.455-1152x864  75.00 
   VIRTUAL1.456-1024x768  75.03 
   VIRTUAL1.457-1024x768  70.07 
   1024x768      60.00 
   VIRTUAL1.459-800x600  75.00 
   VIRTUAL1.460-800x600  72.19 
   800x600       60.32    56.25 
   VIRTUAL1.463-640x480  75.00 
   VIRTUAL1.464-640x480  72.81 
   640x480       59.94 
VIRTUAL2 disconnected (normal left inverted right x axis y axis)


In my previous attempts (when I didn't comment "UseDisplayDevice" out), the VIRTUAL1 output always remained as disconnected. I'll suggest the maintainer(s) of the GitHub wiki to be more specific about that option.

And that's all. I hope that it helps other users ;) .
negora
 
Posts: 8
Joined: 2016-09-15 06:28

Re: [SOLVED] Laptop can't detect external HDMI monitor

Postby bmickey » 2018-01-21 00:24

Thank you!! I've been reading and rereading the multi-monitor bumblebee documentation and the arch bumblebee doc and none of it was working. Then I found this post and luckily I also have a Dell 15 7577 so I can finally use my external monitor!

I do have one issue though (aside from still needing to configure the audio through hdmi) and I was wondering if you had any information regarding it because you were able to figure out the hdmi-port nightmare.

It seems there is an issue now when running something with the nvidia card when I don't have my monitor hooked up to the hdmi port.

There are three different situations in which I'm having different results from running "optirun glxgears" to test the nvidia card,

1. When I'm just using my laptop with nothing plugged into the hdmi port and I run "optirun glxgears"
Result: [ 657.731711] [ERROR]Cannot access secondary GPU - error: [XORG] (EE) NVIDIA(0): Failed to assign any connected display devices to X screen 0.
[ 657.731745] [ERROR]Aborting because fallback start is disabled.

2. When I'm just using my laptop, I've plugged the external monitor into the hdmi port, and I run "optirun glxgears"
Result: The external monitor flickers (?) and the gears are displayed on my laptop display running as expected.

3. When I'm running "intel-virtual-output" and using my external monitor (thanks again!), and I run "optirun glxgears"
Result: The gears are displayed on my external monitor running as expected.

It seems like rather than running optirun and plugging an external monitor into the hdmi port both being separate conditions for turning on the nvidia card with bumblebee, now optirun is dependent on the external monitor being plugged in?

I'm using Debian Stretch with gnome instead of kde.
bmickey
 
Posts: 5
Joined: 2018-01-20 20:42

Re: [SOLVED] Laptop can't detect external HDMI monitor

Postby bmickey » 2018-01-21 02:07

Nevermind I figured it out as I'm sure you already have.

For anyone else who might need to know however I just added

Option "AllowEmptyInitialConfiguration"

to the bottom of the main section of the file /etc/bumblebee/xorg.conf.nvidia

like this,
Code: Select all
    Option "NoLogo" "true"
    Option "UseEDID" "true"
    #Option "UseDisplayDevice" "none"
    Option "AllowEmptyInitialConfiguration"

see: https://superuser.com/questions/1082617/bumblebee-with-hdmi-on-nvidia-make-usable-both-with-without-connected-monitor
bmickey
 
Posts: 5
Joined: 2018-01-20 20:42

Re: [SOLVED] Laptop can't detect external HDMI monitor

Postby negora » 2018-01-21 08:26

Sorry, but I've read your message late (it's morning here). Anyway, I see that you've been able to solve it ;) . Congratulations.

I had read about that option (AllowEmptyInitialConfiguration) but, sincerely, I hadn't used it yet. Instead, I've been keeping 2 different versions of the "xorg.conf.nvidia" file and using one or the other depending on the need. But that option is much more comfortable. One single file for both setups.

Thank you for for sharing your finding ;) .

PS: I've made the modification, tested it and it works flawlessly. Thank you!
negora
 
Posts: 8
Joined: 2016-09-15 06:28


Return to Hardware

Who is online

Users browsing this forum: No registered users and 3 guests

fashionable