Dual Screen : one fine, one wrong resolution

Hi,

My computer has 2 screens, and an nvidia card. My first monitor is IIyama Prolite E2482HS, DVI, resolution 1920x1080, no probs.
The other one is a older one Acer X202W, VGA, max resolution 1680x1050. But for this one, I can’t get that resolution to work.

I tried using the nouveau driver, and while the IIyama monitor was 1920x1080, I couldn’t get more than something like 800x600 on the Acer one.
After installing the Nvidia driver, it’s not much better: Iiyama is still fine, 1920x1080. But in the nvidia-settings utility, 14 resolutions are available for the Acer VGA, none of them convenient :
320x240, 400x300, 512x384, 640x480, 700x525, 800x600, 832x624, 1024x768, 1152x864, 1280x960, 1280x1024, 1400x1050, 1600x1200, 1792x1344 and “Auto”. But no “1680x1050” :frowning:

Here is my xorg.conf :

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 331.20  (buildmeister@swio-display-x86-rhel47-05)  Wed Oct 30 18:20:32 PDT 2013

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 331.20  (buildmeister@swio-display-x86-rhel47-05)  Wed Oct 30 18:20:53 PDT 2013

Section "ServerLayout"

# Removed Option "Xinerama" "0"
# Removed Option "Xinerama" "1"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" 1920 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "InputDevice"

    # generated from data in "/etc/sysconfig/mouse"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "IMPS/2"
    Option         "Device" "/dev/input/mice"
    Option         "Emulate3Buttons" "yes"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Idek Iiyama PL2482H"
    HorizSync       30.0 - 83.0
    VertRefresh     55.0 - 76.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "CRT-0"
    HorizSync       31.0 - 84.0
    VertRefresh     56.0 - 75.0
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 670"
    BusID          "PCI:1:0:0"
    Screen          0
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 670"
    BusID          "PCI:1:0:0"
    Screen          1
EndSection

Section "Screen"

# Removed Option "metamodes" "DVI-D-0: nvidia-auto-select +0+0"
# Removed Option "metamodes" "DVI-D-0: nvidia-auto-select +0+0, DVI-I-0: nvidia-auto-select +1920+0"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-3"
    Option         "metamodes" "DVI-D-0: nvidia-auto-select +0+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"

# Removed Option "metamodes" "DVI-I-0: nvidia-auto-select +0+0"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "CRT-0"
    Option         "metamodes" "DVI-I-0: 1024x768 +0+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Extensions"
    Option         "Composite" "Disable"
EndSection


Any ideas as how to fix this ?

Cheers,

Hi folks,

As a christmas present to myself, I did some research (mainly from this and that page) and managed to fix this.
As a christmas present to you, dear reader, I post the solution I’ve found :

First, look out for the specs of your screen on the net. Mine (Acer X202W) is:
Horizontal sync : 31 KHz to 84 KHz
Vertical Sync (=refresh rate) : 56 Hz to 75 Hz
Max Pixel Clock : 150 MHz (not sure about that one, though)
Max resolution, @60Hz : 1680x1050

Second, in a terminal, I typed :

tatoine@linux-q8lb:~> cvt 1680 1050 60
# 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

I copied the “Modeline” line, and pasted it (as root) in the /etc/X11/xorg.conf file created by the nvidia driver upon installation, just under the “VertRefresh” line of the Section “Monitor” related to the Acer monitor.
So my xorg.conf looked like this :

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 331.20  (buildmeister@swio-display-x86-rhel47-05)  Wed Oct 30 18:20:32 PDT 2013

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 331.20  (buildmeister@swio-display-x86-rhel47-05)  Wed Oct 30 18:20:53 PDT 2013

Section "ServerLayout"

# Removed Option "Xinerama" "0"
# Removed Option "Xinerama" "1"
# Removed Option "Xinerama" "0"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" 1920 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "1"
EndSection

Section "Files"
EndSection

Section "InputDevice"

    # generated from data in "/etc/sysconfig/mouse"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "IMPS/2"
    Option         "Device" "/dev/input/mice"
    Option         "Emulate3Buttons" "yes"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Idek Iiyama PL2482H"
    HorizSync       30.0 - 83.0
    VertRefresh     55.0 - 76.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "CRT-0"
    HorizSync       31.0 - 84.0
    VertRefresh     56.0 - 75.0
    Modeline "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 670"
    BusID          "PCI:1:0:0"
    Screen          0
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 670"
    BusID          "PCI:1:0:0"
    Screen          1
EndSection

Section "Screen"

# Removed Option "metamodes" "DVI-D-0: nvidia-auto-select +0+0"
# Removed Option "metamodes" "DVI-D-0: nvidia-auto-select +0+0, DVI-I-0: nvidia-auto-select +1920+0"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-3"
    Option         "metamodes" "DVI-D-0: nvidia-auto-select +0+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"

# Removed Option "metamodes" "DVI-I-0: nvidia-auto-select +0+0"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "CRT-0"
    Option         "metamodes" "DVI-I-0: 1024x768 +0+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display" 
       Depth       24
    EndSubSection
EndSection

Section "Extensions"
    Option         "Composite" "Disable"
EndSection


I then rebooted, and executed “nvidia-settings” as root. 1680x1050 was available in the resolution list of the Acer Monitor in the “X Server Display Configuration” tab. I chose it, clicked on “Save to X configuration file”, accepted to merge with the existing xorg.conf (you might want to copy the existing xorg.conf before messing with it, to do so : in a terminal as root type “cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup”), rebooted again, and voilà !

HTH,

Antoine

Well done Antoine. Using xrandr to test new display modes is a good approach IMHO, and one I’ve often encouraged here, before committing the working modeline(s) to the Xorg configuration file.