web-dev-qa-db-fra.com

Pas de mise à jour des paramètres d'affichage lors de la déconnexion du moniteur externe

Lorsque je déconnecte mon moniteur de mon ordinateur portable, Ubuntu semble toujours penser qu'il est branché et ne met pas à jour l'affichage. Ce problème est spécifique à Ubuntu (ne se produit pas dans Windows) et mon moniteur a bien fonctionné avec un autre ordinateur portable (Ubuntu 13.04, exactement les mêmes pilotes).

Le correctif:

  • ouvrir system settings
  • cliquez Displays

Spécifications utiles:

  • Pilotes graphiques: nvidia-313 (un problème se produit également avec les autres pilotes propriétaires)
  • Carte graphique: Nvidia Quadro K1000M
  • Moniteur: Benq ET-0019-N
  • Câble: VGA D-sub DE15
  • OS: Ubuntu 13.04

J'aimerais que Ubuntu mette à jour les paramètres d'affichage de façon automatique chaque fois que le câble du moniteur est déconnecté. Comment je ferais ça?

8
Joren

Il y a un vieux bogue sur Launchpad - bogue n ° 306735 - qui a été marqué comme invalide, l'explication étant qu'il s'agit d'un problème connu mais assez complexe (plus d'explication ici ).

Donc, autant que je sache, il n’existe pas de méthode automatique pour ce que vous avez demandé dans le vrai sens du terme. Mais vous pouvez utiliser autorandr (vous devez installer disper premier - lancez Sudo apt-get install disper de terminal ), un script de Stefan Tomanek . En utilisant ce script (autorandr), vous pouvez ajouter un raccourci clavier pour la commande autorandr --change et tout ce que vous avez à faire lorsque vous connectez ou déconnectez un moniteur externe consiste à appuyer sur ce raccourci clavier. Tous ces éléments sont très expliqués dans cette réponse (je viens de tester Ubuntu 13.04 et tout se passe bien).

Après avoir testé le script dans Terminal, vous devez voir le message suivant si vous souhaitez ajouter un raccourci clavier personnalisé pour le script:

2
Radu Rădeanu

Depuis le Annexe B du fichier README du pilote NVIDIA :

Option "UseHotplugEvents" "boolean"

Lorsque cette option est activée, le pilote NVIDIA X génère les événements d'affichage modifiés RandR lorsque les affichages sont connectés ou déconnectés d'un processeur graphique NVIDIA. Certains environnements de bureau écoutent ces événements et reconfigurent dynamiquement le bureau lorsque des affichages sont ajoutés ou supprimés.

La désactivation de cette option supprime la génération de ces événements RandR pour les écrans autres que DisplayPort, c'est-à-dire ceux connectés via VGA, DVI ou HDMI. Les événements Hotplug ne peuvent pas être supprimés pour les écrans connectés via DisplayPort.

Notez que la vérification de la configuration d'affichage (par exemple, avec xrandr ou nvidia-settings) peut provoquer la génération d'événements d'affichage RandR modifiés, que cette option soit activée ou désactivée. En outre, certains ports VGA ne peuvent pas être détectés à chaud: sur ces ports, l’ajout ou la suppression d’affichages ne peut être détecté qu’en vérifiant à nouveau la configuration de l’affichage.

Par défaut: on. Le pilote générera des événements RandR lorsque des affichages sont ajoutés ou supprimés.

Donc, si vous n’avez pas désactivé cette option, le problème se réduit à l’une de ces alternatives:

  • Le câble VGA ou le connecteur VGA de la carte ont des broches DDC brisées (broche 12, broche 15 ou broche 9). Veuillez connecter un autre câble VGA et réessayer.

  • Votre carte vidéo basée sur Nvidia Quadro K1000M possède un connecteur qui NE prend PAS en charge cette détection et l'invocation de xrandr ou des équivalents (lors de l'ouverture des paramètres d'affichage) déclenche cette détection. Si tel est le cas, cela ne fonctionnera jamais, mais la détection ne devrait pas fonctionner non plus sur d'autres systèmes opérationnels. Jamais vu cela en personne, cependant.

  • Ou peut-être y at-il un bogue sur le pilote NVIDIA qui empêche cette détection de fonctionner correctement. Essayez une autre version du pilote (telle que 304) et voyez si le problème persiste.

1

Si vous utilisez une version du pilote propriétaire de nvidia, alors, comme mentionné dans la réponse de Jorge, le simple fait d'exécuter xrandr semble résoudre le problème.

0
ccpizza