0

I have a NVidia GT8600 with two monitors connected (one via VGA port, one via component port). With the default xorg.conf the second monitor (component) isn't detected and the first runs at a resolution that forces the monitor to turn off. So I'm trying to manually configure them. I've got both monitors ON, but at wrong resolutions. I've tried creating modelines etc. but they are just ignored, and the wrong resolution is running on both monitors.

I want monitor0 (LCD) to be 800x480 60Hz, monitor1 (projector) 1920x1080 60Hz, extended desktop with monitor 1 to right of monitor 0. My two xorg configs are:

50-lcd.conf:

# LCD display in SilverStoneTek case
Section "Monitor"
    Identifier     "LCD"
    VendorName     "SilverstoneTek"
    ModelName      "Chassis"
    HorizSync       28.0 - 33.0
    VertRefresh     43.0 - 72.0
    Modeline       "800x480_60.00"  29.58  800 816 896 992  480 481 484 497  -HSync +Vsync
EndSection

Section "Device"
    Identifier     "VGAport"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 8600 GT"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "VGAport"
    Monitor        "LCD"
    DefaultDepth    24
    Option         "TwinViewXineramaInfoOrder" "CRT-0"
    Option         "metamodes" "CRT-0: 800x480_60.00 +0+0, TV-0: 1920x1080_60.00 +0+0"
    Option         "ConnectedMonitor" "CRT-0, TV-0"
    SubSection     "Display"
        Depth       24
        Modes      "800x480_60.00" "800x480"
    EndSubSection
EndSection

60-projector.conf:

Section "Monitor"
    Identifier     "Projector"
    VendorName     "Sony"
    ModelName      "VPL-HW20"
    HorizSync      15.0 - 600.0
    VertRefresh    15.0 - 600.0
    Modeline "1920x1080_60.00"  172.80  1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync
    Option         "dpms"
EndSection

Section "Device"
    # do not use the frequencies provided by the monitor edid 
    Identifier     "ComponentPort"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 8600 GT"
EndSection


Section "Screen"
    Identifier     "Screen1"
    Device         "ComponentPort"
    Monitor        "Projector"
    DefaultDepth    24
    Option         "metamodes" "CRT-0: 800x480_60.00 +0+0, TV-0: 1920x1080_60.00 +0+0"
    SubSection     "Display"
        Depth       24
        Modes      "1920x1080_60.00" "1920x1080"
    EndSubSection
EndSection

but xrandr shows the wrong resolutions are in use, and my custom modelines aren't even showing up:

Screen 0: minimum 8 x 8, current 1824 x 768, maximum 8192 x 8192
DVI-I-0 connected primary 800x600+0+168 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00 +
   800x600       72.19    60.32*   56.25  
   800x480       60.00  
   640x480       59.94  
   512x384       60.00  
   400x300       72.19  
   320x240       60.05  
DVI-I-1 disconnected (normal left inverted right x axis y axis)
TV-0 connected 1024x768+800+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00*+
   800x600       60.01  
   720x480       60.00  
   640x480       60.01  
   640x400       60.00  
   512x384       60.00  
DVI-I-2 disconnected (normal left inverted right x axis y axis)
DVI-I-3 disconnected (normal left inverted right x axis y axis)

In case it matters, the Xorg.0.log references CRT-0 and TV-0 while xranrd calls them DVI-I-0 and TV-0. There are no errors in Xorg.0.log and sinces it's long I won't repost the whole thing, but here are some odd lines:

[  3545.187] (II) NVIDIA(0): Setting mode "CRT-0:800x480_60.00+0+0,TV-0:1920x1080_60.00+0+0"
[  3546.255] (II) NVIDIA(0): Setting mode "DVI-I-0: 800x480_60.00 @800x480 +0+0 {ViewPortIn=800x480, ViewPortOut=800x480+0+0}, TV-0: nvidia-auto-select @1024x768 +800+0 {ViewPortIn=1024x768, ViewPortOut=1024x768+0+0}"
[  3546.425] (II) NVIDIA(0): Setting mode "DVI-I-0: 800x600_60 @800x600 +0+168 {ViewPortIn=800x600, ViewPortOut=800x600+0+0}, TV-0: nvidia-auto-select @1024x768 +800+0 {ViewPortIn=1024x768, ViewPortOut=1024x768+0+0}"

It looks like it tried to set the LCD to 800x480, then immediately changed it to 800x600. Why? And it's not even trying to set projector to 1920x1080, it just uses 'nvidia-auto-select'. Why?

  • My GT 730 works fine with three monitors using nouveau. If using nvidea have you tried using no xorg.conf at all and using whatever setup utility nvidea offers? – Ray Andrews Dec 30 '16 at 19:29
1

I believe nvidia is getting the resolution based on EDID from the monitor and thus ignoring your modeline. You can add option to ignore EDID in "Monitor" section of your xorg.conf. Something like:

   Option "UseEDID" "false" 
   Option "UseEDIDFreqs" "false" 
   Option "IgnoreEDID" "true" 

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.