Skip to Content

Dual screen avec portable ACER Aspire 1363WLMi / Carte graphique nVidia FX5200

  •   Matériel : Carte vidéo nVidia FX5200 sortie VGA + TV, 64 Mo, sur un portable ACER Aspire 1363WLMi.
  •   Distribution : Mandrake Official 10.1 32 bits, serveur graphique X.org .
  •   Resource : http://www.nvidia.com/object/linux.html
  •   But : Mise en place d’un affichage étendu doubles écrans (Moniteur CRT + écran LCD du portable) avec une carte vidéo nVidia FX5200.
  •   Prérequis : Driver nVidia installé.

    Pour commencer, faire une sauvegarde du fichier XF86Config en XF86Config_single par exemple. Ce fichier devrait se trouver dans /etc/X11 . Le fichier ainsi renommé pourra servir,le cas échéant, à lancer la machine en mono-écran.

    Pour information comme l’indique la documentation nVidia, l’affichage étendu sur deux moniteurs est possible. De plus, la sortie VGA externe est l’affichage principal, l’écran du portable est donc le second moniteur.

    Voici, pour exemple, mon fichier XF86Config_single :

    # File generated by XFdrake.

    # **********************************************************************
    # Refer to the XF86Config man page for details about the format of
    # this file.
    # **********************************************************************

    Section "Files"
       # Multiple FontPath entries are allowed (they are concatenated together)
       # By default, Mandrake 6.0 and later now use a font server independent of
       # the X server to render fonts.
       FontPath "unix/:-1"
    EndSection

    Section "ServerFlags"
       #DontZap # disable (server abort)
       AllowMouseOpenFail # allows the server to start up even if the mouse doesn't work
       #DontZoom # disable / (resolution switching)
    EndSection

    Section "Module"
       Load "dbe" # Double-Buffering Extension
       Load "v4l" # Video for Linux
       Load "extmod"
       Load "type1"
       Load "freetype"
       Load "synaptics"
       Load "/usr/X11R6/lib/modules/extensions/libglx.so"
    EndSection

    Section "InputDevice"
       Identifier "Keyboard1"
       Driver "keyboard"
       Option "XkbModel" "pc105"
       Option "XkbLayout" "fr"
       Option "XkbOptions" ""
    EndSection

    Section "InputDevice"
       Identifier "SynapticsMouse1"
       Driver "synaptics"
       Option "Protocol" "auto-dev"
       Option "Device" "/dev/input/mice"
       Option "MaxSpeed" "0.12"
       Option "MinSpeed" "0.06"
       Option "BottomEdge" "4200"
       Option "SHMConfig" "on"
       Option "LeftEdge" "1700"
       Option "FingerLow" "25"
       Option "MaxTapTime" "180"
       Option "MaxTapMove" "220"
       Option "FingerHigh" "30"
       Option "VertScrollDelta" "100"
       Option "TopEdge" "1700"
       Option "RightEdge" "5300"
       Option "AccelFactor" "0.0010"
    EndSection

    Section "Monitor"
       Identifier "monitor1"
       VendorName "Generic"
       ModelName "Flat Panel 1280x800"
       HorizSync 31.5-90
       VertRefresh 60
       
       # Sony Vaio C1(X,XS,VE,VN)?
       # 1024x480 @ 85.6 Hz, 48 kHz hsync
       #ModeLine "1024x480"    65.00 1024 1032 1176 1344   480  488  494  563 -hsync -vsync
       
       # Dell D800 and few Inspiron (16/10) 1280x800
       #ModeLine "1280x800"  147.89  1280 1376 1512 1744  800 801 804 848
       ModeLine "1280x800"  87.09 1280 1336 1616 1728 800 802 814 840
       
       # Dell D800 and few Inspiron (16/10) 1680x1050
       #ModeLine "1680x1050"  214.51  1680 1800 1984 2288  1050 1051 1054 1103
       
       # Dell D800 and few Inspiron (16/10) 1920x1200
       #ModeLine "1920x1200" 230 1920 1936 2096 2528 1200 1201 1204 1250 +HSync +VSync
       
       # TV fullscreen mode or DVD fullscreen output.
       # 768x576 @ 79 Hz, 50 kHz hsync
       #ModeLine "768x576"     50.00  768  832  846 1000   576  590  595  630
       
       # 768x576 @ 100 Hz, 61.6 kHz hsync
       #ModeLine "768x576"     63.07  768  800  960 1024   576  578  590  616
    EndSection

    Section "Device"
       Identifier "device1"
       VendorName "nVidia"
       BoardName "NVIDIA GeForce FX (generic)"
       Driver "nvidia"
       Option "DPMS"
       Option "IgnoreEDID" "1"
    EndSection

    Section "Screen"
       Identifier "screen1"
       Device "device1"
       Monitor "monitor1"
       DefaultColorDepth 24
       
       Subsection "Display"
           Depth 8
           Virtual 1280 800
       EndSubsection
       
       Subsection "Display"
           Depth 15
           Virtual 1280 800
       EndSubsection
       
       Subsection "Display"
           Depth 16
           Virtual 1280 800
       EndSubsection
       
       Subsection "Display"
           Depth 24
           Virtual 1280 800
       EndSubsection
    EndSection

    Section "ServerLayout"
       Identifier "layout1"
       InputDevice "Keyboard1" "CoreKeyboard"
       InputDevice "SynapticsMouse1" "CorePointer"
       Screen "screen1"
    EndSection

    Comme on peut le constater, le portable a un écran 16/10 (1280x800). Par ailleurs, j’ai été obligé de modifier le ModeLine (Voir la ligne soulignée), car celui par défaut ne permet pas un bon affichage. Il est possible de calculer le ModeLine à cette adresse : http://koala.ilog.fr/cgi-bin/nph-colas-modelines-fr . Il suffit d’indiquer la Fréquence verticale maximum, soit 60 Hz, et la largeur et la hauteur (en pixels) de l’écran. Il ne reste plus qu’à recopier le résultat obtenu dans le fichier à la place des anciennes valeurs.

    Le paramétrage d’un affichage sur deux moniteurs se fait dans la section « Device ».

    Allons voir ce qui s’y passe :

    Section "Device"
       Identifier "device1"
       VendorName "nVidia"
       BoardName "NVIDIA GeForce FX (generic)"
       Driver "nvidia"
       Option "DPMS"
       Option "MetaModes" "1280x1024,1280x800"
       Option "SecondMonitorVertRefresh" "60"
       Option "ConnectedMonitor" "crt,dfp"
       Option "TwinViewOrientation" "RightOf"
       Option "TwinView"
       Option "SecondMonitorHorizSync" "32-90"
       Option "IgnoreEDID" "1"
    EndSection

    De plus, vu que la sortie VGA externe est l’affichage principal, on aura pris soin dans la section « Monitor » de mettre les paramètres liés au moniteur externe.

    Voici donc mon fichier XF86Config :

    # File generated by XFdrake.

    # **********************************************************************
    # Refer to the XF86Config man page for details about the format of
    # this file.
    # **********************************************************************

    Section "Files"
       # Multiple FontPath entries are allowed (they are concatenated together)
       # By default, Mandrake 6.0 and later now use a font server independent of
       # the X server to render fonts.
       FontPath "unix/:-1"
    EndSection

    Section "ServerFlags"
       #DontZap # disable (server abort)
       #DontZoom # disable / (resolution switching)
       AllowMouseOpenFail # allows the server to start up even if the mouse doesn't work
    EndSection

    Section "Module"
       Load "dbe" # Double-Buffering Extension
       Load "v4l" # Video for Linux
       Load "extmod"
       Load "type1"
       Load "freetype"
       Load "synaptics"
       Load "/usr/X11R6/lib/modules/extensions/libglx.so"
    EndSection

    Section "InputDevice"
       Identifier "Keyboard1"
       Driver "keyboard"
       Option "XkbModel" "pc105"
       Option "XkbLayout" "fr"
       Option "XkbOptions" ""
    EndSection

    Section "InputDevice"
       Identifier "SynapticsMouse1"
       Driver "synaptics"
       Option "Protocol" "auto-dev"
       Option "Device" "/dev/input/mice"
       Option "MinSpeed" "0.06"
       Option "MaxSpeed" "0.12"
       Option "BottomEdge" "4200"
       Option "SHMConfig" "on"
       Option "LeftEdge" "1700"
       Option "FingerLow" "25"
       Option "MaxTapTime" "180"
       Option "MaxTapMove" "220"
       Option "FingerHigh" "30"
       Option "VertScrollDelta" "100"
       Option "AccelFactor" "0.0010"
       Option "TopEdge" "1700"
       Option "RightEdge" "5300"
    EndSection

    Section "Monitor"
       Identifier "monitor1"
       VendorName "Iiyama"
       ModelName "Iiyama HM704UTC, Diamondtron"
       HorizSync 30.0-96.0
       VertRefresh 50-160
       
       # Sony Vaio C1(X,XS,VE,VN)?
       # 1024x480 @ 85.6 Hz, 48 kHz hsync
       ModeLine "1024x480"    65.00 1024 1032 1176 1344   480  488  494  563 -hsync -vsync
       
       # Dell D800 and few Inspiron (16/10) 1280x800
       ModeLine "1280x800"  87.09  1280 1336 1616 1728  800 802 814 840
       
       # Dell D800 and few Inspiron (16/10) 1680x1050
       ModeLine "1680x1050"  214.51  1680 1800 1984 2288  1050 1051 1054 1103
       
       # Dell D800 and few Inspiron (16/10) 1920x1200
       ModeLine "1920x1200" 230 1920 1936 2096 2528 1200 1201 1204 1250 +HSync +VSync
       
       # TV fullscreen mode or DVD fullscreen output.
       # 768x576 @ 79 Hz, 50 kHz hsync
       ModeLine "768x576"     50.00  768  832  846 1000   576  590  595  630
       
       # 768x576 @ 100 Hz, 61.6 kHz hsync
       ModeLine "768x576"     63.07  768  800  960 1024   576  578  590  616
    EndSection

    Section "Device"
       Identifier "device1"
       VendorName "nVidia"
       BoardName "NVIDIA GeForce FX (generic)"
       Driver "nvidia"
       Option "DPMS"
       Option "MetaModes" "1280x1024,1280x800"
       Option "SecondMonitorVertRefresh" "60"
       Option "ConnectedMonitor" "crt,dfp"
       Option "TwinViewOrientation" "RightOf"
       #Option "TwinViewOrientation" "Clone"
       Option "TwinView"
       Option "SecondMonitorHorizSync" "32-90"
       Option "IgnoreEDID" "1"
    EndSection

    Section "Screen"
       Identifier "screen1"
       Device "device1"
       Monitor "monitor1"
       DefaultColorDepth 24
       
       Subsection "Display"
           Depth 8
           Modes "1280x1024" "1280x800"
       EndSubsection
       
       Subsection "Display"
           Depth 15
           Modes "1280x1024" "1280x800"
       EndSubsection
       
       Subsection "Display"
           Depth 16
           Modes "1280x1024" "1280x800"
       EndSubsection
       
       Subsection "Display"
           Depth 24
           Modes "1280x1024" "1280x800"
       EndSubsection
    EndSection

    Section "ServerLayout"
       Identifier "layout1"
       InputDevice "Keyboard1" "CoreKeyboard"
       InputDevice "SynapticsMouse1" "CorePointer"
       Screen "screen1"
    EndSection

    Il va de soi que les valeurs sont à adapter en fonction de votre second moniteur. L’option TwinViewOrientation détermine la position des moniteurs entre eux, ici, le second moniteur se trouve à droite du premier. L’option ConnectedMonitor détermine le type d’écran, CRT pour tube cathodique, DFP pour écran plat et TV pour téléviseur. Toutes les options sont documentées dans le fichier README.txt accessible depuis le site de nVidia suivant la version du driver.