When I’m connecting second monitor to the laptop, Display Settings applet (and xrandr -q) does not detect full list of supported resolutions. I need to restart my system or perform Log off while monitor is connected to make full list available.
openSUSE 11.4 32 bit, Ati Mobility Radeon HD 3450, proprietary ATI driver 11.3 8.831.2-110308a-115935C-ATI
External monitor is FullHD SyncMaster B2330 (1920x1080)
Here how my system looks like before connecting 2nd monitor:
Now I connect the monitor and highest available resolution is 1600x1200:
> xrandr -q
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 1600 x 1600
LVDS connected 1280x800+0+0 (normal left inverted right x axis y axis) 331mm x 207mm
1280x768 60.0 +
1280x720 60.0 +
1024x768 60.0 +
1024x600 60.0 +
800x600 60.0 +
800x480 60.0 +
720x480 60.0 +
640x480 60.0 +
DFP1 connected 1280x800+0+0 (normal left inverted right x axis y axis) 509mm x 286mm
1280x800 75.0 + 60.0*
1280x720 60.0 +
1280x1024 75.0 60.0
1152x864 75.0 60.0
1024x768 75.0 70.1 60.0
800x600 72.2 75.0 70.0 60.3 56.2
640x480 75.0 72.8 60.0
CRT1 disconnected (normal left inverted right x axis y axis)
TV disconnected (normal left inverted right x axis y axis)
After performing LogOff and LogIn I open the same applet and now it offers me 1920x1080:
I wonder is there any other workaround to access full resolution that does not require restarting of the system?
There is a way to use xrandr to add new display modes (provided its valid for both graphics card and display). I’ve never had to use this, so can only explain this by rote.
Say, I need to add a display mode like 1920x1080. I use cvt like this
cvt 1920 1080
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
Now add the new mode via xrandr (with the name “1920x1080” to keep it simple)
xrandr --newmode "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -HSync +VSync
If that gets accepted without error, you’re probably in business. Now add the mode
xrandr --addmode DFP1 "1920x1080"
List the available modes with
The new mode should be in the list of available display modes. Finally, try switching to it with
xrandr --output DFP1 --mode "1920x1080"
Adding new mode failed:
> xrandr --newmode "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -HSync +VSync
X Error of failed request: BadName (named color or font does not exist)
Major opcode of failed request: 157 (RANDR)
Minor opcode of failed request: 16 (RRCreateMode)
Serial number of failed request: 31
Current serial number in output stream: 31
That’s what I was afraid of.
I tested with a display running at 1680x1050. I was able to create a new 1400x900 display mode, without error, but I also tried adding a higher resolution and that failed (as you’ve described).
What happens if you toggle the newly added display with
xrandr --output DFP1 --off
then back on again with
xrandr --ouput DFP1 --auto
What does xrandr report then?
The first command turns 2nd monitor off, the second command turns it back on with 1280x800 resolution
Yes, it may turn back on at 1280x800, but I wanted to know (via the xrandr command) if the 1920x1080 resolution was then available.
Another thing you could try, is to log out and back in with the display attached (as you described in your first post), so that the 1920x1080 mode is reported. Then, via System Settings>> Display and Monitor, you could try configuring the second monitor with the desired resolution, and save with ‘Save as Default’. The next time, you attach the monitor while in a KDE session, does it start up at preferred resolution?
If not, I’m afraid you might have to file a bug report with the KDE team:
I have tried saving 1080p configuration as “Default”, but next time I connect external monitor it is set to 1280x800 again
After recent xorg and ati driver upgrade - now correct resolution is being detected each time I’m connecting monitor to the notebook. Great!