I recently bought a KVM switch, consisting of a VGA switcher and switchable USB hub. This switch however, does not pass EDID info from the connected display to either of the two connected computers.
I am using it to switch between a dockable laptop running Arch (Antergos) and a Windows PC. The Windows PC handles the lack of EDID info. The laptop does not. This problem does not occur when the laptop is directly connected to the monitor.

The laptop will limit the maximum resolution on the switched monitor to 1024x768. The GNOME settings menu and xrandr also accept 800x600 as a working option. The native resolution of this screen is 1280x1024@75Hz. Attempting to switch to this resolution manually with xrandr, or by GNOME settings after adding it through xrandr, results in it to instantly switching back to 1024x768. This does not happen when running outside a gnome session (startx /usr/bin/xterm) and the system will happily switch to whatever resolution. Even when gnome-session is started manually from xterm after fixing the resolution, it will revert back to 1024x768 and remain that way until gnome-session ends.

System: Lenovo Thinkpad x230 Tablet (Wacom ISD is not the cause of the problem)
OS: Arch (Antergos) with default configuration for everything display related.
Monitor: AOC LM721A
KVM switch: FJ-2UK

Relevent Xorg.0.log lines:

[   201.470] (II) intel(0): switch to mode 1280x1024@75.0 on VGA1 using pipe 1, position (0, 0), rotation normal, reflection none  
[   201.572] (II) intel(0): switch to mode 1024x768@60.0 on VGA1 using pipe 1, position (0, 0), rotation normal, reflection none

I have spent a few hours debugging and googling this issue and have so far come up empty.

Any help is appreciated.
--
Kaelan

  • Try removing the monitors.xml file in ~/.config/, rebooting, and setting the desired resolution with xrandr. – drs Feb 15 '15 at 17:20
  • @drs That works, now it switches to the right resolution. It even works through reboot so long as the mode is added to xrandr. If you added this as a solution I would accept it. – KaelanDuck Feb 16 '15 at 0:49
up vote 2 down vote accepted

Somewhere around version 3.14 gnome added a feature where it remembers the configurations of previously plugged-in monitors. Unfortunately, this feature sometimes prevents gnome from allowing a monitor's proper resolution to be set. Common symptoms are xrandr failing to change the resolution and providing no error as to why, as well as monitors exhibiting the correct resolution at a tty console, but not in gnome.

The configurations are stored in an undocumented file in ~/.config/monitors.xml. You can poke through this file to see if you can identify the offending entry and remove it. Or you can regain control over your monitors entirely and delete this file altogether.

After changing the file, you may need to reboot or restart gnome before you can set the correct resolution with xrandr.

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.