Prüfen ob Monitor oder Bildausgabe vorhanden
Prüfen ob Monitor oder Bildausgabe vorhanden
Besteht grundsätzlich die Möglichkeit zu prüfen, ob die Ausgabe eines "Monitorbildes" stattfindet bzw. ob am anderen Ende der HDMI-Leitung ein Empfänger sitzt oder ob das System gerade headless läuft?
Besonderheit: Wenn der "Monitor" mehrere Eingänge hat und gerade kein Signal entegen nimmt (weil er auf einem anderen Eingang von einem anderen PC bedient wird), aber physikalisch dennoch verbunden ist, zählt das in dieser Situation auch als "keine Bildausgabe".
Kann man das prüfen?
Hintergrund:
Ich möchte, dass mein Raspberry Pi 2 merkt, wenn er im headless Modus (Pi am HDMI1 aber Wii auf HDMI2 wird gerade genutzt) läuft und sich dann wieder (nach ein paar Minuten) selbst herunterfährt.
Besonderheit: Wenn der "Monitor" mehrere Eingänge hat und gerade kein Signal entegen nimmt (weil er auf einem anderen Eingang von einem anderen PC bedient wird), aber physikalisch dennoch verbunden ist, zählt das in dieser Situation auch als "keine Bildausgabe".
Kann man das prüfen?
Hintergrund:
Ich möchte, dass mein Raspberry Pi 2 merkt, wenn er im headless Modus (Pi am HDMI1 aber Wii auf HDMI2 wird gerade genutzt) läuft und sich dann wieder (nach ein paar Minuten) selbst herunterfährt.
Re: Prüfen ob Monitor oder Bildausgabe vorhanden
Mit etwa xrandr kann man sich die Daten angeschlossener Monitore ausgeben lassen.
Re: Prüfen ob Monitor oder Bildausgabe vorhanden
Ich denke, das hängt vom Monitor ab.Besonderheit: Wenn der "Monitor" mehrere Eingänge hat und gerade kein Signal entgegen nimmt (weil er auf einem anderen Eingang von einem anderen PC bedient wird), aber physikalisch dennoch verbunden ist, zählt das in dieser Situation auch als "keine Bildausgabe".
Mein Computerbildschirm signalisiert mir das per Icon, wenn ein zweites Monitorsignal über einen anderen Eingang reinkommt. Was mein Fernseher treibt, habe ich noch nicht ausprobiert, da hängt zur Zeit nur eine DVB-T2 Box am HDMI1.
Mal blöd gefragt, warum fähst du den Pi überhaupt hoch, wenn der sich dann doch wieder runter fahren soll?Ich möchte, dass mein Raspberry Pi 2 merkt, wenn er im headless Modus (Pi am HDMI1 aber Wii auf HDMI2 wird gerade genutzt) läuft und sich dann wieder (nach ein paar Minuten) selbst herunterfährt.
Re: Prüfen ob Monitor oder Bildausgabe vorhanden
Das Stichwort dazu nennt sich EDID [1].niemand hat geschrieben:Mit etwa xrandr kann man sich die Daten angeschlossener Monitore ausgeben lassen.
Bei VGA war das noch recht anschaulich, da der EDID-EPROM des Displays über Pin 9 des VGA-Kabels vom Rechner mit Strom versorgt wird, so dass eine Identifikation auch ohne Hauptstromzufuhr des Displays funktioniert. Manche VGA-Kabel haben keinen Pin 9 und dann funktioniert die automatische Erkennung auch nicht.
[1] https://en.wikipedia.org/wiki/Extended_ ... ation_Data
Re: Prüfen ob Monitor oder Bildausgabe vorhanden
Ist gar nicht blöd, sondern berechtigt. Im Wohnzimmer hängt alles an einer abschaltbaren Steckdosenleiste.MSfree hat geschrieben:Mal blöd gefragt, warum fähst du den Pi überhaupt hoch, wenn der sich dann doch wieder runter fahren soll?
Schaltet man die ein, bekommt der Pi Strom und fährt sich hoch. Ein Pi hat keinen Schalter - wenn man ihn nicht anlötet.
Wenn meine Frau aber Wii spielen will, muss sie den Strom einschalten und nutzt einen anderen Video-Eingang am TV. Der Pi schaltet sich aber eben auch ein. Den muss man aber sauber runterfahren und darf ihm nicht einfach den Strom wegnehmen. Der soll also alleine merken, dass er gar ncht gebraucht wird und sich wieder runterfahren, ohne das meine Frau da dran denken muss.
Interessant. Wie kann man das in Debian auslesen?hikaru hat geschrieben:Das Stichwort dazu nennt sich EDID [1].
[1] https://en.wikipedia.org/wiki/Extended_ ... ation_Data
Und wenn das Auslesen nicht funktioniert, könnte ich davon ausgehen, dass der Monitor nicht angeschlossen ist...
Re: Prüfen ob Monitor oder Bildausgabe vorhanden
Die EDID-Datensätze aller angeschlossenen Displays lassen sich mit xrandr auslesen:MoonKid hat geschrieben:Wie kann man das in Debian auslesen?
Code: Alles auswählen
xrandr --verbose | grep -A 8 EDID
Jein.MoonKid hat geschrieben:Und wenn das Auslesen nicht funktioniert, könnte ich davon ausgehen, dass der Monitor nicht angeschlossen ist...
Im Normalfall sollte das so sein. Aber bei VGA wir der EDID-EEPROM des Displays über Pin 9 des VGA-Kabels mit Strom versorgt. Falls das VGA-Kabel keinen Pin 9 hat (selten, kommt aber vor), dann kommt auch kein EDID-Signal zurück.
Bei digitalen Verbindungen kommt meiner Erfahrung nach immer ein Signal zurück. Man kann sich aber nicht immer auf dessen Korrektheit verlassen. So verbauen z.B. manche Fernseherhersteller offenbar in verschiedene Fernseher die selben Chips mit den selben Firmwares. Als Resultat stimmt dann möglicherweise die Information zu Modell, Auflösung und Größe nicht, was zu Problemen bei automatischer Oberflächenskalierung führen kann.
Hier wird dir EDID nicht helfen. Da EDID vom Zuspielgerät ausgeht und auf Displayseite nicht mal eine eigene Stromversorgung benötigt (siehe VGA Pin 9) wird ein angeschlossenes Display i.d.R. immer eine EDID-Antwort geben.MoonKid hat geschrieben:Wenn meine Frau aber Wii spielen will, muss sie den Strom einschalten und nutzt einen anderen Video-Eingang am TV. Der Pi schaltet sich aber eben auch ein. Den muss man aber sauber runterfahren und darf ihm nicht einfach den Strom wegnehmen. Der soll also alleine merken, dass er gar ncht gebraucht wird und sich wieder runterfahren, ohne das meine Frau da dran denken muss.
Der an Eingang A des Fernsehers angeschlossene RPi weiß also nicht, dass der Fernseher nur läuft, weil deine Frau gerade mit der Spielkonsole auf Eingang B spielt. Der RPi wird auf jeden Fall ein Signal an den Fernseher ausgeben und der wird es auch annehmen. Welcher Eingang gerade dargestellt wird weiß aber nur der Fernseher.
Ich würde den RPi an eine eigene schaltbare Steckdose hängen. Dann wird er nur eingeschaltet, wenn er wirklich benötigt wird. Falls du es doch per Software lösen willst, dann würde ich nach dem Hochfahren einen Timer starten der auf eine Nutzereingabe wartet und bei Verstreichen den Rechner wieder runterfährt.
Re: Prüfen ob Monitor oder Bildausgabe vorhanden
VGA ist beim Raspberry Pi irrelevant, der hat eine HDMI-Ausgang und einen Composite Video (PAL/NTSC) Ausgang.hikaru hat geschrieben:Im Normalfall sollte das so sein. Aber bei VGA wir der EDID-EEPROM des Displays über Pin 9 des VGA-Kabels mit Strom versorgt.
Das Problem ist trotzdem, daß nicht garantiert werden kann, daß der Monitor sich taub stellt, wenn der Eingang gerade deaktiviert ist. Einige Monitore schalten nicht benutze Videoeingänge aus (das wäre erkennbar), andere Monitore haben immer eine Versorgungsspannung auf dem Videoeingang (das wäre nicht erkennbar).
Re: Prüfen ob Monitor oder Bildausgabe vorhanden
Klingt nach einer sinnvollen Lösung. Jetzt muss ich nur sehen, dass LibreELEC mir dafür auch die Tools anbietet.hikaru hat geschrieben:Ich würde den RPi an eine eigene schaltbare Steckdose hängen. Dann wird er nur eingeschaltet, wenn er wirklich benötigt wird. Falls du es doch per Software lösen willst, dann würde ich nach dem Hochfahren einen Timer starten der auf eine Nutzereingabe wartet und bei Verstreichen den Rechner wieder runterfährt.