Two HDMI monitors not working at the same time after upgrading from Leap 15.2

Hi,

after upgrading to Leap 15.3 from 15.2, the two connected monitors to my laptop (Thinkpad T480) doesn’t work at the same time.

One of them is connected to a USB-C hub QGeeM Hub USB C while the other is connected through the standard HDMI port. The latest connection is the one not working when the other monitor is connected to the hub (hub has output priority). The integrated monitor works everytime.

I’ve been playing around xrandr, different distros, DE, etc with the same outcome.

Although my DE of choice is XFCE, I’m willing to switch to KDE if needed.

I’ll try to give as much info as possible in this post.

What I’ve tried:

  • Different DE and live distros: Same behaviour.
  • Switch where the monitors are connected: The hub takes priority regardless of the monitor
  • Turn off/on the laptop with/out the monitors connected: No visible changes
  • One of the monitors has two HDMI ports, doesn’t matter where it’s connected
  • I had one script to modify with xrandr that I believe it worked before (perhaps I did something before the script I can’t remember and it’s not done once I upgraded to 15.3)
  • After creating and adding the modes, I used xrandr to be able to connect the three monitors:
 xrandr --output eDP-1 --primary --mode 1920x1080 --pos 0x0 --rotate normal --output DP-2 --mode 1920x1080-60.00 --pos 1920x0 --rotate normal --output HDMI-1 --off --output DP-1 --off --output HDMI-2 --mode 2560x1080-60.00 --pos 3840x0 --rotate normal

After that, the three monitors (laptop, hub, and HDMI) worked, althouth I had to change the refresh rate of one of the monitor, apply changes and revert the change to the monitor to “wake up”. Now, if I do the same I can see the three monitors in axrandr but not in “Display”

**
The two monitors connected (the hub’s monitor works):**

inxi -Gxx
Graphics:  Device-1: Intel UHD Graphics 620 vendor: Lenovo driver: i915 v: kernel bus-ID: 00:02.0 chip-ID: 8086:5917 
           Device-2: USB C USB C Video Adaptor type: USB driver: N/A bus-ID: 1-4.4.4:15 chip-ID: 25a4:9311 
           Device-3: Chicony Integrated Camera (1280x720@30) type: USB driver: uvcvideo bus-ID: 1-8:5 chip-ID: 04f2:b604 
           Display: x11 server: X.Org 1.20.3 driver: loaded: modesetting resolution: 1: 1920x1080~60Hz 2: 1920x1080~60Hz 
           s-dpi: 96 
           OpenGL: renderer: Mesa DRI Intel UHD Graphics 620 (KBL GT2) v: 4.6 Mesa 20.2.4 compat-v: 3.0 direct render: Yes 
xrandr
Screen 0: minimum 320 x 200, current 4480 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 309mm x 174mm
   1920x1080     60.02*+  60.01    59.97    59.96    59.93    48.00  
   1680x1050     59.95    59.88  
   1400x1050     59.98  
   1600x900      59.99    59.94    59.95    59.82  
   1280x1024     60.02  
   1400x900      59.96    59.88  
   1280x960      60.00  
   1440x810      60.00    59.97  
   1368x768      59.88    59.85  
   1280x800      59.99    59.97    59.81    59.91  
   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  
   700x525       59.98  
   800x450       59.95    59.82  
   640x512       60.02  
   700x450       59.96    59.88  
   640x480       60.00    59.94  
   720x405       59.51    58.99  
   684x384       59.88    59.85  
   640x400       59.88    59.98  
   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 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-2 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 598mm x 336mm
   1920x1080     60.00*+  74.97    50.00    59.94  
   1680x1050     59.88  
   1600x900      60.00  
   1280x1024     75.02    60.02  
   1280x800      59.91  
   1152x864      75.00  
   1280x720      60.00    50.00    59.94  
   1024x768      75.03    60.00  
   832x624       74.55  
   800x600       75.00    60.32  
   720x480       60.00    59.94  
   640x480       75.00    60.00    59.94  
   720x400       70.08  
HDMI-2 disconnected 2560x1080+1920+0 (normal left inverted right x axis y axis) 0mm x 0mm
  2560x1080 (0x350) 185.580MHz -HSync -VSync
        h: width  2560 start 2624 end 2688 total 2784 skew    0 clock  66.66KHz
        v: height 1080 start 1083 end 1093 total 1111           clock  60.00Hz
