xrandr does not detect external monitor native resolution

Hi,

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:

http://img-fotki.yandex.ru/get/5407/tosiara.15/0_53ecf_49983da1_L](http://img-fotki.yandex.ru/get/5407/tosiara.15/0_53ecf_49983da1_orig)

Now I connect the monitor and highest available resolution is 1600x1200:

http://img-fotki.yandex.ru/get/5604/tosiara.15/0_53ed0_9b6374e3_L](http://img-fotki.yandex.ru/get/5604/tosiara.15/0_53ed0_9b6374e3_orig)


> 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
   1280x800       60.0*+
   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 +
   1600x1200      60.0  
   1400x1050      60.0  
   1280x1024      75.0     60.0  
   1440x900       59.9  
   1280x960       60.0  
   1152x864       75.0     60.0  
   1280x768       59.9  
   1024x768       75.0     70.1     60.0  
   1024x600       60.0  
   800x600        72.2     75.0     70.0     60.3     56.2  
   800x480        60.0  
   720x480        60.0  
   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:

http://img-fotki.yandex.ru/get/5703/tosiara.15/0_53ed1_54f5c7e6_L](http://img-fotki.yandex.ru/get/5703/tosiara.15/0_53ed1_54f5c7e6_orig)

I wonder is there any other workaround to access full resolution that does not require restarting of the system?

Thanks!

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

xrandr

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. :frowning:

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:

https://bugs.kde.org/

I have tried saving 1080p configuration as “Default”, but next time I connect external monitor it is set to 1280x800 again

Update:

After recent xorg and ati driver upgrade - now correct resolution is being detected each time I’m connecting monitor to the notebook. Great!