mikrocontroller.net

Forum: PC Hard- und Software Displayport bzw. HDMI-Anschluss am PC resetten?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Frank E. (Firma: Q3) (qualidat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In einem Museum läuft ein PC in Endlosschleife, der abwechselnd ein 
Video zeigt oder ein einfaches interaktives Spiel (mit OpenCV) per 
Beamer ermöglicht.

Manchmal (nicht immer) ist es so, dass der Beamer beim gemeinsamen 
(Fern-) Einschalten nicht rechtzeitig hochgefahren ist, so dass der PC 
"denkt" er hätte kein Display und nix ausgibt. Der Beamer ergeht sich 
danach in einer endlosen Suche durch seine Eingänge (HDMI1, HDMI2, VGA 
usw.), ohne Resultat.

Das Problem lässt sich ohne Neustart des PC lösen, indem man kurz den 
Displayport-Stecker am PC rauszieht und wieder reinsteckt, dann ist das 
Bild sofort da. Das Aus- und Einschalten des Beamers dagegen bringts 
nicht.

Frage nun: Gibts einen Kommandozeilenbefehl, mit dem man dises Ziehen 
und neu Stecken des Displayport-Steckers simulieren kann?

(PC hat Displayport, hängt per HDMI-Adapterkabel am Beamer).

: Bearbeitet durch User
Autor: pj (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
betriebssystem?

Autor: Frank E. (Firma: Q3) (qualidat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
pj schrieb:
> betriebssystem?

Oh, sorry: Win 10 Pro 64 bit

Autor: DPA (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich sitze gerade nicht vor meinen Linuxsystemen, darum kann ich das 
gerade nicht ausprobieren/nachprüfen. Aber ich Versuchs mal so aus der 
Erinnerung.

Man könnte es mit dem Blanking versuchen. Die EDID wird dabei aber 
normalerweise nicht neu abgefragt.

Solange man den Framebuffer nutzt, z.B. auf der Linux Konsole, könnte 
man  das Signal so ein/ausschalten (geht nicht unter DRM):
echo 1 > /sys/class/graphics/fb0/blank # Aus
echo 0 > /sys/class/graphics/fb0/blank # Ein

Vermutlich ginge das auf den VTs auch mit setterm, aber das bekomme ich 
nicht zum laufen.

Ich glaube mit "vbetool dpms off" und "vbetool dpms on" geht das dann 
noch etwas extremer, schaltet meistens etwas mehr aus. Läuft aber nur 
auf Systemen mit ACPI, deshalb hab ich das noch nicht ausprobiert.

Grösstenteils für X11 gibt es hier noch äquivalent und ergänzende 
Kommandos:
https://raspberrypi.stackexchange.com/questions/59898/how-can-i-blank-the-screen-from-the-command-line-over-ssh#answer-59916

Und dann gibt es noch die Möglichkeit, in sys mit bind und unbind 
Sachen zu de und reinitialisieren. Ob ein USB-Stick, ne PCI-E Graka oder 
ein DRM Bildschirm, einfach den Treiber suchen und den namen des Device 
in die unbind und bind Dateien reinschreiben. Vor dem unbind stehen die 
in der regel noch im selben Ordner als Unterordner oder Symlinks. Einige 
Treiber mögen dass aber nicht so sehr, und wenn dadurch mehrere 
anbhängige Dinge geunbinded werden, kann es sein dass man einige davon 
auch manuell wieder mit bind mit nem Treiber initialisieren muss.

Und ich glaube in /sys/class/graphics/fb*/ sowie /sys/class/drm/*/ gab 
es noch modes Dateien oder so, die mal mit cat ansehen, da sollten 
Auflösungen drin sein, eine pro Linie. Und ich glaube eine edid Datei 
gab es dort auch, aber die muss man mit entsprechenden Tools ansehen. 
Statt den /sys/class/graphics/fb*/modes Dateien kann man glaub ich auch 
fbset nehmen.

Aber eben, das ist alles aus der Erinnerung, also alle Angaben ohne 
gewähr.


Edit: Ja, ich habe gesehen, das OS wurde mittlerweile genannt, aber 
jetzt das was ich geschrieben habe deshalb nicht mehr zu posten währe 
irgendwie schade, und vielleicht hilft es ja jemand anderem mal, also 
poste ich es trotzdem mal.

Autor: fchk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Pin 18 am DisplayPort (Hotplug Detect) schalten sollte das Problem 
lösen.

fchk

Autor: pj (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
devcon.exe

Autor: Michael X. (Firma: vyuxc) (der-michl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde den Start von Windoofs solange verzögern bis der Beamer sicher 
gebootet hat. W10 sollte auch sowas wie einen Bootmanager haben in dem 
man einen Timeout für default setzen kann.

Autor: bluppdidupp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Windows+Ctrl+Shift+B könnte man auch probieren, das resettet in der 
Regel zumindest einen Teil des Grafikkartentreibers

Autor: Philip S. (Firma: ueberblick industries) (ueberblick)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfach einen EDID Manager zwischen beamer und Grafikkarte stecken. Dann 
merkt die Grafikkarte nicht, dass der Beamer noch nicht da ist und gibt 
immer Signal aus. Der EDID Manager ist im Kern ein EPROM, welcher der 
Grafikkarte mitteilt, welche Auflösung sie zu seinden hat. So ein EPROM 
steckt auch am Eingang jedes Displays und Beamers. Leider haben Beamer 
die Angewohnheit dieses EPROM nur einzuschalten, wenn sie hochgefahren 
sind. Bei üblichen displays ist es immer aktiv.

Im billigsten Fall:

https://m.reichelt.de/hdmi-edid-emulator-logilink-hd0105-p236215.html?PROVID=2788&gclid=CjwKCAjw0N3nBRBvEiwAHMwvNpC3KNj4BcA5-FY_2vD-2Rcv2osvSJ3b6LZTq-hZtfe3cmrs8QJQ9BoCvBEQAvD_BwE&&r=1

Es gibt aber auch welche, die konfigurierbar sind und entsprechend mehr 
kosten. In Deinem Fall aber unnötig.

Autor: Frank E. (Firma: Q3) (qualidat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Tips.

Ich werde zuerst die Softwarelösung (Windows+Ctrl+Shift+B per 
Keypress-Emulator oder Devcon) probieren, sollte das nicht fruchten, den 
EDID-Emulator (kannte ich noch nicht!). Danke.

: Bearbeitet durch User
Autor: pj (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Erkenntnisse?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.