susepaste /var/log/Xorg.0.log
Pasted as:
   https://susepaste.org/88175002
   https://paste.opensuse.org/88175002
Link is also in your clipboard.
sudo inxi -U
Starting inxi self updater.
Using tiny as downloader.
Currently running inxi version number: 3.1.00
Current version patch number: 00
Current version release date: 2020-04-22
Updating inxi in /usr/bin using main branch as download source...
Successfully updated to main branch version: 3.3.04
New main branch version patch number: 00
New main branch version release date: 2021-04-16
To run the new version, just start inxi again.
----------------------------------------

Starting download of man page file now.
Downloading Man page file...
Download successful. Compressing file...
Download and install of man page successful.
Check to make sure it works: man inxi
:~> sudo inxi -U
Starting inxi self updater.
Using tiny as downloader.
Currently running inxi version number: 3.3.04
Current version patch number: 00
Current version release date: 2021-04-16
Updating inxi in /usr/bin using main branch as download source...
Validating downloaded data...
Successfully updated to main branch version: 3.3.04
New main branch version patch number: 00
New main branch version release date: 2021-04-16
To run the new version, just start inxi again.
----------------------------------------

Starting download of man page file now.
Updating inxi.1 in /usr/share/man/man1
using main branch branch as download source
Downloading man page file...
Download successful. Validating downloaded man file data...
Contents validated. Writing to man location...
Writing successful. Compressing file...
Download, install, and compression of man page successful.
Check to make sure it works: man inxi
inxi -Gay
Graphics:
  Device-1: Intel UHD Graphics 620 vendor: Lenovo driver: i915 v: kernel 
  bus-ID: 00:02.0 chip-ID: 8086:5917 class-ID: 0300 
  Device-2: USB C USB C Video Adaptor type: USB driver: N/A bus-ID: 1-4.4.4:15 
  chip-ID: 25a4:9311 class-ID: 1100 serial: 000000000001 
  Device-3: Chicony Integrated Camera (1280x720@30) type: USB driver: uvcvideo 
  bus-ID: 1-8:5 chip-ID: 04f2:b604 class-ID: 0e02 serial: 0001 
  Display: x11 server: X.Org 1.20.3 driver: loaded: modesetting 
  display-ID: :0.0 screens: 1 
  Screen-1: 0 s-res: 4480x1080 s-dpi: 96 s-size: 1185x286mm (46.7x11.3") 
  s-diag: 1219mm (48") 
  Monitor-1: eDP-1 res: 1920x1080 hz: 60 dpi: 158 size: 309x174mm (12.2x6.9") 
  diag: 355mm (14") 
  Monitor-2: DP-2 res: 1920x1080 hz: 60 dpi: 82 size: 598x336mm (23.5x13.2") 
  diag: 686mm (27") 
  OpenGL: renderer: Mesa DRI Intel UHD Graphics 620 (KBL GT2) 
  v: 4.6 Mesa 20.2.4 compat-v: 3.0 direct render: Yes

When I disconnect the hub’s monitor, the HDMI monitor works and this is the info:

inxi -Gxx
Graphics:  Device-1: Intel UHD Graphics 620 vendor: Lenovo driver: i915 v: kernel bus-ID: 00:02.0 chip-ID: 8086:5917 
           Device-2: Chicony Integrated Camera (1280x720@30) type: USB driver: uvcvideo bus-ID: 1-8:5 chip-ID: 04f2:b604 
           Display: x11 server: X.Org 1.20.3 driver: loaded: modesetting resolution: 1: 1920x1080~60Hz 2: 2560x1080~60Hz 
           s-dpi: 96 
           OpenGL: renderer: Mesa DRI Intel UHD Graphics 620 (KBL GT2) v: 4.6 Mesa 20.2.4 compat-v: 3.0 direct render: Yes
xrandr
Screen 0: minimum 320 x 200, current 4480 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 309mm x 174mm
   1920x1080     60.02*+  60.01    59.97    59.96    59.93    48.00  
   1680x1050     59.95    59.88  
   1400x1050     59.98  
   1600x900      59.99    59.94    59.95    59.82  
   1280x1024     60.02  
   1400x900      59.96    59.88  
   1280x960      60.00  
   1440x810      60.00    59.97  
   1368x768      59.88    59.85  
   1280x800      59.99    59.97    59.81    59.91  
   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  
   700x525       59.98  
   800x450       59.95    59.82  
   640x512       60.02  
   700x450       59.96    59.88  
   640x480       60.00    59.94  
   720x405       59.51    58.99  
   684x384       59.88    59.85  
   640x400       59.88    59.98  
   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 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected 1920x1080+1920+0 (normal left inverted right x axis y axis) 0mm x 0mm
HDMI-2 connected 2560x1080+1920+0 (normal left inverted right x axis y axis) 798mm x 334mm
   2560x1080     60.00*+
   1920x1080     60.00    50.00    59.94    30.00    29.97  
   1920x1080i    60.00    50.00    59.94  
   1680x1050     59.88  
   1600x900      60.00  
   1280x1024     75.02    60.02  
   1152x864      75.00  
   1280x720      60.00    50.00    59.94  
   1024x768      75.03    60.00  
   800x600       75.00    60.32  
   720x576       50.00  
   720x480       60.00    59.94  
   640x480       75.00    60.00    59.94  
   720x400       70.08  
usepaste /var/log/Xorg.0.log
Pasted as:
   https://susepaste.org/56374231
   https://paste.opensuse.org/56374231
Link is also in your clipboard.
inxi -Gay
Graphics:
  Device-1: Intel UHD Graphics 620 vendor: Lenovo driver: i915 v: kernel 
  bus-ID: 00:02.0 chip-ID: 8086:5917 class-ID: 0300 
  Device-2: Chicony Integrated Camera (1280x720@30) type: USB driver: uvcvideo 
  bus-ID: 1-8:5 chip-ID: 04f2:b604 class-ID: 0e02 serial: 0001 
  Display: x11 server: X.Org 1.20.3 driver: loaded: modesetting 
  display-ID: :0.0 screens: 1 
  Screen-1: 0 s-res: 4480x1080 s-dpi: 96 s-size: 1185x286mm (46.7x11.3") 
  s-diag: 1219mm (48") 
  Monitor-1: eDP-1 res: 1920x1080 hz: 60 dpi: 158 size: 309x174mm (12.2x6.9") 
  diag: 355mm (14") 
  Monitor-2: HDMI-2 res: 2560x1080 hz: 60 dpi: 81 size: 798x334mm (31.4x13.1") 
  diag: 865mm (34.1") 
  OpenGL: renderer: Mesa DRI Intel UHD Graphics 620 (KBL GT2) 
  v: 4.6 Mesa 20.2.4 compat-v: 3.0 direct render: Yes 

Additional system info or observations:

uname -a
Linux localhost.localdomain 5.3.18-57-default #1 SMP Wed Apr 28 10:54:41 UTC 2021 (ba3c2e9) x86_64 x86_64 x86_64 GNU/Linux

I realize that when the hub monitor is connected, many modifications/queries makes the monitor go black for about 4-5 seconds while the same queries do not affect the HDMI monitor (when the hub is disconnected and the HDMI is working)

I can upload some screenshots if needed or whatever info that might be helpful.

Thanks!

What happens if you use KDE rather than XFCE?

@Chamaeleo:

With multiple monitors, it’s often necessary to setup in ‘/etc/X11/xorg.conf.d/’ –

  • The following Xorg log file entries indicate that, currently nothing is setup for multiple monitors – only the automatic settings –

[INDENT=2]No Layout section. Using the first Screen section.
No screen section available. Using defaults.
No device specified for screen “Default Screen Section”.[/INDENT]
[INDENT=3]Using the first device section listed.[/INDENT]
[INDENT=2]No monitor specified for screen “Default Screen Section”.[/INDENT]
[INDENT=3]Using a default monitor configuration.
[/INDENT]

Same. I wasn’t able to detect any difference in behavior among XFCE, KDE, Gnome, Mate.

I have installed both XFCE and KDE in my machine and I tried Gnome and Mate using live distros (Mint, Fedora, and Debian)

I’ll try to follow that tip. I had bad experiences modifying X11 and I tried it to be my last option.

Thanks!

Ok, so I did some modifications with no happy ending.

Following this guide from Gentoo I created 2 .conf in /etc/X11/xorg.conf.d/ with the following content:

cat /etc/X11/xorg.conf.d/41-central-monitor.conf 
Section "Monitor"
    Identifier  "HDMI-2"
    Modeline    "2560x1080-60.00"  230.76  2560 2728 3000 3440  1080 1081 1084 1118
EndSection
cat /etc/X11/xorg.conf.d/41-right-monitor.conf 
Section "Monitor"
    Identifier  "DP-2"
    Modeline    "1920x1080-60.00"  172.80  1920 2040 2248 2576  1080 1081 1084 1118
    Option      "RightOf" "HDMI-2"
EndSection

And modified a third one:

cat /etc/X11/xorg.conf.d/50-monitor.conf
# Having multiple "Monitor" sections is known to be problematic. Make
# sure you don't have in use another one laying around e.g. in another
# xorg.conf.d file or even a generic xorg.conf file. More details can
# be found in https://bugs.freedesktop.org/show_bug.cgi?id=32430.
#
#Section "Monitor"
#  Identifier "Default Monitor"
#
#  ## If your monitor doesn't support DDC you may override the
#  ## defaults here
#  #HorizSync 28-85
#  #VertRefresh 50-100
#
#  ## Add your mode lines here, use e.g the cvt tool
#
#EndSection

Section "Device"
    Identifier  "Device0"
    Option      "Monitor-HDMI-2" "HDMI-2"
    Option      "Monitor-DP-2" "DP-2"
    Driver      "intel"
EndSection

I check (and upload) Xorg.0.log

susepaste /var/log/Xorg.0.log
Pasted as:
   https://susepaste.org/30343737
   https://paste.opensuse.org/30343737
Link is also in your clipboard.

But it seems the HDMI-2 is disconnected:

cat /var/log/Xorg.0.log | grep HDMI-2
    30.185] (**) modeset(0): Option "RightOf" "HDMI-2"
    30.188] (II) modeset(0): Output HDMI-2 using monitor section HDMI-2
    30.322] (II) modeset(0): EDID for output HDMI-2
    30.322] (II) modeset(0): Output HDMI-2 disconnected
    30.322] (EE) modeset(0): Cannot position output DP-2 relative to output HDMI-2 without modes
cat /var/log/Xorg.0.log | grep DP-2
    30.185] (II) modeset(0): Output DP-2 using monitor section DP-2
    30.317] (II) modeset(0): EDID for output DP-2
    30.318] (II) modeset(0): Printing probed modes for output DP-2
    30.322] (II) modeset(0): Output DP-2 connected
    30.322] (II) modeset(0): Output DP-2 using initial mode 1920x1080 +0+0
    30.322] (EE) modeset(0): Cannot position output DP-2 relative to output HDMI-2 without modes

Did I do something wrong?

And a forth one

cat 90-serverlayout.conf 
Section "ServerLayout"
  Identifier   "Main"
  Screen       0 "Primary"
  Screen       1 "HDMI-2" RightOf "Primary"
  Screen       2 "DP-2" RightOf "HDMI-2"
  Option       "Xinerama" "0"
EndSection

Either Xinerama == 1 or 0, same results

@Chamaeleo:

Instead of concentrating on the “Modeline” in the Monitor configurations, simply state the “DisplaySize” of each monitor and, let the Modline configure itself automatically.

  • BTW, the “Xinerama” option is a boolean value which is part of the “ServerFlags” section – default is disabled – « 0, off, false no » …
  • Be aware of another Server Flags option – the “AutoAddGPU” boolean value – default is enabled – with the caveat that, if you enable the Xinerama option, you may have to disable this option – with the caveat that –

no GPU devices will be added from the udev backend

I give up.

I tried:

  • Installing an old kernel (not sure if old enough though)
  • Playing around with xrandr for longer I’m willing to admit
  • Modifying as much as I understand in xorg
  • Going to the 5th+ page of google
  • Going to the personal site of a guy who replied in stackoverflow

I guess I’ll wait until a new kernel update to be able to use a third monitor.

Help developers with this - create bug report.

I’ll do my best to try to inform about it.

Thanks

FIXED

Just reporting for future users.

No issues with the kernel, drivers, monitors, xrandr, and whatnot.

My laptop, a Thinkpad T480, has two USB-C ports and apparently I was using the wrong one even though one monitor was working and keyboard and mouse were working to.

If you face the same problem, change the USB-C port!

Thanks for your time @dcurtisfra and @Svyatko

My problem solved with the use of another USB-C alternate adapter. The one I was using before worked under windows.