Buscando info para configurar correctamente un segundo monitor conectado al portátil, he dado con unos cuantos comandos que me han sido de gran utilidad.
Hay que decir que antes de tocar nada, Debian detectaba correctamente cuando conectabas un segundo monitor LCD y clonaba la imagen. Mi objetivo era utilizar los 2 monitores en modo xinerama.
Como las opciones creo que son bastante autoexplicativas, paso a indicar las modificaciones que he tenido que hacer en el archivo xorg.conf.
Añadir en la sección "device":
Option "monitor-VGA" "VGA"
Option "monitor-LVDS" "LVDS"
Sustituir la sección "Monitor" por una independiente por cada monitor:
La versión original:
Section "Monitor"
Identifier "Monitor genrico"
Option "DPMS"
EndSection
Ha quedado así:
Section "Monitor"
Identifier "VGA"
Option "PreferredMode" "1280x1024"
Option "Position" "0 0"
EndSection
Section "Monitor"
Identifier "LVDS"
Option "DPMS"
Option "LeftOf" "VGA"
Option "Enable" "true"
EndSection
Respecto a la sección "Screen":
La versión original:
Section "Screen"
Identifier "Default Screen"
Device "Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
Monitor "Monitor genrico"
DefaultDepth 24
SubSection "Display"
Modes "1680x1050" "1440x900" "1400x1050"
EndSubSection
EndSection
Ha quedado así:
Section "Screen"
Identifier "Default Screen"
Device "Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
Monitor "LVDS"
DefaultDepth 24
SubSection "Display"
#Modes "1680x1050" "1440x900" "1400x1050" "1280x800"
Modes "1280x800" "1280x768" "1024x768" "800x600" "640x480"
Virtual 2624 1200
EndSubSection
EndSection
Section "Screen"
Identifier "Second Screen"
Device "Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
Monitor "LVDS"
DefaultDepth 24
SubSection "Display"
Modes "1680x1050" "1440x900" "1400x1050" "1280x1024"
Virtual 2624 1200
EndSubSection
EndSection
Y por último, en la sección "ServerFlags" hay que añadir:
Option "Xinerama" "enable"
En mi caso no tenía dicha sección, así que he añadido algo tal que así:
Section "ServerFlags"
Option "Xinerama" "enable"
EndSection
La única opción que parece poco intuitiva es "Virtual". Esta es la resolución máxima que vamos a darle al entorno de ambos escritorios. [1]
Obviamente, el tema de las resoluciones es cosa de cada uno. Ahí es donde entra el comando xrand. Dicho comando sirve para modificar dinámicamente la resolución, orientación etc. de los monitores. Muy útil para realizar las pruebas sin el incordio de estar reiniciando las X.
Además a mí me han ido de coña los valores de autodetección que devuelve:
xrandr -q
Screen 0: minimum 320 x 200, current 2560 x 1024, maximum 2624 x 1200
VGA connected 1280x1024+1280+0 (normal left inverted right x axis y axis) 376mm x 301mm
1280x1024 60.0*+ 74.9 75.0 59.9
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 75.0 72.8 66.7 60.0
720x400 70.1
LVDS connected 1280x800+0+0 (normal left inverted right x axis y axis) 331mm x 207mm
1280x800 60.0*+ 60.0
1280x768 60.0
1024x768 60.0
800x600 60.3
640x480 59.9
TV disconnected (normal left inverted right x axis y axis)
Con esto conseguimos, por un lado saber si las X están detectando correctamente los dispositivos que tenemos conectados, y por otro cuales son las resoluciones que soportan.
Varios ejemplos de las pruebas que podemos realizar con xrandr:
Deshabilitar el monitor externo:
xrandr --output VGA --off
Clonar ambas imágenes:
xrandr --output LVDS --auto --output VGA --auto --same-as LVDS
Poner el monitor externo a la derecha de la pantalla del portátil:
xrandr --output LVDS --auto --left-of VGA
Por último, si tienes algún dispositivo rarito - o conectado a través de algún dispositivo que impide su correcta autodetección, podemos usar el comando gtf
Por ejemplo, la resolución que necesito para el proye es 1280x720 a 60 Hz.
1º Ejecutamos
gtf 1280 720 60
# 1280x720 @ 60.00 Hz (GTF) hsync: 44.76 kHz; pclk: 74.48 MHz
Modeline "1280x720_60.00" 74.48 1280 1336 1472 1664 720 721 724 746 -HSync +Vsync
2º Pegamos el resultado que nos ha devuelto en la sección "Monitor" del monitor que nos interesa, obviamente. Con esto, hemos creado una resolución llamada "1280x720_60.00"
3º Especificamos dicha resolución en los "modes" que nos interesen.
Como siempre, aconsejo tirar de las páginas MAN de xrandr , gtf, xorg y xorg.conf para aprovechar sus posibilidades.
Mis archivos xorg.conf:
xorg.conf.Single_Monitor
xorg.conf.Dual_Monitor
Importante, el cacharro tiene una gráfica INTEL, así que ojito con los copypaste a ciegas xD. Concretamente tengo una
lspci |grep Display
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03)
[1]Casi toda la info ha sido sacada (que no fusilada ^_~) de http://www.thinkwiki.org/wiki/Xorg_RandR_1.2
1 comentario:
Bravo! he aprendido mucho sobre monitores con este mini-tutorial
Publicar un comentario