Ubuntu 10.04 LTS is unable to handle analog monitors (resolution cannot be set)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
xserver-xorg-video-intel (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
After a couple of years with 8.x on an AMD 64 machine with an Nvidia 285 graphics board, I know switched to 10.04 LTS on an Intel ICH10 machine (quadcore) with onboard Intel Q45 graphics (Fujitsu Esprimo P5731).
Ubuntu 10.04 LTS is unable to work with my high quality analog monitor (Samsung Syncmaster 950 p plus). As it is an anlog monitor capable of going up to 1600 x 1200 at 85 Hz (fh max is 110 kHz) it is connected to the PC using BNC connectors / coaxial cables - the standard for high quality analog monitor connection.
BNC connections by design cannot transport DDC information, so EDID is not available. But instead of either asking the user to manually enter either the monitor make & model or alternatively it's resolution/
After some googling I found some advice in an Ubuntu user forum, querying a standard VESA modeline at 1600 x 1200 at 85 Hz (cvt 1600 1200 85) and adding this as a new mode (xrandr --newmode [output of cvt] ; xrandr --admode VGA1 1600x1200_85.00). After that I can select the correct resolution with System / Preferences.
But annoyingly this has to be repeated after every (!) reboot, because some nasty automatic function thinks that this resolution is beyond the capabilities of my monitor (which is not true) and dismisses the correct setting, reverting to 1024 x 768 60 Hz and giving an error message after login ("correct settings cannot be determined" - ?).
This is highly annoying! If there is an automatic function, there _always_ (always, always, always!) has to be a manual override. Do not try to be overly user-friendly. There is nothing wrong with an additional, optional, manual settings dialog.
In the meantime until the GUI is fixed, is there a way to persistently convince the X server (or wherever the dismissal of the configuration takes place) that the resolution is correct?
With some googling I found a way to circumvent the problem, adapting ways described in http:// wiki.ubuntuuser s.de/RandR I created the file /etc/X11/ Xsession. d/45custom_ xrandr- settings using values I computed issuing cvt.
xrandr --newmode "1280x960_105.00" 187.00 1280 1376 1512 1744 960 963 967 1023 -hsync +vsync
xrandr --addmode VGA1 1280x960_105.00
xrandr --newmode "1600x1200_85.00" 235.00 1600 1728 1896 2192 1200 1203 1207 1262 -hsync +vsync
xrandr --addmode VGA1 1600x1200_85.00
xrandr --output VGA1 --mode 1600x1200_85.00
This will circumvent the problem. A little cumbersome, and showing some oddities: X starts in 800x600, so login dialog is in this resolution. After logging in, the desktop initializes in 800x600 and is immediately changed to 1600 x 1200, which makes the background go into four tiles. As the desktop recognizes this it rescales the background.
So all in all: Speaking in ITIL terms this is _not_ a solution, but merely a workaround. It is still my firm belief that a modern operating system _must_ have a GUI that allows manual mode setting if the automatic procedure fails, and it must fail on each and every analog monitor...