Laptop external (cloned) projector support in KDE

This thread is based on my experience with KDE-4.3.x in driving an external projector with a cloned output of a laptop display. Discussion for this thread is here: Laptop External Monitor Support - openSUSE Forums

External Monitor Support with Proprietary ATI Graphics
under KDE-4.3.2

I tested the capability to drive an external monitor from my Dell Studio 1537 as we dicussed, and it was SIGNIFICANTLY easier and SIGNIFICANTLY more configurable than I anticipated. In summary, all I did was connect the vga cable, type “xrandr -q” and everything else was GUI controlled. Too simple!

Some more detail:

To refresh, my laptop is a 1 year old Dell Studio 1537 with a P8400 processor and 4GB of RAM. The laptop is running 64-bit openSUSE-11.1 with KDE-4.3.2. The laptop’s Graphics hardware is an ATI Radeon 3450HD. I have the latest proprietary ATI Catalyst™ 9.10 Proprietary Linux x86 Display Driver (released 22-Oct-2009) installed.

I installed this proprietary driver “the hardway” ATI/The Hard Way - openSUSE according to the openSUSE wiki web site, when in fact, the hardway is NOT hard once one knows how. The laptop has the special effects (cube rotation, transparencies, etc … ) with this proprietary driver. It retained these effects when projecting to an external monitor.

I was not able to test in the conference room I intended, so I went to a different conference room, testing with a different projector. The projector was a Texas Instrument “In Focus” projector.

With KDE-4.3.2 running, I plugged in the external cable from the projector. There was no response, as expected. I then typed “xrandr -q” and immediately I obtained this popup and I selected "configure):
http://thumbnails25.imagebam.com/5550/9db5e755496868.gif](http://www.imagebam.com/image/9db5e755496868)

The CRT1(Connected) size was “disabled”, and I then selected “1440x900 (Auto)”.
http://thumbnails19.imagebam.com/5550/42055655496871.gif](http://www.imagebam.com/image/42055655496871)

It offered me the CRT1 screen above the LCD screen:
http://thumbnails12.imagebam.com/5550/4f243555496873.gif](http://www.imagebam.com/image/4f243555496873)

and it offered me various rotations
http://thumbnails12.imagebam.com/5550/bd249055496875.gif](http://www.imagebam.com/image/bd249055496875)

… continued …

… continued from above post …

I selected “clone of” and “No Rotation”
http://thumbnails24.imagebam.com/5550/af5ea955496878.gif](http://www.imagebam.com/image/af5ea955496878)

There is a “power control” tab that I ignored. My experience is KDE4 is still buggy for Power Control and I’ve read of lockups, and I did not want to risk that.
http://thumbnails25.imagebam.com/5550/a16f9155496880.gif](http://www.imagebam.com/image/a16f9155496880)

I then selected “Apply” and obtained this menu:
http://thumbnails20.imagebam.com/5550/30eb8155496883.gif](http://www.imagebam.com/image/30eb8155496883)

… and that was it. The projector projected wonderful picture on the wall, of the proper resolution, identical to that on my Laptop’s LCD screen.

I tested unplugging the VGA and replugging a number of times. Each time I replugged the video immediately went to the projector. This is an essential feature for meetings, where projector’s VGA cables are often switched constantly between different user’s laptops.

When it came time to finally stop, I typed:

xrandr --output CRT1 --off

which stopped projecting the video to the projector.

Out of curiousity I also typed

xrandr --output CRT1 --auto 

and immediately the video from my laptop was properly projected to the monitor.

I tried that a few times (sending “–off”, followed by “–auto” ), confirming it was repeatable.

I’m impressed. I do not know anything about the capabilities of MS-Windows here, but I have seen users with both Vista and WinXP hot plug an external monitor, and the choices/flexbility I have here surpasses what those Vista/WinXP users showed me. Thats not to say this KDE4 menu system is better, but rather it is to say that what I saw today surpassed what was shown me in the past on WinXP/Vista.

External Monitor Support with Intel Graphics under KDE-4.3.4

I installed KDE-4.3.4 under openSUSE-11.1 on our family old Fujitsu-Siemens Amilo 7400M laptop (which has 1.2 GB RAM, with an Intel 855 GM graphics). I previous tested openSUSE-11.2 live CD on this laptop, and was not happy with the results (see this thread: Intel 855GM graphics problems w/openSUSE-11.2s 2.6.31 kernel - openSUSE Forums ) so instead of updating to openSUSE-11.2, I instead re-installed openSUSE-11.1 with KDE-4.1.3 and then upgraded it to KDE-4.3.4.

I wanted KDE-4.3.x because its external projector support (for a cloned projector of one’s laptop screen) works SIGNIFICANTLY better than that of KDE-3.5.10 IMHO. The ability to clone one’s laptop display to an external projector is very important in corporate meetings when travelling off site to other companys.

Also of note is driving an external projector from his laptop with WinXP never worked. Nor did it work with KDE-3.5.10.

