Fedora – Bad resolution on second monitor Fedora 24

fedoramulti-monitorxorg

I have a 32" TV and I want to use it as a secondary monitor.

I've been following this guide on how to change the resolution using xorg.conf.

I created three files inside /etc/X11/xorg.conf.d/:

40-monitor.conf:

Section "Monitor"
  Identifier  "VGA1"
  Option      "PreferredMode" "1408x792"
EndSection

30-graphic.conf:

Section "Device"
    Identifier      "Intel Integrated"
    Driver          "intel"
EndSection

50-screen.conf:

Section "Screen"
    Identifier      "Default Screen"
    DefaultDepth  24
    SubSection "Display"
            Depth          24
            Modes         "1408x792"  "1024x768"   "640x480"
    EndSubSection
EndSection

It does not work.

It offers me the resolution 1408x792

I tried to apply the resolution but doesn't work. The TV tells me the resolution it's using is 1024×768.

PS. The resolution that I want is 1408x792.

PS2. I configured this months ago but unfortunately lost everything on the hard drive and had to install Fedora 24 from zero today and I don't remember what my xorg.conf looked like. 🙁

Please, let me know if you have any questions!

Best Answer

Based on my case when i first time using extended monitor with Fedora 25, here how i solve this problem.

First check your gnome session, is it using Wayland or Xorg, you can check it by executing this command

xrandr -q

If it showing your monitor device like Xwayland0 or Xwayland1 you should change to use Xorg.

Second, change your session to use xorg if you're using wayland by edit file at

/etc/gdm/custom.conf

Then uncomment line on WaylandEnable=false to disable it

# GDM configuration storage

[daemon]
# Uncoment the line below to force the login screen to use Xorg
#WaylandEnable=false

[security]

[xdmcp]

[chooser]

[debug]
# Uncomment the line below to turn on debugging
#Enable=true

Third restart your machine to take effect

Fourth check your display resolution by running command xrandr -q again, there would be a different information for each device like this

Screen 0: minimum 8 x 8, current 3046 x 1050, maximum 32767 x 32767
LVDS1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 310mm x 170mm
   1366x768      60.10*+
   1024x768      60.00  
   1024x576      60.00  
   960x540       60.00  
   800x600       60.32    56.25  
   864x486       60.00  
   640x480       59.94  
   720x405       60.00  
   680x384       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)
VGA1 connected 1680x1050+1366+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00*+  
   800x600       60.32    56.25  
   848x480       60.00  
   640x480       59.94  
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

the information above is from mine (it ca be different than yours, just for example)

Fifth as you can see I have no VGA1 resolution bigger than 1024x768, but I need to set my monitor which is connected on VGA1 to have a resolution at 1680x1050, here the tricks

Six Create your own display resolution by using cvt, in this case I want to add resolution 1680x1050

cvt 1680 1050

cvt will produce info like

# 1680x1050 59.95 Hz (CVT 1.76MA) hsync: 65.29 kHz; pclk: 146.25 MHz
Modeline "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync

then for the next step is creating our resolution mode, based on that info

xrandr --newmode "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync
xrandr --addmode VGA1 "1680x1050_60.00"

as you can see, two commands above will creatie new mode by assign --newmode with display resolution 1680x1050_60.00, and add that resolution mode by using --addmode into my connected monitor on VGA1 (make sure your monitor is connected, check with xrandr -q)

Then for the Last Step, we apply that resolution into our monitor which is in this example is VGA1 by executing this command

xrandr --output VGA1 --mode 1680x1050_60.00

If all step was correct, your monitor display now should be on selected display, you may check it too by running command xrandr -q, and because this instruction is based on my experience, pardon me if this method is still not helpful for you.

*tips If you have a case like when your monitor is just flickering after you set output or add the mode, first backup file on ~/.config/monitors.xml then delete it

Related Question