Changing screen resolution

Leap42.2. Asus Tuf Z270, Asus NVidia 730 graphics card and 3 Benq 19" monitors at 1366x768. Running NVidia driver version 375.39. The card drives the three monitors, one as DVI-0, second as HDMI-0 and third as VGA-0. VGA-0 will not talk to the card or Suse and defaults to 1024x768.

I jump through the following hoops

inux-5rnm:~ # xrandr
Screen 0: minimum 8 x 8, current 3756 x 768, maximum 16384 x 16384
VGA-0 connected 1024x768+2732+0 (normal left inverted right x axis y axis) 0mm x 0mm
1024x768 60.00*+
800x600 72.19 60.32 56.25
640x480 59.94
512x384 60.00
400x300 72.19
320x240 60.05
DVI-D-0 connected 1366x768+1366+0 (normal left inverted right x axis y axis) 434mm x 236mm
1366x768 59.79*+
1280x720 60.00
1024x768 75.03 60.00
800x600 75.00 60.32
640x480 75.00 59.94
HDMI-0 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 434mm x 236mm
1366x768 59.79*+
1280x720 60.00
1024x768 75.03 60.00
800x600 75.00 60.32
640x480 75.00 59.94
linux-5rnm:~ # cvt 1366 768

1368x768 59.88 Hz (CVT) hsync: 47.79 kHz; pclk: 85.25 MHz

Modeline “1368x768_60.00” 85.25 1368 1440 1576 1784 768 771 781 798 -hsync +vsync

linux-5rnm:~ # xrandr --newmode “1368x768_60.00” 85.25 1368 1440 1576 1784 768 771 781 798 -hsync +vsync

linux-5rnm:~ # xrandr --newmode “1366x768_60.00” 85.25 1368 1440 1576 1784 768 771 781 798 -hsync +vsync
linux-5rnm:~ # xrandr --addmode VGA-0 1366x768_60.00
linux-5rnm:~ # xrandr --output VGA-0 --mode 1366x768_60.00
linux-5rnm:~ # xrandr --addmode VGA-0 1368x768_60.00
linux-5rnm:~ # xrandr --output VGA-0 1368x768_60.00

linux-5rnm:~ # xrandr --output VGA-0 --mode 1368x768_60.00
linux-5rnm:~ # xrandr --output VGA-0 --mode 1366x768_60.00

So after all of this the NVidia configurator sees the third monitor finally as with the correct native resolution plus the monitor is operating with the correct resolution. Where do I write the new modeline to so I have this on the next boot up. The Nvidia utility just draws a blank about where to save the new modeline. I personally on Open Suse Leap do as well because I am used to writing this type of thing to /etc/Xorg.conf but I dont find that file anywhere in etc…

Any suggestions or help deeply appreciated.

Where do I write the new modeline to so I have this on the next boot up.

You could create a script with the appropriate xrandr lines, save and make it executable, then add it to your desktop’s autostart folder


#!/bin/bash
xrandr --newmode "1366x768_60.00"   85.25  1368 1440 1576 1784  768 771 781 798 -hsync +vsync
xrandr --addmode VGA-0 1366x768_60.00
xrandr --output VGA-0 --mode 1366x768_60.00

For Plasma 5…
System Settings > Startup and Shutdown > Autostart > Add Script…

It is also possible to create a .desktop file in ~/.config/autostart/
https://wiki.archlinux.org/index.php/GNOME#Startup_applications

The Nvidia utility just draws a blank about where to save the new modeline.

Do you mean nvidia-settings? I think it needs to be run as root in order to save any Xorg config it generates.

I personally on Open Suse Leap do as well because I am used to writing this type of thing to /etc/Xorg.conf but I dont find that file anywhere in etc…

The Xorg config files live in /etc/X11/xorg.conf.d/, but if you create a custom /etc/X11/xorg.conf file it is still used (assuming valid entries of course).

deano_ferrari

