[gelöst] imon VFD abschalten?

  • Hi allerseits,


    wie kann ich beim Abschalten des VDR auch das imon VFD Display ausschalten?


    Ich habe hier im Forum schon gelesen, dass man den Befehl
    echo -n " " > /dev/lcd0
    absetzen muss. Allerdings weiß ich nicht wo?


    Um das Display überhaupt mit dem VDR in Betrieb zu bekommen, starte ich LCDd direkt in ./usr/sbin/runvdr. Vielleicht hilft das als Information.


    Kann mir jemand helfen?


    Gruß
    Peter

    Gruß,
    Peter


    yaVDR 0.5
    Gehäuse:
    HFX classic all-in-one
    DVB-S: WinTV Nexus-S
    Grafik:
    NVidia NVIDIA Corporation GT218 [GeForce 210] (rev a2)
    Mainboard: MSI H97M ECO
    CPU: Intel Celeron G1840
    Speicher:
    2x4096MB DDR3-1600
    HDD: 2x 500GB SAMSUNG HD501LJ
    SAT-Einspeisung: ("ASTROnaut AL-20 VHF-Hausverstärker" und "EKLD-3 Aktives Digital Einkabelsystem")

    Einmal editiert, zuletzt von PASST ()

  • Hi Peter,


    was für eine Distribution benutzt Du denn?


    Bei Debian habe ich einfach in /etc/init.d/LCDd in der stop section folgendes ergänzt:

    Code
    sleep 0.2
    echo -n "Mach mich an ..." > /dev/lcd0


    Das sleep brauchte ich, weil sonst das Device noch nicht frei war...


    Gruß kleinklausi

    SW: Ubuntu 10.04; yaVDR Pakete
    HW: Asus P5N7A-VM; 2x DVB-C rev2.1; Silverstone LC16B-M; Panasonic PT AX200e

  • Ich verwende auch Debian. Wo genau kommen denn deine beiden Zeilen in die LCDd rein?

    Gruß,
    Peter


    yaVDR 0.5
    Gehäuse:
    HFX classic all-in-one
    DVB-S: WinTV Nexus-S
    Grafik:
    NVidia NVIDIA Corporation GT218 [GeForce 210] (rev a2)
    Mainboard: MSI H97M ECO
    CPU: Intel Celeron G1840
    Speicher:
    2x4096MB DDR3-1600
    HDD: 2x 500GB SAMSUNG HD501LJ
    SAT-Einspeisung: ("ASTROnaut AL-20 VHF-Hausverstärker" und "EKLD-3 Aktives Digital Einkabelsystem")

  • Ok, mit ein wenig experimentiere habe ich herausgefunden, dass ich zuerst LCDd entladen muss, bevor ich

    Code
    echo -n > /dev/lcd0

    ausführen kann. Wie entlade aber LCDd?
    Ich kann ja nicht jedesmal den Prozess manuell killen ;)

    Gruß,
    Peter


    yaVDR 0.5
    Gehäuse:
    HFX classic all-in-one
    DVB-S: WinTV Nexus-S
    Grafik:
    NVidia NVIDIA Corporation GT218 [GeForce 210] (rev a2)
    Mainboard: MSI H97M ECO
    CPU: Intel Celeron G1840
    Speicher:
    2x4096MB DDR3-1600
    HDD: 2x 500GB SAMSUNG HD501LJ
    SAT-Einspeisung: ("ASTROnaut AL-20 VHF-Hausverstärker" und "EKLD-3 Aktives Digital Einkabelsystem")

  • Hi,



    "Mach mich an" kannst Du natürlich anpassen. Wenn Du einfach einen leeren String nimmst, bleibt das Display leer. Das Device lcd0 musst Du natürlich auch gegebenenfalls ändern.


    Gruß kleinklausi

    SW: Ubuntu 10.04; yaVDR Pakete
    HW: Asus P5N7A-VM; 2x DVB-C rev2.1; Silverstone LC16B-M; Panasonic PT AX200e

  • Hallo KleinKlausi, leider funktioniert das auch nicht.


    Wenn ich das Skript /etc/init.d/LCDd richtig verstehe, in denen du die Korrekturen eingetragen hast, dann soll mit dem Befehl "LCDd stop" das LCDd schlafen gelegt werden (sleep..) und im Display eine leere Anzeige erscheinen (echo -n " " > /dev/lcd0).


    Wie schon gesagt funktioniert dies allerdings bei mir nicht. Erst wenn ich LCDd aus den Tasks "kille", habe ich die Möglichkeit per echo-Befehl das LCD anzusprechen. Wenn ich den echo-Befehl bei laufenden Task LCDd absetze, erhalte ich die Meldung

    Code
    /dev/lcd0: Das Gerät oder die Ressource ist belegt

    Die Frage ist also, wie kriege LCDd nicht schlafen gelegt sondern als Task entladen.


    Hat jemand eine Idee?

    Gruß,
    Peter


    yaVDR 0.5
    Gehäuse:
    HFX classic all-in-one
    DVB-S: WinTV Nexus-S
    Grafik:
    NVidia NVIDIA Corporation GT218 [GeForce 210] (rev a2)
    Mainboard: MSI H97M ECO
    CPU: Intel Celeron G1840
    Speicher:
    2x4096MB DDR3-1600
    HDD: 2x 500GB SAMSUNG HD501LJ
    SAT-Einspeisung: ("ASTROnaut AL-20 VHF-Hausverstärker" und "EKLD-3 Aktives Digital Einkabelsystem")

    2 Mal editiert, zuletzt von PASST ()

  • Hi PASST,


    also /etc/init.d/LCDd ist das Skript, welches Debian zum starten/stoppen etc. des LCDd verwendet. Das Skript wird automatisch über die Links in /etc/rc.x aufgerufen.


    Wenn Du also den VDR runter fährst, werden die "stop" Abschnitte aller Skripte des entsprechenden Runlevels ausgeführt. Und da vor dem "echo" der Daemon LCDd angehalten wird, sollte das Device wieder frei sein.


    Natürlich geht das nur, wenn vorher der VDR oder sonst ein Programm was Dein LCD benutzt auch gestoppt wurde. Aber hierfür sorgt schon die Standardreihenfolge der Skripte in Debian.


    Ausprobieren kannst Du das ganze einfach so:
    /etc/init.d/vdr stop
    /etc/init.d/LCDd stop


    Gruß kleinklausi

    SW: Ubuntu 10.04; yaVDR Pakete
    HW: Asus P5N7A-VM; 2x DVB-C rev2.1; Silverstone LC16B-M; Panasonic PT AX200e

  • Vielen Dank für deine Erklärungen, aber leider führt das auch nicht zum gewünschten Erfolg.

    Code
    vdr:/# /etc/init.d/vdr stop
    Stopping Linux Video Disk Recorder: vdr.
    /etc/init.d/vdr: line 120: /dev/lcd0: Das Gerät oder die Ressource ist belegt
    vdr:/# /etc/init.d/LCDd stop
    Stopping LCDd CVS-stable-0-4-3-20020127: LCDd.
    /etc/init.d/LCDd: line 38: /dev/lcd0: Das Gerät oder die Ressource ist belegt.

    Den Fehlermeldungen kann man entnehmen, dass anscheinend der Prozess LCDd nicht entladen wurde.
    Das ist meine LCDd:

    und das die vdr:

    Mittels "ps aux" kann ich erkennen, dass trotz "LCDd stop" der Prozess LCDd noch läuft. Wie ich schon schrieb, erst wenn ich den Prozess kille, kann ich mit "echo ..." das Display ansprechen. Wie kann ich also das LCDd richtig entladen?

    Gruß,
    Peter


    yaVDR 0.5
    Gehäuse:
    HFX classic all-in-one
    DVB-S: WinTV Nexus-S
    Grafik:
    NVidia NVIDIA Corporation GT218 [GeForce 210] (rev a2)
    Mainboard: MSI H97M ECO
    CPU: Intel Celeron G1840
    Speicher:
    2x4096MB DDR3-1600
    HDD: 2x 500GB SAMSUNG HD501LJ
    SAT-Einspeisung: ("ASTROnaut AL-20 VHF-Hausverstärker" und "EKLD-3 Aktives Digital Einkabelsystem")

    Einmal editiert, zuletzt von PASST ()

  • So, ich habe eine Lösung gefunden. Ich habe jetzt im stop-Bereich vom vdr-Skript den Befehl "LCDd stop" ersetzt durch:

    Code
    killall LCDd
    sleep 1

    Da anscheinend "LCDd stop" das Programm nicht wirklich entladen hat, muss ich zu härteren Mitteln greifen und den Prozess killen. "sleep 1" habe ich dann eingebaut, um zu warten, dass der Prozess wirklich geschlossen, damit der anschließend echo-Befehl auch wirklich das Display löscht.
    So ganz wohl ist mir diese Lösung jetzt nicht, aber es scheint als einziges Mittel zu helfen.

    Gruß,
    Peter


    yaVDR 0.5
    Gehäuse:
    HFX classic all-in-one
    DVB-S: WinTV Nexus-S
    Grafik:
    NVidia NVIDIA Corporation GT218 [GeForce 210] (rev a2)
    Mainboard: MSI H97M ECO
    CPU: Intel Celeron G1840
    Speicher:
    2x4096MB DDR3-1600
    HDD: 2x 500GB SAMSUNG HD501LJ
    SAT-Einspeisung: ("ASTROnaut AL-20 VHF-Hausverstärker" und "EKLD-3 Aktives Digital Einkabelsystem")

Jetzt mitmachen!

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