System soll starten auch wenn kein Fernseher angeschlossen ist...

  • Hallo,


    wenn der HTPC nicht mit dem Fernseher verbunden ist, dann stirgt der X-Server mit "no Screens found" weg.


    Was ich gerne hätte, wäre, dass trotzdem das System komplett bereit ist und der Fernseher später zugeschaltet werden kann (wird über eine HDMI-Schaltbox gemacht).


    Ich bastle nun schon gefült ewig damit rum. Versucht habe ich erstmal eine X-Log-Datei zu erstellen:


    Code
    # X -verbose 6 > /root/xlog.txt 2>&1


    Daraus dann eine edid.bin erstellt:


    Code
    # nvidia-xconfig --extract-edids-from-file=/root/xlog.txt  --extract-edids-output-file=/etc/X11/edid.bin
    
    
    Found 1 EDID in "/root/xlog.txt".
      Wrote EDID for "unknown" to "/etc/X11/edid.bin" (256 bytes).


    Hier stört mich schonmal das "unknown".


    Nun habe ich in der von mir verwendeten Anleitung http://kodi.wiki/view/Creating…ng_edid.bin_via_xorg.conf gelesen, dass ich den Namen des angeschlossenenen Monitors auslesen soll:


    Code
    # cat /root/xlog.txt | grep ConnectedMonitor |cut -f2 -d"


    Dabei soll sowas wie "DFP-0" gefunden werden können. Bei mir gibt das aber garnichts zurück. Also in der Log gesucht und fündig geworden:


    Code
    (--) NVIDIA(0): Valid display device(s) on GPU-0 at PCI:1:0:0
    (--) NVIDIA(0):     CRT-0
    (--) NVIDIA(0):     DFP-0
    (--) NVIDIA(0):     DFP-1 (boot)


    Ich habe dann sowohl mit "DFP-0" als auch "DFP-1" probiert.


    Meine Konfigurationsdateien (aktueller Stand):


    /etc/X11/xorg.conf.d/10-nvidia.conf

    Code
    Section "Device"
      Identifier "Device0"
      Driver "nvidia"
      Option "CustomEDID" "DFP-1:/etc/X11/edid.bin"
      Option "IgnoreEDID" "false"
      Option "UseEDID" "true"
    EndSection


    /etc/X11/xorg.conf.d/20-vdr.conf


    Ergebnis aber nach wie vor "no screens found".


    Was ich will, ist, dass einfach stumpf ohne nachzufragen 1080p50 ausgegeben wird. Total schnurzpiep was da dranhängt.


    Ich hatte eigentlich vor demnächst von Nvidia auf Intel umzubauen. Wenn es mit Intel anders zu lösen geht, dann bitte darauf auch eingehen.

  • [] Was ich will, ist, dass einfach stumpf ohne nachzufragen 1080p50 ausgegeben wird. Total schnurzpiep was da dranhängt. ...


    Dann würde ich als erstes mal die EDID Abfragen abschalten und dann einach mal einen entsprechende, zu Deinem Monitor passende, "Modeline" anlegen.

  • Wenn damit keine Nachteile verbunden sind, dann gerne. Das wäre sicher deutlich einfacher einzurichten wie diese edid.bin-Geschichte.


    Allerdings waren diese Modelines für mich schon immer etwas kryptisch. Kann ich die mit irgendeinem Tool automatisch erzeugen lassen?


    Ich habe übrigens gerade nochmal im Detail über die Log gescrollt und "DFP-1" ists definitiv korrekt. Ich habe keine Ahnung warum die edid.bin scheinbar in keinster Weise einen Effekt hat...

  • [...] Ich habe keine Ahnung warum die edid.bin scheinbar in keinster Weise einen Effekt hat...


    Vermutlich weil Dein komischer HDMI Switch nichts taugt!
    Normalerweise braucht zum Auslesen der EDID das entsprechende Gerät nicht eingeschaltet zu sein. Wenn aber die Daten nicht durchreicht werden, woher soll dann X die Parameter herbekommen?


    Zitat

    Wenn damit keine Nachteile verbunden sind, dann gerne. Das wäre sicher deutlich einfacher einzurichten wie diese edid.bin-Geschichte.


    Nein, mit EDID ist es einfacher, da man dazu keine Config braucht.


    Zitat

    Allerdings waren diese Modelines für mich schon immer etwas kryptisch. Kann ich die mit irgendeinem Tool automatisch erzeugen lassen?

    --> http://xtiming.sourceforge.net/cgi-bin/xtiming.pl


  • Vermutlich weil Dein komischer HDMI Switch nichts taugt!
    Normalerweise braucht zum Auslesen der EDID das entsprechende Gerät nicht eingeschaltet zu sein. Wenn aber die Daten nicht durchreicht werden, woher soll dann X die Parameter herbekommen?


    Daran liegt es nicht. Zum Auslesen habe ich die zwei HDMI-Kabel (zum Fernseher und zum HTPC) abgezogen und mit einer HDMI-Doppelkupplung direkt verbunden. Auch mit der Direktverbindung bekomme ich beim Auslesen dieses "unknown". Und die Idee ist ja gerade, dass ich, wenn ich alles mal richtig konfiguriert habe, auch das HDMI-Kabel komplett ziehen kann und z.B. eine Minute später erst stecken. Geht bei Kaufreceivern ja auch...


    Zitat


    Danke. Ich schaue mir das mal an.

  • Scheint alles nichts zu bringen. Man müsste X z.B. sagen auf welchem Port später der Bildschirm gesteckt wird. Kann er ja erstmal nicht wissen.


    Mich wundert nur, dass es am Laptop z.B. garkein Problem ist im Betrieb an HDMI einen Bildschirm nachzustecken...


    EDID wird durchgereicht. Ist auch ein Ligawo Switch.


    Funktioniert nur in meiner Abwesenheit nicht, denn dann ist der ganze Kram stromlos.

  • Die EDID will man möglichst mit direkter Verbindung der Grafikkarte zum TV (eventuell stört der HDMI-Umschalter das Auslesen) ermitteln und dabei den X-Server ohne EDID-Angaben in der xorg.conf(.d) starten - bei yaVDR wird diese minimale xorg.conf genutzt, wenn nach angeschlossenen Bildschirmen gesucht wird: https://github.com/yavdr/yavdr…rg.conf.rescan/100_rescan

    Man müsste X z.B. sagen auf welchem Port später der Bildschirm gesteckt wird. Kann er ja erstmal nicht wissen.

    Mal als Beispiel eine xorg.conf mit als Datei hinterlegter EDID für einen HD-ready Bildschirm: http://paste.ubuntu.com/23722328/


    Der nvidia-Treiber startet in der Vorkonfiguration nicht, wenn es keinen angeschlossenen Bildschirm gibt (was man über die Angabe einer EDID erzwingen kann) - laut der Dokumentation kann man das allerdings ändern:

    Ich weiß aber nicht, wie gut KODI oder softhddevice darauf reagieren, wenn man munter Monitore umsteckt.


    Wenn es mit Intel anders zu lösen geht, dann bitte darauf auch eingehen.

    Soweit ich das im Arch-Linux Wiki gelesen habe, muss man bei der Nutzung von KMS den Mode bzw. die EDID als Boot-Parameter übergeben: https://wiki.archlinux.org/ind…ng#Forcing_modes_and_EDID

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!