How to set the monitor to its native resolution which is not listed in the resolutions list?
Solution 1
Native resolution for Samsung SyncMaster B2030 is 1600 * 600 60 Hz
-
Generate the modeline using
cvt
:cvt 1600 900 60
which will be:
# 1600x900 59.95 Hz (CVT 1.44M9) hsync: 55.99 kHz; pclk: 118.25 MHz Modeline "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
-
Get the name of the output to which your display is connected:
xrandr
This outputs among other things:
Screen 0: minimum 320 x 200, current 1600 x 900, maximum 8192 x 8192 VGA1 connected 1600x900+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
In this example the name of the output is
VGA1
. -
Create the new modeline (with the values from the output of
cvt
):xrandr --newmode "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
Note:
- the above should be in a single line
- make note of x in 1600 x 900_60.00
-
Add the above created modeline:
xrandr --addmode VGA1 1600x900_60.00
If everything went well xrandr will list your newly added resolution.
-
Test the newly added resolution:
xrandr --output VGA1 --mode 1600x900_60.00
The resolution you set with the above commands will not persist across sessions. Until Ubuntu 11.04 you can add the following lines at the beginning of your /etc/gdm/Init/Default
to set the resolution automatically every time you log in:
xrandr --newmode "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
xrandr --addmode VGA1 1600x900_60.00
xrandr --output VGA1 --mode 1600x900_60.00
This question describes other ways to make xrandr
customizations permanent.
Solution 2
First type in xrandr in your terminal and see which is the connected device. It maybe VGA1 as it is in this case. If not then replace VGA1 by your connected device in the commands below. Then create a new document and name it eg:- "yourname.sh" Type in:
xrandr --newmode "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
xrandr --addmode VGA1 1600x900_60.00
xrandr --output VGA1 --mode 1600x900_60.00
unity --replace
and save it in your home folder (this is for resolution 1600x900). Make it executable by:
chmod a+x ~/yourname.sh
open startup applications and click "ADD". Give a name and type in the command line
bash /home/yourname/yourname.sh
click save. The change appears after you log out and log in
Solution 3
If you don't want to go through the bother of running all the commands as instructed in other answers, you can use ResolutionX. This is a tool that does it all for you:
- executes the
cvt
command - executes the
newmode
,addmode
andoutput
commands - creates a startup file that executes the above upon login.
Related videos on Youtube
Comments
-
Riyaz Mohammed Ibrahim over 1 year
After installing Ubuntu 10.04 with my Samsung SyncMaster B2030, native resolution (1600X900) is not found in the list of resolutions.
-
Scooter over 9 yearsI did this for my Viewsonic G790 (1600x1280_76.00 native resolution) and got an error: xrandr --newmode "1600x1280_76.00" 223.00 1600 1728 1896 2192 1280 1283 1290 1339 -hsync +vsync xrandr: Failed to get size of gamma for output default X Error of failed request: BadName (named color or font does not exist) Major opcode of failed request: 140 (RANDR) Minor opcode of failed request: 16 (RRCreateMode) Serial number of failed request: 19 Current serial number in output stream: 19
-
Sam Watkins over 8 yearsI like this method because it is fairly generic.
-
ntc2 over 6 yearsThanks for showing how to use
cvt
! I've been seeing these mode lines for years and never knew how to calculate one. -
Bharat Khatri about 6 yearsWith modern LCDs, you'd need reduced blanking with
cvt -r
.