Używam Raspberry Pi do wyświetlania informacji w biurze. Chcę, aby wyświetlacz był w trybie oszczędzania energii poza godzinami pracy. Miałem zamiar cron
wykonać coś na początku i na końcu dnia, ale xset dpms force off
nie działa.
Mam wyłączony wygaszacz ekranu (tak pobyty wyświetlacz w ciągu dnia) z dodatkiem xset s off
, xset -dpms
a xset s noblank
w /etc/xdg/lxsession/LXDE/autostart
pliku.
Oto wyniki z xset q
:
Keyboard Control:
auto repeat: on key click percent: 0 LED mask: 00000000
XKB indicators:
00: Caps Lock: off 01: Num Lock: off 02: Scroll Lock: off
03: Compose: off 04: Kana: off 05: Sleep: off
06: Suspend: off 07: Mute: off 08: Misc: off
09: Mail: off 10: Charging: off 11: Shift Lock: off
12: Group 2: off 13: Mouse Keys: off
auto repeat delay: 500 repeat rate: 33
auto repeating keys: 00ffffffdffffbbf
fadfffefffedffff
9fffffffffffffff
fff7ffffffffffff
bell percent: 0 bell pitch: 400 bell duration: 100
Pointer Control:
acceleration: 20/10 threshold: 10
Screen Saver:
prefer blanking: no allow exposures: yes
timeout: 0 cycle: 600
Colors:
default colormap: 0x20 BlackPixel: 0x0 WhitePixel: 0xffff
Font Path:
built-ins
DPMS (Energy Star):
Standby: 600 Suspend: 600 Off: 600
DPMS is Disabled
AKTUALIZACJA:xset s blank && xset +dpms && xset dpms force off
spowoduje wygaszenie wyświetlacza, ale nie przełączy go w tryb oszczędzania energii. Po przeczytaniu wielu wątków nadal nie mogę uzyskać poprawnego czasu systemowego (myślę, że może to być problem z zaporą) ...
xorg
monitors
screensaver
raspberry-pi
shaun5
źródło
źródło
xset
pojawia się błąd lub nic się nie dzieje? Również jaka dystrybucja? Jeśli to nie zadziała, domyślam się, że ACPI nie jest wkompilowane w jądro. W celach diagnostycznych proszę opublikować dane wyjściowexset q
. Dzięki.xset q
?DPMS is disabled
. Włącz:xset +dpms
wtedy twoje polecenia powinny działać ...Odpowiedzi:
To pytanie naprawdę należy do strony raspberrypi.stackexchange.com, ponieważ jest to problem specyficzny dla Raspberry Pi: sterownik bufora ramki jądra dla Raspberry Pi nie obsługuje funkcji używanej przez X do uśpienia monitora:
https://github.com/raspberrypi/linux/issues/487
Dopóki ten problem nie zostanie rozwiązany, X nie będzie w stanie uśpić monitora za pomocą DPMS.
Możesz mieć trochę szczęścia z
/opt/vc/bin/tvservice
programem:tvservice -o
wyłącza HDMI itvservice -p
powinien ponownie włączyć HDMI .źródło
Rozpraszanie złych ścieżek
Po pierwsze, praktycznie wszystkie nowoczesne wyświetlacze obsługują tryby uśpienia. Również
xset dpms force off
(lub inne sposoby na poinformowanie serwera X) jest prawidłowym sposobem (pod X) wyłączania monitorów. Używam tego od lat bez żadnych problemów.Po drugie, wzmianka
DPMS is Disabled
pochodzi tylko od ciebiexset -dpms
. Jak tylkoxset dpms force off
wydasz lub inną opcję xset związaną z DPMS, zostanie ona ponownie włączona, więc normalne jest uzyskanie tego samego wyniku z lub bezxset +dpms
.Hipoteza
Teraz napisałeś, że widzisz „statyczny”. Ten wyświetlacz obsługuje tradycyjne sygnały telewizji analogowej, prawda?
Jedna hipoteza jest taka, że telewizor zamiast iść spać, faktycznie przełącza się na telewizję analogową, a ponieważ nie ma sygnału, pokazuje to, co zwykle nazywa się „statyczne”.
Sprawdź tę hipotezę
Oto opcja wypróbowania. Spróbuj raz podłączyć inny monitor, najlepiej taki, który nie obsługuje telewizji analogowej. Sprawdź, czy ten ekran przechodzi w tryb uśpienia
xset dpms force off
. Jeśli tak, to konfiguracja jest w porządku po stronie Pi.Wypróbuj warianty
Być może inne stany wideo poinstruują telewizor, aby pozostawał na właściwym kanale, ale zmniejszy zużycie energii. Zamiast tego
xset dpms force off
spróbuj:I sprawdź, czy jeden z nich produkuje to, czego potrzebujesz. Poczekaj co najmniej 10 sekund po każdej próbie zobaczenia, co robi. Naciśnięcie dowolnego klawisza na klawiaturze Pi wznowi wyświetlanie (można zdalnie użyć
xset dpms force on
).Dostań się do produkcji
Jeśli jeden z powyższych wariantów spełnia Twoje oczekiwania, w porządku, udostępnij!
Jeśli nie i naprawdę potrzebujesz użyć oryginalnego wyświetlacza, sprawdź w menu, czy możesz jakoś wyłączyć funkcje telewizji analogowej.
Podziel się tym, czego nauczyłeś się z tych prób.
źródło
Nie
vbetool
działa?Wstrzymaj ekran (fizycznie mówi monitorowi, aby przeszedł do trybu gotowości):
vbetool dpms suspend
Wznów (wychodzi z trybu gotowości):vbetool dpms on
źródło
Możesz włączyć i wyłączyć sam HDMI.
HDMI włączone:
/opt/vc/bin/tvservice -p
HDMI wyłączone:
/opt/vc/bin/tvservice -o
Więcej informacji o
tvservice
pliku binarnym:źródło
(czytasz artykuły opublikowane przez osoby, które nie miały doświadczenia, próbują sprzedać ci inny system operacyjny lub zatuszować brak gwiazdy energii z urządzenia z Chin, lub nie przeczytały kodu źródłowego - nie są to sugerowane materiały do czytania) .
xset s włączony; LUB; xset + dpms
NIE MOŻESZ zrobić obu, o ile nie chcesz problemów z wygaszaniem (takich jak budzenie). obaj wykonują tę samą pracę nieco inaczej - przeszkadzają sobie nawzajem. (Linux RedHat słynie z niewłaściwego instruowania ludzi i wysyłania wielu dystrybucji z domyślnie włączonymi obydwoma dystrybucjami, podobnie jak debian)
kiedy używasz „xset dpms force off; sleep 2” musisz spać, aby nie obudzić się przez naciśnięcie Enter (zakładając, że robisz to za pomocą klawiatury, a nie skryptu)
jeśli chodzi o HDMI, nie jestem pewien, czy Energy Star jest częścią specyfikacji HDMI 1.0-2.x. ale jeśli 1/2 zadziałało, być może tak jest.
Linux i FreeBSD są fajne, ale jeśli nie jesteś „częścią dużego zespołu”, niepraktyczne jest myślenie, że może prowadzić domowe centrum rozrywki (kontrolowanie sprzętu medialnego, wykonując określone czynności sprzętowe, takie jak Energy Star, prawdziwa sprzętowa obsługa odtwarzania plików MPEG (TV) itp.) . mają biblioteki i inicjatywy oraz przykłady działających urządzeń - ale te rzeczy są krótkotrwałe (musisz używać tego samego systemu operacyjnego i tego samego urządzenia, które jest dobrze znane lub „powodzenia”)
źródło