Ubuntu does not support the 2232BW's 1680x1050 resolution
At the time of this post, and to my knowledge, Ubuntu has no support for Samsung's 2232BW monitor.
Still, one can use the generic driver with the 2232BW, such as the 'Plug'n'Play monitor' driver or the 'LCD Panel 1680x1050' driver.
Unfortunately, these drivers work for most resolution but the native and maximum resolution of the 2232BW: 1680x1050. This is indeed the resolution that anyone would want to use with such a screen.
After spending several evenings trying to make the 1680x1050 resolution work googling a lot and posting on the Ubuntu forum, I managed to fix the situation which could be described as follow: I could switch to 1680x1050 with Gnome's menu for selected screen resolution (and also monitor and graphic card drivers) but if I reboot the X server (say I log out or reboot the computer) I always get back to 1600x1024.
I actually had to fix to problems
- No specific driver for the 2232BW means that the modeline for 1680x1050 is not the right one. So when rebooting the X server, it rejected the modeline for 1680x1050 and switched back to the resolution just below (1600x1024)
- Gnome memorizes the screen resolution and refresh rate to use during the session which means that even if you fix the modeline, you get back to 1600x1024 when getting on you desktop.
X setup for the Samsung 2232BW
First of all, I must say that I'm running a fresh new install of Ubuntu Gutsy Gibbon (7.10) and that my graphic card is an NVidia 8800GT. This graphic card is not supported from scratch so I installed the latest NVidia driver (see this post for instructions).
This means that the information below might not work with a different setup.
I believe the X config file I modified is the one created by the NVidia driver when I installed it. I changed only what is listed below.
I use the following Section "Monitor" for the 2232BW in my X server configuration file (/etc/X11/xorg.conf
):
Section "Monitor"
Identifier "SyncMaster"
Vendorname "Samsung"
Modelname "2232BW"
Horizsync 31-81
Vertrefresh 56.0 - 75.0
modeline "1680x1050@56" 140.76 1680 1712 2240 2272 1050 1071 1081 1103 -hsync +vsync
Gamma 1.0
EndSection
The Identifier, Vendorname and Modelname fields values are my own. I believe that what you use in this fields does not matter as long as use correctly refer to the Identifier in the Section "Screen".
I found the values for the Horizsync and the Vertrefresh in the PDF user manual on the driver CD provided with the monitor.
See below for details on the modeline.
The Gamma value is the one from the Section "Monitor" I copied, I didn't change it.
I use the following Section "Screen":
Section "Screen"
Identifier "Default Screen"
Device "nVidia Corporation NVIDIA Default Card"
Monitor "SyncMaster"
Defaultdepth 24
SubSection "Display"
Depth 24
Virtual 1680 1050
Modes "1680x1050@56"
EndSubSection
EndSection
I only changed the Monitor field to match the Identifier of the Section "Monitor" and the Modes field to list only the working mode.
One could want to have more than one modeline in the Section "Monitor" for all the lower resolutions available. I would suggest using the one from the "LCD Panel 1680x1050" except the one for 1680x1050. Here they are:
modeline "800x600@56" 36.0 800 824 896 1024 600 601 603 625 +hsync +vsync
modeline "800x600@60" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync
modeline "1280x768@60" 80.14 1280 1344 1480 1680 768 769 772 795 -hsync +vsync
modeline "1280x720@60" 74.48 1280 1336 1472 1664 720 721 724 746 -hsync +vsync
modeline "1280x800@60" 83.46 1280 1344 1480 1680 800 801 804 828 -hsync +vsync
modeline "1440x900@60" 106.47 1440 1520 1672 1904 900 901 904 932 -hsync +vsync
modeline "1600x1024@60" 136.36 1600 1704 1872 2144 1024 1025 1028 1060 -hsync +vsync
When I used the "LCD Panel 1680x1050" driver, I saw that they are actually valid modelines but I didn't try them with the 2232BW driver.
If you want to check if the modeline are valid, check the log file
/var/log/Xorg.0.log
after you've rebooted the X server (log out or use CTRL+SHIFT+BACKSPACE). There is a section in it where the validated and rejected modelines are listed.
The XFree86 Modeline Generator
I used The XFree86 Modeline Generator to create the modeline I use. I didn't get it right right away, I had to try various refresh rates first.
For each modeline, I used the following values (and left the other fields but "Refresh rate" empty):
- Horizontal Sync Rate: 31kHz min 81kHz max
- Refresh Rate: 56Hz min 75Hz max
- Visible Resolution: 1680x1050 pixels
- Constrain Aspect Ratio: 16/10
Gnome's resolution config file
To solve my second problem, I found this post just when I was about to post my own message on the Ubuntu Display manager forum.
It just says there is a config file where gnome stores the screen resolution to use during the session (just what I was looking for !).
The path to the config file is not correct but It showed me the way. Here is the correct path:
~/.gconf/desktop/gnome/screen/default/0/%gconf.xml
I edited it and changed the information to the right resolution and refresh rate, saved, restarted X and logged in. WSXGA+ baby !
Here is the content of the new %gconf.xml:
<?xml version="1.0"?>
<gconf>
<entry name="rate" mtime="1202330703" type="int" value="56">
</entry>
<entry name="resolution" mtime="1202330703" type="string">
<stringvalue>1680x1050</stringvalue>
</entry>
</gconf>