Raspberry: Monitor/Beamer eingeschaltet?

#8052741
Lesenswert?

kommt darauf an, an einigen HDMI Pins gibt es eine 5V Spannung die man feststellen kann per Raspi Port mit Spannungs-teiler oder -wandler. Nicht jedes HDMI Kabel liefert alle Ports, nicht jeder Monitor gibt es aus meines Wissens.

Und dann gab es noch die Besonderheit, der Monitor muß eingeschaltet sein und das HDMI Signal ausgeben wenn der Raspi gebootet wird, hat man den Monitor später eingeschaltet gibt oder gab der Raspi kein HDMI aus, kann OS abhängig sein.

: Bearbeitet durch User
#8052757
Lesenswert?

Man könnte versuchen, mittels ddcutil Monitor-Daten oder -Einstellungen zu lesen. Die Daten (EDID) sollte man auch lesen können, wenn der Monitor ausgeschaltet ist, die Einstellungen wie Kontrast eher nicht.

Diese (Fehler-)Meldungen hatte mein Monitor mal geliefert:

1
//ddcutil - Control monitor settings - Standalone command line application
2
//
3
// "ddcutil detect" auf Gigabyte MZBSWMP-00
4
//
5
// OK:
6
//    DDC: All zero response detected in ddc_i2c_write_read_raw
7
//    DDC: Quirk: response packet starts with double 0x6e
8
//    DDC: Quirk: response packet starts with double 0x6e
9
//    Display 1
10
//       I2C bus:  /dev/i2c-3
11
//       DRM connector:           card0-HDMI-A-3
12
//       EDID synopsis: (...)
13
//       VCP version:         2.2
14
//
15
// ausgeschaltet:
16
//    Invalid display
17
//       I2C bus:  /dev/i2c-3
18
//       DRM connector:           card0-HDMI-A-3
19
//       EDID synopsis: (...)
20
//       DDC communication failed
21
//
22
// ausgesteckt:
23
//    No displays found.
OP (Firma: Q3) #8052763
Lesenswert?

Danke für die bisherigen Antworten. Mein Problem sind genau zwar angesteckte, aber verspätet eingeschaltete Monitore/Beamer. Oft gibt es dann eine falsche Auflösung oder einen schwarzen Screen.

Ich würde gerne im Hintergrund z.B. alle 1 oder 2 Minuten eine Systemfunktion aufrufen, anhand deren Rückgabewert ich bei "vorher aus, jetzt an" einen Reboot auslösen kann ...

#8052767
Lesenswert?

Frank E. schrieb:

alle 1 oder 2 Minuten [...] Reboot auslösen

Weil mein Monitor immer der gleiche ist, kann ich X11 fest nageln:

1
/etc/X11/xorg.conf.d/x11-1024x768.conf
2

3
# Mit dieser Datei ist per VNC immer ein Bild mit 1024x768 zu sehen,
4
# auch dann, wenn zum Testen ein anderer Monitor angeschlossen ist
5
# oder auch garkeiner.
6

7
Section "Device"
8
    Identifier    "Configured Video Device"
9
EndSection
10

11
Section "Monitor"
12
    Identifier    "Configured Monitor"
13
    HorizSync       30.0-62.0
14
    VertRefresh     50.0-70.0
15
EndSection
16

17
Section "Screen"
18
    Identifier    "Default Screen"
19
    Monitor       "Configured Monitor"
20
    Device        "Configured Video Device"
21
    DefaultDepth    24
22
    SubSection "Display"
23
        Depth    24
24
        Modes     "1024x768"
25
    EndSubSection
26
EndSection
: Bearbeitet durch User
#8052807
Lesenswert?

Bauform B. schrieb:

Man könnte versuchen, mittels ddcutil Monitor-Daten oder -Einstellungen zu lesen.

Oder mit get-edid.

Die Daten (EDID) sollte man auch lesen können, wenn der Monitor ausgeschaltet ist, die Einstellungen wie Kontrast eher nicht.

Tja, da kommen dann die Fallstricke:

Eigentlich sollte es so sein, daß der Speicher im Monitor (oder was auch immer) auch bei ausgeschaltetem Gerät auslesbar ist, wenn die lesende Seite (PC, Pi, ..) die nötige Versorgungsspannung bereit stellt.

Ich habe aber bei Problemen schon mal Monitore geöffnet und festgestellt, daß Eeproms/µC gar nicht mit der Vorsorungsspannung von HDMI usw. verbunden waren. Da hilft dann, zyklisch per Skript abzufragen.

#8053082
Lesenswert?

Hans W. schrieb:

Der Raspberry Pi nutzt Wayland, nicht Xorg.

Hab hier auch so einen Monitor, der ausgeschaltet, oder wenn ein anderer Port als Quelle ausgewählt ist, kein EDID liefert.

Workaround (für Wayland) in der kernel-cmd-line:

video=HDMI-A-1:D

das "D" Steht für "Force Enable (Digital)", d.H. der Kernel geht davon aus, dass ein Monitor angeschlossen ist, auch wenn der zwischendurch mal das EDID abdreht.

Lässt sich auf

video=HDMI-A-1:1024x768@60D

erweitern, oder man speichert sich gleich das EDID in eine Datei und gibt ein

drm.edid_firmware=HDMI-A-1:edid/mein_komischer_beamer.bin

mit an.

Pfad relativ zu /usr/lib/firmware. Falls initrd, diese neu generieren, darauf achten dass das File da auch reinwandert.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren