Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have correctly configured a dual monitor setup on Ubuntu Linux, Karmic 9.10. I use the Fn+CRT/LCD key to switch between modes, but I have to cycle through 5 modes before I get to the one that I use.

The modes that it cycles through (one for each Fn+CRT/LCD keypress) are:

  1. LCD only
  2. CRT only
  3. Both, with CRT below LCD
  4. Both, with CRT to the right of LCD
  5. Both, mirrored

Is there any way I can disable some of these modes so that I don't have to cycle through so many to switch between the two I actually use?

I am on a Dell XPS M1330.

share|improve this question
add comment

3 Answers

In the mean time, to work around this problem, I ended up building custom xrandr commands that switch between the modes that I use, and created launchers for these xrandr commands on my doc/menu.

  • Dual-Monitor: xrandr --output LVDS1 --mode 1280x800 --output VGA1 --below LVDS1 --mode 1280x1024
  • Mirror Screens: xrandr --output LVDS1 --mode 1024x768 --output VGA1 --same-as LVDS1 --mode 1024x768
  • Laptop Screen Only: xrandr --output LVDS1 --mode 1280x800 --output VGA1 --off

If constructing your own scripts, you can find your monitor output names (LVDS1 and VGA1 for me) by running xrandr without any arguments. man xrandr is helpful for figuring out the options you can use to get the layout like you want it.

This workaround works great for me, eliminating the need to solve the initial problem.

share|improve this answer
    
Yeah... tweaking xrandr is what a co-worker recommended when I mentioned your dilemma to him. However, I like the kernel-spelunking approach... great way to learn stuff. –  pbr Dec 4 '09 at 19:48
add comment

The Ubuntu wiki has a page which should be a good starting point.

share|improve this answer
    
added in an edit –  nilbus Nov 9 '09 at 23:11
    
Speedy work! I don't have any experience with Dells, but I hope you find a solution. –  Chris Harcourt Nov 9 '09 at 23:15
    
That's a good idea. I tried scanning for the keyboard event with xev, but xev does not receive any events when that key combination is pressed. Unfortunately, that led nowhere. –  nilbus Nov 10 '09 at 3:28
add comment

So, I know this doesn't answer your question - yet. I was trying to find what code cycles through the 5 "modes" you mention in your question, and this is what I've found so far.

It looks like you've found a bit of a can of karmic worms.

It appears that the Fn-F8 key is getting ignored within dell-wmi.c - I see an error to /var/log/messages each time I press it: dell-wmi: Unknown key 42 pressed - so the code to switch monitor configurations isn't being called from there.

With nothing plugged into the external VGA port, here's what I'm seeing in /var/log/messages when I hit Fn-F8:

Dec  2 14:27:02 RStops-PBR kernel: [26143.201120] dell-wmi: Unknown key 42 pressed
Dec  2 14:27:02 RStops-PBR kernel: [26143.430158] i2c-adapter i2c-2: unable to read EDID block.
Dec  2 14:27:02 RStops-PBR kernel: [26143.430163] i915 0000:00:02.0: HDMI Type A-1: no EDID data
Dec  2 14:27:02 RStops-PBR kernel: [26143.435023] i2c-adapter i2c-2: unable to read EDID block.
Dec  2 14:27:02 RStops-PBR kernel: [26143.435026] i915 0000:00:02.0: HDMI Type A-1: no EDID data
Dec  2 14:27:02 RStops-PBR kernel: [26143.439499] i2c-adapter i2c-4: unable to read EDID block.
Dec  2 14:27:02 RStops-PBR kernel: [26143.439502] i915 0000:00:02.0: HDMI Type A-2: no EDID data
Dec  2 14:27:02 RStops-PBR kernel: [26143.443954] i2c-adapter i2c-4: unable to read EDID block.
Dec  2 14:27:02 RStops-PBR kernel: [26143.443958] i915 0000:00:02.0: HDMI Type A-2: no EDID data
Dec  2 14:27:02 RStops-PBR kernel: [26143.490877] [drm] TV-25: set mode NTSC 480i 0
Dec  2 14:27:02 RStops-PBR kernel: [26143.632555] [drm] TV-25: set mode NTSC 480i 0
Dec  2 14:27:03 RStops-PBR kernel: [26144.621183] i2c-adapter i2c-2: unable to read EDID block.
Dec  2 14:27:03 RStops-PBR kernel: [26144.621187] i915 0000:00:02.0: HDMI Type A-1: no EDID data
Dec  2 14:27:03 RStops-PBR kernel: [26144.625648] i2c-adapter i2c-2: unable to read EDID block.
Dec  2 14:27:03 RStops-PBR kernel: [26144.625652] i915 0000:00:02.0: HDMI Type A-1: no EDID data
Dec  2 14:27:03 RStops-PBR kernel: [26144.630157] i2c-adapter i2c-4: unable to read EDID block.
Dec  2 14:27:03 RStops-PBR kernel: [26144.630159] i915 0000:00:02.0: HDMI Type A-2: no EDID data
Dec  2 14:27:03 RStops-PBR kernel: [26144.634866] i2c-adapter i2c-4: unable to read EDID block.
Dec  2 14:27:03 RStops-PBR kernel: [26144.634870] i915 0000:00:02.0: HDMI Type A-2: no EDID data
Dec  2 14:27:03 RStops-PBR kernel: [26144.680947] [drm] TV-25: set mode NTSC 480i 0
Dec  2 14:27:04 RStops-PBR kernel: [26144.822361] [drm] TV-25: set mode NTSC 480i 0

After that I see some number of odd pulseaudio messages:

Dec  2 14:27:36 RStops-PBR pulseaudio[2436]: ratelimit.c: 1 events suppressed

(Note though that I'm on a Dell Latitude E6500 notebook, not an XPS M1330)

I'll keep poking at this as time permits and post a followup if/when I find anything.
-pbr

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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