Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Witam.
Na co dzień korzystam z laptopa i do jego wyjścia VGA mam podłączony zewnętrzny monitor. Do autostartu dołączyłem skrypt, który przełącza obraz na ekran zewnętrzny jeżeli jest on podłączony:
#!/bin/bash if [ "$(xrandr | grep VGA | grep "connected" | awk '{print $2}')" = "connected" ] ; then xrandr --output LVDS1 --off --output VGA1 --auto else xrandr --output VGA1 --off --output LVDS1 --auto fi
Problem jest wtedy, gdy przewód VGA jest podłączony do laptopa, a monitor zewnętrzny jest wyłączony. Program "xrandr" pomimo braku zasilania monitora pokazuje status "connected". W jaki sposób mogę sprawdzić czy monitor zewnętrzny jest włączony?
Z góry dziękuje za zainteresowanie.
Offline
disper --list
Jest w repo testing/unstable, powinien odczytać jakie monitory są podłączone. Może trochę więcej: http://maketecheasier.com/change-linux-displays-on- … er/2010/12/22 i http://willem.engen.nl/projects/disper/
Offline
Sytuacja jest taka sama jak przy użyciu xrandr. Polecenie zwraca dwie wartości:
wormux29@asus-1215N:~$ disper --list display LVDS1: LVDS1 resolutions: 640x480, 800x600, 1024x768, 1360x768, 1366x768 display VGA1: VGA1 resolutions: 720x400, 640x480, 800x600, 1024x768, 1152x864, 1280x1024, 1680x1050, 1920x1080
Wtyczka VGA jest podłączona do laptopa, ale monitor zewnętrzny jest wyłączony. Problem pozostaje nierozwiązany.
Offline
A
ddccontrol -p
, tez zapakietowany.
Offline
Nniestety też nie działa. Zwraca komunikat "Wykryte monitory: Brak monitorów obsługujących DDC/CI."
Offline
Jeszcze miałem pomysł z odczytaniem EDID, przy pomocy get-edid, ale u mnie pobiera, nawet jak wyłączę monitor...
Offline
A ten monitor nie ma czasem diody, która świeci na zielono jak ma połączenie, albo pomarańczowo, jak nie ma? :D
Ostatnio edytowany przez Jacekalex (2012-08-13 23:12:49)
Offline
A ten monitor nie ma czasem diody, która świeci na zielono jak ma połączenie,
albo pomarańczowo, jak nie ma? :D
... pewnie, że ma! Chodzi o zabezpieczenie działania skryptu przed wyżej wymienionym problemem.
Offline
@wormux29
Czy twoim zdaniem nie zależy to przypadkiem od sterownika grafiki, jaki używasz?
Tu masz przykład z Intelem:
http://stackoverflow.com/questions/5469828/how-to-c … ntel-graphics
Jeśli natomiast interesuje Cię tylko i wyłącznie xrandr, to u mnie ładnie to działa w takiej postaci:
xrandr -q | egrep 'DVI-I-0 connected' 2>&1 >>/dev/null && echo "podłączony" || echo "odłączony"
Nie miałem jednak okazji sprawdzić, jak reaguje na odłączenie monitora,
z powodu posiadania jednego monitora ;)
Ostatnio edytowany przez Jacekalex (2012-08-13 23:39:27)
Offline
Witam.
Dziękuje za link.
xrandr -q | egrep 'VGA1 connected' 2>&1 >>/dev/null && echo "podłączony" || echo "odłączony"
Polecenie nie odróżnia czy zasilanie monitora jest włączone czy nie.
Odnośnie tego co napisano w powyższym linku to zwracane są następujące wartości:
Polecenie: cat /sys/class/drm/card0-VGA-1/enabled
Podłączona wtyczka VGA, zasilanie monitora (włączone) - disabled
Podłączona wtyczka VGA, zasilanie monitora (wyłączone) - disabled
Po przełączeniu poleceniem xrandr --output VGA1 --auto , zwracane są wartości:
Podłączona wtyczka VGA, zasilanie monitora (włączone) - enable
Podłączona wtyczka VGA, zasilanie monitora (wyłączone) - enable
cat /sys/class/drm/card0-VGA-1/status
zawsze zwraca "connected"
Problem nadal pozostaje nierozwiązany, bo nie można wykryć kiedy monitor ma włączone zasilanie, a kiedy nie ma...
Polecenie "udevadm monitor --property" reaguje tylko na podłączenie wtyczki, wł. lub wył. monitora nic nie zmienia.
Pozdrawiam serdecznie
Dziękuje za zainteresowanie tematem
Offline
I ten kłopot wynika raczej z działania sterownika, na którym chodzi karta graficzna.
Także od sterownika radziłbym zacząć wszystkie kombinacje.
Prawdopodobnie monitor też nie jest bez winy.
Ostatnio edytowany przez Jacekalex (2012-08-14 17:33:51)
Offline
Monitor jest sprawny. Ze sterownikami też musi być wszystko dobrze - nic nie zmieniałam.
Offline
wormux29 napisał(-a):
Monitor jest sprawny. Ze sterownikami też musi być wszystko dobrze - nic nie zmieniałam.
Nie musi być dobrze.
To, ze wszystko działa, nie znaczy, ze sterownik spełnia wszystkie standardy zgodności z Linuxem, iże można coś z niego wyciągnąć przez interfejs w /sys, bądź oprogramowanie Linuxowe będzie mogło sprawdzać wszystkie jego parametry.
U mnie:
cat /sys/class/drm/*/status cat: /sys/class/drm/*/status: Nie ma takiego pliku ani katalogu
ls -l /sys/class/drm razem 0 -r--r--r-- 1 root root 4096 08-15 16:06 version
A jaką mam kartę i sterownik?
Nvidię - działa elegancko, obecnie mam sterownik 304.37.
I Xrandr na niej widzi, na którym porcie jest coś podłączone, a na którym nie jest,
a w /sys na ten temat ani śladu.
Za to z całą pewnością można to sprawdzić przez interfejs /dev/nvidiactl - lub poleceniem nvidia-settings cośtam, które wyświetli podłączone monitory.
Bo nvidia-settings bez problemu widzi, jaki monitor jest podłączony i gdzie.
Także co sterownik, to obyczaj, a to, że karta działa prawidłowo, wcale nie oznacza, że ma API dokładnie takie same, jak karty innych producentów, i nie oznacza, że Linux obsługuje wszystkie karty jednakowo.
Pozdrawiam
;-)
Offline
Jacekalex: autorce chodzi o sprawdzenie czy podłączony monitor jest aktualnie włączony czy wyłączony (prawdopodobnie za pomocą przycisku na obudowie), a nie czy w ogóle jest podłączony (z tym nie ma problemu). U Ciebie da się to sprawdzić?
Offline
autorce
Autorowi :)
Wszystko dokładnie opisałem w poście: #10. Jeszcze raz dla jasności. Xrandr oraz inne programy wykrywają, że monitor zewnętrzny jest podłączony i możliwe jest sterowanie nimi - np. przełączanie się między ekranami. Rzecz, którą chcę sprawdzić programowo to czy monitor zewnętrzny jest włączony (czy jest zasilany). Karta Graficzna to GMA 3150.
Offline
wormux29 napisał(-a):
Autorowi :)
:-D
Offline
Oj, sorry. ;) Zasugerowałem się postem 12:
wormux29 napisał(-a):
nic nie zmieniałam
:)
Offline
Karta Graficzna to GMA 3150
.
Nareszcie, jeśli wiadomo, że to Intel GMA - to przynajmniej wiadomo, czego szukać.
Bo niestety, co sterownik, to obyczaj :D
@Arni
Ja mam dekstopa i jeden monitor, więc widzę organoleptycznie, czy jest włączony.
Ale wygląda na to, że Xrandr radzi sobie z faktem włączenia monitora, bo zawsze pokazywał prawidłowo czy cos jest na tym czy tamtym porcie.
A kiedyś, jeszcze na Necu podpiąłem kablami VGA i DVI równocześnie monitor, (miel przełącznik wejść), i Nvidia-settings też rozpoznawała monitor tylko wtedy, gdy był włączony na porcie, przez który szedł sygnał.
Wnoszę więc, że jakoś dowiadywała się, który port jest włączony, a który tylko podłączony.
Edyta:
U mnie Xrandr też nie rozpoznaje, kiedy włączony, a kiedy tylko podłączony
~> cat XRANDR #Monitor włączony DVI-I-0 connected 1024x768+0+0 (normal left inverted right x axis y axis) 315mm x 230mm # Monitor wyłączony DVI-I-0 connected 1024x768+0+0 (normal left inverted right x axis y axis) 315mm x 230mm
Także przy Nvidii Xrandr też nie rozpoznaje, kiedy monitor jest włączony, a nie tylko podłączony kablem, lub może do sprawdzenia potrzeba jakiejś innej funkcji.
Pozdrawiam
;-)
Ostatnio edytowany przez Jacekalex (2012-08-15 18:25:22)
Offline
Strony: 1