Hello and thanks for the suggestion. The script is one idea. I did run the NVidia configurator or settings if you will…as root and it had-on this system at least- no idea where to save the chages in the configuration. Additionally the NVidia configurator would not allow any other resolution on VGA-0 other than 1024x768. Selecting 1366x768 was not even an option. Needed the xrandr steps to create the new modline so it was selectable…i.e. it appeared as an option in the NVidia settings program…then after that, the program had no idea of where to put the changes and…the next reboot of course one is back to the same old thing. In Xorg.conf.d I saw no modelines for any monitor as generted in xrandr. Thanks for this information. One would assume that one would tell the NVidia configurator to put the data in Xorg.conf.d but when running the NVidia program as root after I generated the additional option(xrandr) so Nvidia Settings would even know that 1366x768 even existed and was an option for VGA-0… I attempted to write to xorg.conf.d file and I got an “unable to parse” error and the change was refused.

What of course bothers me is that should I break X- and I have many times in the past on different distros… I was always able to come back with a terminal session and fix what was broken. Now with the complete change in X there isnt a lot of hope of being able to repair any errors because its hard to know where anything is. Before one could always cofigure Xorg.conf because that is where everything was but…I do not see as I said any modesets or modelines anywhere in X11.

Again thanks very much for your kindness and reply, in taking the time to explain something to someone. My first home computer was a BSD Unix machine from AT&T that ran a Motorola 68000 series processor. I have always used Linux dual boot with Windows for many many years. I am a little put off that the efforts to make Linux distros of different flavors more vanilla appealing to people who use a computer like a toster or a dishwasher…and the accompanying change in documentation for each distro…remove further the ability to configure things as wished for those of us more knowledgeable. I work in the futures markets 8 hours a day, build my own machines, have for many years (since before day trading was even a dream) and loathe Widnows 10 but must use it for my trading software…however my digital life- my music, all of my work as an amateur photographer for many years, my writing &c&c exist in Linux for many reasons. Many of the new distros are a little disappointing.

Regards

I don’t run NVIDIA hardware so don’t have experience with using the configuration utility. Can you not simply save as /etc/X11/xorg.conf?

In Xorg.conf.d I saw no modelines for any monitor as generted in xrandr. Thanks for this information. One would assume that one would tell the NVidia configurator to put the data in Xorg.conf.d but when running the NVidia program as root after I generated the additional option(xrandr) so Nvidia Settings would even know that 1366x768 even existed and was an option for VGA-0… I attempted to write to xorg.conf.d file and I got an “unable to parse” error and the change was refused.

You’ll probably have to do this by hand I guess.

The fact is much of Xorg configuration is done automatically these days, and so little/no manual configuration is generally required. It is still possible to manually create config files if desired though.

For more info read the following

man xorg.conf

A minimal configuration (/etc/X11/xorg.conf) that might do the trick…


Section "Monitor"
   Identifier "Monitor0"
   Modeline "1366x768_60.00"   85.25  1368 1440 1576 1784  768 771 781 798 -hsync +vsync
EndSection

Section "Screen"
   Identifier "Screen0"
   Device "VGA-0"
   Option "ModeValidation" "AllowNonEdidModes"
   Monitor "Monitor0"
   DefaultDepth 24
   SubSection "Display"
       Depth 24
       Modes "1366x768_60.00"
   EndSubSection
EndSection

Hello

I also run in to similar problem but i got one monitor 1 monitors not 3 as you have, and also my monitors(HPx20LED) native resolution 1600x900@60 is not picked by my nvidia card so here is the solutin and step which may solve your problem.

  • download user manual of your monitor and look for values of Hor sync frequency range,Ver sync frequency ranges, & DOT pitch values. Most of the vendors provide these values in Technical section of their manual.

  • put these valuse in xorg.conf file under section “monitor”. please note that identifier “monitor0” for your monitor shall be different.

    Identifier “Monitor0”
    VendorName “HP”
    ModelName “HPx20LED”
    HorizSync 24.0 - 85.0
    VertRefresh 50 - 76
    Option “DPMS”

  • now generate mode-line for your specific resolution by running following cmd

cvt 1600 900 60
  • now put the output of cvt cmd in the following manner in xorg.conf file under section “monitor”

Mode “1600x900”
DotClock 118.25
HTimings 1600 1696 1856 2112
VTimings 900 903 908 934
Flags “-HSync” "-VSync
EndMode

at this point xorg.conf is complete remember to use xrandr to know the monitor identifiers, and use the same name identifies in your xorg.conf file.

These steps are for one monitor and can be repeated for as many monitors as you want.

Goodluck and have fun

The new preferred method is to use the files (each represent a section in original xorg.conf) in /etc/X11/xorg.conf.d though the xorg.conf fig works as well just being phased out. Otherwise spot on :wink: