Doppio monitor, primo verticale

Ciao a tutti,
nella mia configurazione a due monitor vorrei ruotare uno solo dei due
monitor di 90 gradi per una visualizzazione verticale, mentre il
secondo dovrebbe rimanere in landscape mode.
Ci ho provato per un po' ma non sono riuscito a capire come fare.
Qualcuno ha idee?

La mia parte di configurazione dello screen e' questa, se puo' servire:

Section "Screen"
    Identifier "Screen0"
    Device "Device0"
    Monitor "Monitor0"
    DefaultDepth 24
    Option "TwinView" "on"
    Option "TwinViewOrientation" "RightOf"
    Option "RenderAccel" "true"
    Option "MetaModes" "1680x1050,1680x1050"
    Option "SecondMonitorHorizSync" "28-80"
    Option "SecondMonitorVertRefresh" "43-60"
    Option "ConnectedMonitor" "dfp-1, dfp-0"
    # fro non nvidia: Option "Rotate" "CCW" (for nv driver)
    Option "RandRRotation" "on"
    SubSection "Display"
        Depth 24
        Modes "1680x1050(a)60" "1680x1050(a)60"
    EndSubSection
EndSection

Grazie,
Andrea

Ciao,

2010/4/12 andrea antonello <andrea.antonello(a)gmail.com>:

Ciao a tutti,
nella mia configurazione a due monitor vorrei ruotare uno solo dei due
monitor di 90 gradi per una visualizzazione verticale, mentre il
secondo dovrebbe rimanere in landscape mode.
Ci ho provato per un po' ma non sono riuscito a capire come fare.
Qualcuno ha idee?

Non credo che ci sia molto da specificare in xorg.conf, se non una
dimensione virtuale abbastanza grande per "contenere" entrambi i
monitor fisici. Io ho una cosa del genere:
SubSection "Display"
                Depth 24
                Virtual 2600 1200
EndSubSection

Il resto lo puoi fare on the fly con xrandr. Il mio scriptino è
semplicemente questo:
#!/bin/sh
xrandr --output LVDS --auto --output VGA --auto --right-of LVDS

Il mio monitor esterno è a destra di quello del laptop (--right.of
LVDS): se vuoi ruotarlo dovrebbe bastare l'aggiunta (dopo --output
XXX) di --rotate {right | left}. [Untested!]

Maggiori info, come sempre, con man xrandr. il comando xrandr fa parte
del pacchetto (debian) x11-xserver-utils.

HTH,
Stefano

Come detto da Andrea, questi i passi che ho utilizzato con il mio
notebook+dockstation, LCD-interno 1440x900 + LCD-esterno 1600x1200,
Ubuntu 9.10

in /etc/X11/xorg.conf

Section "Screen"
.....
  SubSection "Display"
    Depth 24
    Modes "1600x1200" "1920x1080" "1440x900" "1280x1024" "1024x768" "800x600" "640x480"
    Virtual 3040 1200 # 3040 = 1440+1600
  EndSubSection
EndSection

Da riga comando con cvt 1600 1200 60
trovi i parametri da dare in pasto a xrandr:
# 1600x1200 59.87 Hz (CVT 1.92M3) hsync: 74.54 kHz; pclk: 161.00 MHz
Modeline "1600x1200_60.00" 161.00 1600 1712 1880 2160 1200 1203 1207 1245 -HSync +VSync

Da riga comando (o script):
xrandr --fbmm 3040x1200
xrandr --newmode "1600x1200_60.00" 161.00 1600 1712 1880 2160 1200 1203 1207 1245 -HSync +VSync
xrandr --addmode DVI-0 "1600x1200_60.00"
xrandr --auto --output LVDS --output DVI-0 --mode "1600x1200_60.00" --right-of LVDS --rotate normal

L'LCD esterno lo metto a destra del notebook e non è ruotato, nessun
problema.

Ho provato a configurare lo stesso monitor esterno come 1024x768 ruotato
(il modeline 1024x768 era già configurato in xrandr) e dopo qualche
prova ho visto che funziona bene:
xrandr --auto --output LVDS --output DVI-0 --mode "1024x768" --right-of LVDS --rotate left

Grazie mille delle risposte,
sono riuscito a provare solo ora, ma sto avendo dei problemi.
Ho due monitor da 1680x1050, del quale uno lo vorrei ruotare.
I monitor vengono identificati nel Xorg log come:
(--) Apr 06 10:58:22 NVIDIA(0): Connected display device(s) on Quadro
NVS 295 at PCI:2:0:0:
(--) Apr 06 10:58:22 NVIDIA(0): DELL E228WFP (DFP-0)
(--) Apr 06 10:58:22 NVIDIA(0): LG M228WA (DFP-1)

quindi per averne uno ruotato e l'altro no, seguendo le istruzioni
datemi, avrei tentato:

sudo xrandr --fbmm 2730x2730
sudo xrandr --newmode "1680x1050_60.00" 146.25 1680 1784 1960 2240
1050 1053 1059 1089 -hsync +vsync
sudo xrandr --addmode DFP-0 "1680x1050_60.00"
sudo xrandr --auto --output LVDS --output DFP-0 --mode
"1600x1200_60.00" --right-of LVDS --rotate normal

In realta' non sono riuscito, perche' ho un errore nel newmode:

~ >>> sudo xrandr --newmode "1680x1050_60.00" 146.25 1680 1784 1960
2240 1050 1053 1059 1089 -hsync +vsync
X Error of failed request: BadName (named color or font does not exist)
  Major opcode of failed request: 153 (RANDR)
  Minor opcode of failed request: 16 (RRCreateMode)
  Serial number of failed request: 18
  Current serial number in output stream: 18

Che cercando un attimo sembra essere legato alla mancanza di un
pacchetto di font.

Ora non riesco a cercare oltre, ma appena ci arrivo, vi faccio sapere.

Grazie a tutti dei consigli per ora,
Ciao
Andrea

2010/4/12 diego maniacco <diego.maniacco(a)provinz.bz.it>:

Ottengo lo stesso errore se provo a definire due volte un --newmode con
lo stesso "nome". Verifica cosa hai caricato nelle definizioni dei mode
con solo xrandr.
Osservo anche che non riesco a rimuovere un mode con
sudo xrandr --rmmode "xxx"
qualche risorsa risulta essere in uso

Ciao Diego,
grazie della risposta e scusa la mia latenza nella mia.

Ottengo lo stesso errore se provo a definire due volte un --newmode con
lo stesso "nome". Verifica cosa hai caricato nelle definizioni dei mode
con solo xrandr.
Osservo anche che non riesco a rimuovere un mode con
sudo xrandr --rmmode "xxx"
qualche risorsa risulta essere in uso

mi sa proprio che hai ragione. dopo aver riavviato mi prende la configurazione.

Pero' poi non riesco a capire bene, perche' xrandr mi da come output:
~ >>> xrandr --current
Screen 0: minimum 1680 x 1050, current 3360 x 1050, maximum 3360 x 1050
default connected 3360x1050+0+0 (normal left inverted right) 0mm x 0mm
   3360x1050 50.0*
   1680x1050_60.00 60.0

Quindi ho un solo output che e' il "default" e non riesco a dire di
girare solo un monitor rispetto all'altro.
Ho idea che l'inghippo stia nella mia configurazione della scheda grafica....

Comunque xrandr e' proprio comodo,
Ciao
Andrea