I have screen flickering problem when I'm connecting my laptop to my TV. I found that when I change the refresh rate from 60Hz to 59Hz this problem disappear.
Within Xorg (as I know 18.04 uses it by default) you can change the refresh rate by the help of xrandr
:
0. First you must find the video output name to which you should assing the new mode. Just type xrandr
and investigate which one is it. In my case this is HDMI-1
.
1. Generate new modeline using cvt
:
$ cvt 1920 1080 59
# 1920x1080 58.94 Hz (CVT) hsync: 66.02 kHz; pclk: 169.00 MHz
Modeline "1920x1080_59.00" 169.00 1920 2040 2240 2560 1080 1083 1088 1120 -hsync +vsync
1920
and 1080
are the horizontal and vertical resolution's values.
59
is the value of the refresh rate.
2. Create the new mode:
xrandr --newmode 1920x1080_59.00 169.00 1920 2040 2240 2560 1080 1083 1088 1120 -hsync +vsync
3. Assign the new mode to the video output:
xrandr --addmode HDMI-1 1920x1080_59.00
4. Activate the new mode:
xrandr --output HDMI-1 --mode 1920x1080_59.00
If the above works and the problem disappear, you should find a proper way to add and set this mode at the system startup. Here are few references about that: