Ceci est une ancienne révision du document !
Problèmes de résolution d'écran
Vous vous retrouvez avec une résolution de 640x480 alors que votre carte graphique peut faire bien mieux ? Votre carte graphique ou votre moniteur n'ont pas été bien détecté(s) ? Cette page va vous aider à résoudre ce problème .
Cette page vous indique comment modifier directement le fichier de configuration du serveur X, pour résoudre certains problèmes d'affichage.
Le fichier de configuration
Sur les dernières versions d'Ubuntu, le fichier xorg.conf semble n'être plus utilisé ! (Il n'est plus présent par défaut, mais le créer manuellement vous permet de configurer tout de même votre serveur X). Les problèmes de résolution d'écran sont a priori le fait d'une mauvaise configuration du serveur X.
Ce fichier est /etc/X11/xorg.conf.
Avant de modifier votre configuration sauvegardez la configuration du serveur graphique avec :
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
Ensuite si un problème survient, vous pourrez remettre l'ancienne configuration avec la commande :
sudo cp /etc/X11/xorg.conf.backup /etc/X11/xorg.conf
puis en redémarrant le serveur graphique avec :
sudo /etc/init.d/gdm restart
(ou kdm
ou xdm restart
selon votre gestionnaire de login), ou en appuyant sur « Ctrl+Alt+⌫ ».
Vous pouvez passer à la console à tout moment avec « Ctrl+Alt+F1…F6 » et revenir au mode graphique avec « Ctrl+Alt+F7 ».
Exécuter à nouveau le script de détection automatique
Il n'est pas certain que ce soit la solution qui réponde le plus souvent au problème, mais c'est certainement la plus facile et la plus rapide, celle à essayer en premier en tout cas ! Il s'agit en fait de relancer le script de détection du matériel vidéo, le même script utilisé par le système lors de l'installation.
Pour ce faire, lancez la commande :
sudo dpkg-reconfigure xserver-xorg
et répondez aux questions qui vous sont posées (dans le doute validez par la réponse par défaut). Mais des fois il n'y a pas de questions et c'est comme ça.
À la fin de l'exécution du script, fermez tous les programmes ouverts sur votre bureau et pressez « Ctrl+Alt+⌫ » pour redémarrer l'environnement graphique (X).
Vous devrez alors vous reconnecter dans votre session, en espérant que les problèmes aient disparu. Sinon, à la prochaine solution…
Spécifications de l'écran non détecté
Éditez le fichier /etc/X11/xorg.conf
Recherchez dans ce fichier la section nommée « Monitor ». Entre les lignes Section "Monitor"
et EndSection
, vous devriez voir apparaitre deux lignes qui débutent par les mots HorizSync
et VertRefresh
. Si elles ne sont pas présentes, vous avez des chances que ce soit la raison de votre problème !
Vous avez maintenant besoin de trouver l'information nécessaire, soit dans le manuel de votre écran, soit par la ligne de commande, soit sur le Net (par ex. en entrant le modèle de votre écran dans Google). Vous avez besoin de connaître la fréquence de synchronisation horizontale (habituellement mesurée en kHz) et le taux de rafraichissement vertical (normalement en Hz). Ces informations sont habituellement disponibles sous la forme "30-98 kHz" ou "50-160 Hz".
Vous pouvez également installez le paquet xresprobe et lancer la commande :
sudo ddcprobe | grep monitorrange
Si votre écran supporte cette commande (ce qui n'est pas toujours le cas), la première paire de chiffres affichée correspond au taux HorizSync, la seconde aux valeurs VertRefresh.
Attention, il arrive quelques fois que ddcprobe ne renvoie ni la résolution maximale (renvoie par exemple 1024x768 au lieu 1280x1024) ni les fréquences maximales du moniteur. Sur certains moniteurs (en général des LCDs), dans le menu hardware du moniteur, il doit y avoir une fonction Reset. En utilisant la fonction Reset du moniteur, vous devriez obtenir les nouvelles résolutions et les nouvelles fréquences. (testé sur des vieux moniteurs XIOD LCD 17 pouces).
Il y a deux manières d'entrer ces valeurs dans le fichier de configuration :
- En lançant la reconfiguration du serveur X (comme précédemment) mais avec le paramètre -plow en plus
sudo dpkg-reconfigure -plow xserver-xorg
- En entrant manuellement les valeurs dans le fichier /etc/X11/xorg.conf. Ajoutez donc les deux lignes
HorizSync
etVertRefresh
selon l'exemple ci-dessous (mais avec vos valeurs bien sûr – n'essayez surtout pas de mettre des valeurs au hasard, ça ne marchera pas !!)Section "Monitor" Identifier "FLATRON 995F" Option "DPMS" HorizSync 30-96 VertRefresh 50-160 EndSection
Fermer tous les programmes et redémarrez le serveur X (comme précédemment).
La modification précédente n'est peut-être pas suffisante. Alors il vous faudra aussi mettre la résolution que vous souhaitez en l'ajoutant selon l'exemple ci-dessous (ici « 1280x1024
», mais avec vos valeurs bien sûr).
Section "Screen" Identifier "Default Screen" Device "Carte vidéo générique" Monitor "Écran générique" DefaultDepth 24 SubSection "Display" Depth 1 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 4 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 8 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 15 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 16 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 24 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection EndSection
Résolutions ou rafraichissements exotiques : les « Modelines »
Il arrive que la résolution que l'on voudrait absolument utiliser refuse jusqu'ici de fonctionner. Il faut dans ce cas utiliser les Modelines. Pour générer cette modeline, on tape dans un terminal :
gtf largeur hauteur fréquence
Où largeur et hauteur sont exprimés en pixels, et la fréquence (de rafraichissement verticale) en Hz.
Exemple :
gtf 1680 1050 75
devrait donner :
# 1680x1050 @ 75.00 Hz (GTF) hsync: 82.20 kHz; pclk: 188.07 MHz Modeline "1680x1050_75.00" 188.07 1680 1800 1984 2288 1050 1051 1054 1096 -HSync +Vsync
On recopie alors la deuxième ligne (la première n'est qu'un commentaire) dans la section Monitor du « xorg.conf » :
Section "Monitor" Identifier "FLATRON 995F" Option "DPMS" HorizSync 30-96 VertRefresh 50-160 Modeline "1680x1050_75.00" 188.07 1680 1800 1984 2288 1050 1051 1054 1096 -HSync +Vsync EndSection
Et on renseigne la résolution dans la section « Screen » de « xorg.conf ».Et ceci pour chaque profondeur de couleur.
Section "Screen" Identifier "Default Screen" Device "Carte vidéo générique" Monitor "Écran générique" DefaultDepth 24 SubSection "Display" Depth 1 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 4 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 8 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 15 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 16 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 24 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection EndSection
Après ceci, il suffit de sauver votre xorg.conf et de redémarrer votre session graphique.
Par lecture des logs Xorg
Recherchez dans le fichier de log
cat /var/log/Xorg.0.log | more
Une suite de ligne comme :
(II) CHROME(0): Supported detailed timing: (II) CHROME(0): clock: 148.5 MHz Image Size: 930 x 523 mm (II) CHROME(0): h_active: 1920 h_sync: 2008 h_sync_end 2052 h_blank_end 2200 h_border: 0 (II) CHROME(0): v_active: 1080 v_sync: 1084 v_sync_end 1089 v_blanking: 1125 v_border: 0 (II) CHROME(0): Ranges: V min: 48 V max: 85 Hz, H min: 31 H max: 92 kHz, PixClock max 170 MHz (II) CHROME(0): Monitor name: V421 (II) CHROME(0): Serial No: 09002038ZB (II) CHROME(0): EDID (in hex): (II) CHROME(0): 00ffffffffffff0038a3e66701010101 (II) CHROME(0): 251401030e5d3478eaf9aba2554a9a25 (II) CHROME(0): 0f474aa1090081c08100814081809040 (II) CHROME(0): 9500a940b300023a801871382d40582c (II) CHROME(0): 4500a20b3200001e000000fd0030551f (II) CHROME(0): 5c11000a202020202020000000fc0056 (II) CHROME(0): 3432310a2020202020202020000000ff (II) CHROME(0): 0030393030323033385a420a20200033 (II) CHROME(0): EDID vendor "NEC", prod id 26598
Modifiez le fichier :
sudo nano /etc/X11/xorg.conf
Et ajoutez
Section "Monitor" Identifier "NEC V421" Option "DPMS" DisplaySize 930 523 HorizSync 31-92 VertRefresh 48-85 # 1920x1080 @ 67.00 Hz (GTF) hsync: 67.5 kHz; pclk: 148.5 MHz #Modeline "Label" clock h_active h_sync h_sync_end h_blank_end v_active v_sync v_sync_end v_blanking (optionnal: +HSync, -HSync, +VSync, -VSync, Interlace, DoubleScan, CSync, +CSync, -CSync) Modeline "1920x1080_60.00" 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync EndSection Section "Screen" Identifier "Default Screen" Device "Carte Vidéo Générique" Monitor "Ecran générique" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1920x1080_60.00" EndSubSection EndSection
ou avec les commandes pour les pilotes Xorg des cartes graphiques qui le supportent.
xrandr --newmode "1920x1080_60.00" 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync xrandr --addnode VGA-0 1920x1080_60.00
Modifier les options du pilote
Dans le cas ou l'ajout de modeline ne corrige pas votre problème de résolution, il est possible de rajouter certains paramètres dans la section Device du fichier de configuration de Xorg. Ces paramètres permettent de désactiver la reconnaissance automatique des paramètres de l'écran ( Plug'n'play ) et de forcer les résolutions définies.
Ils dépendent du pilote utilisé. Pour le pilote propriétaire nvidia, vous pouvez utiliser :
Option "UseEDID" "FALSE" Option "UseDisplayDevice" "DFP" Option "UseEDIDFreqs" "FALSE" Option "ModeValidation" "NoEdidModes"
Exemple :
Section "Device" Identifier "NVIDIA Gforce 7650 GS" Driver "nvidia" Busid "PCI:2:0:0" Videoram 262144 Option "AddARGBVisuals" "True" Option "AddARGBGLXVisuals" "True" Option "UseDisplayDevice" "DFP" Option "UseEDIDFreqs" "FALSE" Option "ModeValidation" "NoEdidModes" Option "UseEDID" "FALSE" Option "NoLogo" "True" EndSection
Pour le pilote libre radeon, vous pouvez utiliser :
Option "IgnoreEDID" "True" Option "DDCMode" "False"
Profondeur de couleur incorrecte
Il peut arriver que la configuration automatique règle la profondeur de couleur plus élevée que le matériel ne peut le supporter. Pour savoir si c'est votre cas, ouvrez le fichier /etc/X11/xorg.conf et recherchez le mot DefaultDepth
. La profondeur de couleur configurée est habituellement 24. Il est possible que cette valeur soit trop élevée; essayez alors de mettre cette valeur à 16.
Si cela ne résout pas votre problème, vous pourrez ensuite la remettre telle qu'elle était.
Enregistrez le fichier, fermez toutes les applications et redémarrez l'environnement graphique. Il ne reste plus qu'à espérer que vous puissiez vous reconnecter à la bonne résolution !
Suite à investigations, ci-joint mon[non neutre] « xorg.conf » avec les bonnes options pour un écran externe CRT branché sur une carte radeon M7 (9000) dans un portable IBM T30 (forcé sur l'écran externe avec les touches Fn+F7, sinon, dans le BIOS) :
Section "Device" Identifier "ATI Technologies, Inc. Radeon Mobility M7 LW [Radeon Mobility 9000]" Driver "ati" Option "MergedFB" "false" Option "BIOSHotkeys" "on" Option "MetaModes" "1280x1024" BusID "PCI:1:0:0" EndSection Section "Monitor" Identifier "Écran générique" Option "DPMS" Option "MonitorLayout" "CRT, CRT" HorizSync 24-80 VertRefresh 56-75 Modeline "1280x1024_60.00" 108.88 1280 1360 1496 1712 1024 1025 1028 1060 -HSync +Vsync EndSection Section "Screen" Identifier "Default Screen" Device "ATI Technologies, Inc. Radeon Mobility M7 LW [Radeon Mobility 9000]" Monitor "Écran générique" DefaultDepth 16 SubSection "Display" Depth 1 Modes "1280x1024_60.00" "1024x768" EndSubSection SubSection "Display" Depth 4 Modes "1280x1024_60.00" "1024x768" EndSubSection SubSection "Display" Depth 8 Modes "1280x1024_60.00" "1024x768" EndSubSection SubSection "Display" Depth 15 Modes "1280x1024_60.00" "1024x768" EndSubSection SubSection "Display" Depth 16 Modes "1280x1024_60.00" "1024x768" EndSubSection SubSection "Display" Depth 24 Modes "1280x1024_60.00" "1024x768" EndSubSection EndSection
Problème de fréquence avec Wine
Si votre serveur X se coupe dès que vous lancez une application avec Wine et que votre écran affiche un message comme "fréquence trop élevée" ou "out of range", ajoutez cette option à la Section "Device" de votre fichier xorg.conf :
Option "ModeValidation" "NoXServerModes"
Cela devrait résoudre votre problème.
Changement manuel de la fréquence de rafraîchissement
Après installation du paquet XXX -installé par défaut sous Ubuntu-, la commande ci-dessous impose la résolution 1024x768 à 75Hz :
xrandr -s 1024x768 -r 75
Pour un Chipset Intel intégré - Feisty et précédents (ou utilisation du pilote i810)
Utilisez 915resolution qui permet de patcher le BIOS video (voir :http://www.geocities.com/stomljen/)
sudo apt-get install 915resolution
relancez le serveur x ou redémarrez votre ordinateur
Si ça ne marche toujours pas revenez au début de ce wiki et vérifiez tout.
Si le problème persiste toujours, c'est peut être que 915resolution n'a pas réussi à trouver la résolution de votre écran (cas très rare). Pour lui donner manuellement la résolution de votre écran éditez le fichier /etc/default/915resolution et modifiez son contenu pour qu'il corresponde au suivant:
MODE=auto XRESO=1280 # la résolution en largeur de votre écran YRESO=800 # la résolution en longueur de votre écran BIT=24
Puis redémarrez et il ne devrait plus y avoir de problèmes.
Problème de Checksum des EDID avec certains écrans particuliers (exemple : écran HDMI HANNspree HF257)
Sur les dernières versions d'Ubuntu (depuis la 11.04 environ), certains écrans (particulièrement les HDMI) peuvent ne plus fonctionner correctement alors qu'il n'y avait aucun problème sur les distributions précédentes. Cela est dû au fait que Xorg fait maintenant une vérification de la checksum de l'EDID de votre écran. Quand cette vérification ne passe pas, votre écran qui marchait pourtant bien sur une ancienne distribution ne fonctionnera qu'en mode de secours (800x600) et rien ne vous indiquera vraiment pourquoi. Une simple vérification des logs pointera le problème.
Solution (a focntionné pour un HANNspree HF257) :
Il suffit d'ajouter la ligne suivante dans la section Device du fichier xorg.conf :
Option "IgnoreEDIDChecksum" "CRT,DFP,TV"
Changer la résolution dans l'éditeur de configuration GConf
Dans le cas d'un problème de résolution coincé en 1024 * 768 (et résolution désirée de 1280 * 1024), aucune des solutions proposées n'a réglé.
En fait la solution était la suivante : dans l'éditeur de configuration GConf, il fallait modifier un paramètre dans Desktop > gnome > screen, le paramètre résolution (il y a aussi le paramètre rate, ça peut être utile).
Conclusion
Si aucune de ces solutions n'a résolu votre problème, il ne vous reste plus qu'à vous adresser aux forums de support Ubuntu ou au canal de support IRC #ubuntu-fr sur le réseau irc.freenode.net.
Voir aussi
- Tutoriel Résolution trop faible, écran pas reconnu sur le forum de discussion Ubuntu-fr
Contributeurs: Claude, Fabien26, _Enchained.Les fréquences de rafraichissement des écrans plats sont parfois mal reconnues et diffère de la valeur affichée dans l'outil de résolution d'écran. Pour connaître les fréquences réelles des écrans, il faut passer par les options via vos boutons de réglages SUR l'écran. Des modelines appropriés permette de résoudre le problème