Fix black screen after logging into KDE Plasma when plugged into LC34J791
I recently bought an ultrawide monitor to enjoy.
It has:
- 100Hz refresh rate
- 3440x1440 max resolution
- two thunderbolt 3 ports
- two 7w speakers
- curved screeen
Fantastic!
Problem
After entering login details, the screen just turned black with a lonely cursor freely moving.
Switching to another VT (e.g. Ctrl+Alt+F2) and switch back brought back the desktop content, but the monitor was not in 1440P, 100Hz mode. In fact the desired mode was no where to be found in System Settings -> Dsipaly and Monitor -> Displays.
Identify the problem
For some reason, in system log, kscreen logs
Failed to find a matching mode
caught my eye.
If I unplug the thunderbolt cable and insert it back in, everything works. It is just the boot process that cannot find the mode.
It suggested that I should try specifying the Modeline in xorg.conf which can be read by X server when booting.
Find Modeline for this monitor
First tried
xrandr --props
No modeline
Then tried
xvidtune -show
Does not make sense
Finally, go to /var/log/Xorg.0.log
and search for Modeline "3440x1440"x100.0
.
The modeline for my model is as follows:
modeset(G0): Modeline "3440x1440"x100.0 543.50 3440 3488 3520 3600 1440 1443 1453 1510 +hsync -vsync (151.0 kHz e)
Apply Modeline in an xorg.conf
file
Create a new conf file at /etc/X11/xorg.conf.d/10-monitor-lc34j791.conf
Section "Monitor"
Identifier "lc34j791"
# your display output name might not be the same, see man xorg.conf for details
Option "Monitor-DP-1-1" "lc34j791"
# have a different name than the default one
Modeline "3440x1440_100.0" 543.50 3440 3488 3520 3600 1440 1443 1453 1510 +hsync -vsync
Option "PreferredMode" "3440x1440_100.0"
Option "Primary" "true"
EndSection
And at /etc/X11/xorg.conf
:
Section "Screen"
Identifier "nvidia prime screen"
Device "nvidia"
Option "AllowEmptyInitialConfiguration"
# this above settings depends on your config
# the following settings are the key part
Monitor "lc34j791"
SubSection "Display"
Depth 24
Modes "3440x1440_100.0"
EndSubSection
EndSection