So I booted the laptop to openSUSE-11.1 KDE-4.3.4, and after plugging in the VGA connector to the back of the laptop, I opened a konsole and typed “xrandr” and was very pleased to see this popup:
http://thumbnails23.imagebam.com/6019/7b7c8860187044.gif](http://www.imagebam.com/image/7b7c8860187044)

After selecting “configure” I obtained the following display. I was a bit surprised to see “VGA” (which is the external projector) on the top of the dialog box window, but then I realized expecting to see it on the bottom was my preconceived notion which was not imaginative enough.
http://thumbnails25.imagebam.com/6019/d8cd2960187047.gif](http://www.imagebam.com/image/d8cd2960187047)

Since the “VGA” (external projector) was indicating “size=disabled” I then selected the arrows next to that and obtained this display:
http://thumbnails20.imagebam.com/6019/357c6960187050.gif](http://www.imagebam.com/image/357c6960187050)

I then selected 1024x768 (top resolution of this ancient laptop) and had this display:
http://thumbnails23.imagebam.com/6019/b1ff9960187054.gif](http://www.imagebam.com/image/b1ff9960187054)

I then selected “apply” and the laptop screen was immediately projected via the external projector. I selected to accept that, and the display functionality worked fine.

After 7 years with this laptop to have this finally working is wonderful. As noted, it NEVER worked under WinXP on this laptop. Nor did it work under KDE3.

I removed and reconnected the VGA cable several times to prove that the external display would immediately function when the cable was reconnected.

I typed :

xrandr --output VGA --off

which stopped projecting the video to the external projector.

I typed:

xrandr --output VGA --auto

and immediately the video from the laptop was properly projected to the external projector.

I’m impressed again.

So this ‘just works’ with Intel graphics on openSUSE-11.1. I have my fingers crossed that eventually the compatibility problem with the Intel graphic drivers and the 2.6.31 kernel (which is impacting openSUSE-11.2) will be solved.

Do any gnome users, or any KDE nVidia users have screen prints on the setup (to drive an external projector) to share? Please post any comments here: http://forums.opensuse.org/hardware/laptop/423610-laptop-external-monitor-support.html

**External Monitor Support with nvidia Graphics **

The reference for this nVidia section in a somewhat old how-to is here: [HOWTO] Solve dual monitor problem on Intel graphic cards after updating kernel on 11.3](http://forums.opensuse.org/english/get-technical-help-here/how-faq-forums/unreviewed-how-faq/448293-howto-solve-dual-monitor-problem-intel-graphic-cards-after-updating-kernel-11-3-a.html)

For nVidia hardware, one can use either two applications to drive an external monitor/projector for a presentation:

  • nvidia-settings (currently packaged by Packman packagers)
  • disper (soon to be packaged by Packman packagers)

nvidia-settings

Section TBD

disper

disper is a terminal application for quick control of one’s graphics. The ‘disper -h’ command provides an indication of the controls available for monitor/projector control:

/usr/bin/disper -h

Usage: disper [options] (-l|-s|-c|-e|-p|-i)

Options:                                                                                                                                                     
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -v, --verbose         show what's happening
  -q, --quiet           be quiet and only show errors                                                                                                        
  -r RESOLUTION, --resolution=RESOLUTION
                        set resolution, e.g. "800x600", or "auto" to detect                                                                                  
                        the display's preferred resolution, or "max" to use
                        the maximum resolution advertised. For extend it is                                           
                        possible to enter a single resolution for all displays
                        or a comma-separated list of resolutions (one for each
                        display). Beware that many displays advertise
                        resolutions they can not fully show, so "max" is not
                        advised.
  -d DISPLAYS, --displays=DISPLAYS
                        comma-separated list of displays to operate on, or
                        "auto" to detect; the first is the primary display.
  -t DIRECTION, --direction=DIRECTION
                        where to extend displays: "left", "right", "top", or
                        "bottom"
  --scaling=SCALING     flat-panel scaling mode: "default", "native",                                                 
                        "scaled", "centered", or "aspect-scaled"                                                      
  --plugins=PLUGINS     comma-separated list of plugins to enable. Special                                            
                        names: "user" for all user plugins in ~/.disper/hooks;                                        
                        "all" for all plugins found; "none" for no plugins.                                           
  --cycle-stages=CYCLE_STAGES
                        colon-separated list command-line arguments to cycle
                        through

  Actions:
    Select exactly one of the following actions

    -l, --list          list the attached displays
    -s, --single        only enable the primary display
    -S, --secondary     only enable the secondary display
    -c, --clone         clone displays
    -e, --extend        extend displays
    -p, --export        export current settings to standard output
    -i, --import        import current settings from standard input
    -C, --cycle         cycle through the list of cycle stages


For example, with two displays connected to a nVIDIA video card: (1) a main monitor in front, and (2) a smaller TV, connected by HDMI above on a shelf, one can use the following command to turn the top one on as an extended user space above the main work space with the command:

/usr/bin/disper -e -t top