Verbesserte (?) poweroff.pl für LinVDR

  • EDIT: Die erste Version des Skripts hat einen Bug in der Berechnung des nächsten regulären Wakeup-Termins... dieser ist in v0.2 behoben. Unbedingt updaten, sonst werden evtl. programmierte Timer verpasst!


    Hi,


    ich habe mich mal hingesetzt und die poweroff.pl, die bei LinVDR standardmäßig für das Setzen des nächten Wakeup-Events verantwortlich ist, ein Bisschen "aufgebohrt". Anfangs war es quasi nur ein etwas chaotischer Hack, aber jetzt habe ich das ganze mal etwas geordnet und kommentiert, so dass vielleicht auch jemand außer mir etwas damit anfangen kann.


    Die neuen Features:

    • Regelmäßiges Wakeup an bestimmten Wochentagen zu einer definierten Zeit - also z.B. jeden Mittwoch und jeden Sonntag um 4:00 Uhr.
    • Loggen des gesetzten Aufwach-Events in eine Datei. Diese kann dann beim Systemstart (z.B. in der rcStart) benutzt werden, um herauszufinden, ob der Rechner manuell via Powerbutton gestartet wurde oder automatisch aufgewacht ist.


    Wozu soll das gut sein?

    • Manche Mainboards (so wie meins :P) unterstützen das Aufwachen zu einem bestimmten Datum mittels nvram-wakeup oder ACPI-wakeup. Die bisherige poweroff.pl unterstützte nur ein "allnächtliches" (jeden Tag 02:00 Uhr) Aufwachen des Rechners. Es reicht normalerweise jedoch völlig aus, den EPG alle 3 Tage zu aktualisieren (z.B. aus dem Netz via epg4vdr oder tvmovie2vdr für 10 Tage im Voraus). Das reduziert unnötige Laufzeiten des Rechners und spart somit Strom.
    • Kann erkannt werden, ob der VDR-Rechner manuell oder automatisch gestartet wurde, kann z.B. via geeigneter Zusätze das Display nur dann eingeschaltet werden, wenn der Rechner manuell gestartet wurde. D.h. bei Timeraufnahmen, bei denen niemand direkt am Gerät sitzt, bleibt das Display dunkel und spart somit wieder etwas Strom. Ich habe dies über ein Relais an der seriellen Schnittstelle realisiert. Denkbar wäre auch, den Fernseher automatisch via irsend anzuschalten, wenn der VDR manuell gestartet wurde, also jemand vor der Mattscheibe sitzt.
      Bei Interesse werd ich bald mal ein HOWTO zu diesem Thema schreiben.


    Vielleicht möchte ja jemand das Skript mal durchschauen oder testen und mir Feedback geben. Zum Testen einfach die Datei aus dem Archiv im Anhang dieses Threads nach /usr/bin/poweroff.pl kopieren und die entsprechenden Optionen anpassen. Nicht vergessen, die originale poweroff.pl vorher zu sichern!


    Gruß,
    fitzefatze

  • So ein Mist, die erste Version hat einen Bug, der dazu führen kann, dass Aufnahmen verpasst werden :motz2. Dieser ist aber in v0.2 behoben. Der Download im ersten Post wurde aktualisiert. Alle (wenigen) Benutzer der ersten Version sollten unbedingt updaten!


    Gruß,
    fitzefatze


    PS: Benutzt das Skript bisher jemand außer mir? Downgeloadet wurde es ein paar mal, aber Feedback kam bisher keins...

  • Ich werde es mir mal anschauen. Auch ich benutze bisher eine an nvram-wakeup angepasste poweroff.pl, die tadellos funktioniert. Wir haben ja das selbe Mainboard und haben ja schon in einem anderem Thread über nvram-wakeup gesprochen.


    Jörg

    VDR 1: Gehäuse Thermaltake Tenor, Asus P5KR mit P4 E5300, Samsung HDD, Digital Devices Cine2 (Dual DVB-S2 Budget), MSI GT220 passiv mit easyVDR 0.8.06
    VDR 2: Samsung SMT 7020S mit mld-smt 2.0

  • j6scjo


    Bevor ich das Skript umgeschrieben habe, hatte ich die von dir angepasste Version für nvram-wakeup :) Darüber bin ich überhaupt erst drauf gekommen,
    wie der Shutdown-Mechanismus funktioniert bzw. dass man eben jene oben genannten Verbesserungen/Änderungen machen könnte.

  • Ist es möglich das das Script noch einen Fehler hat?


    Wenn ich keinen Regular-Start angebe hat er in setWakeup 0 als nextRegular und das ist kleiner als nextTimer, weswegen er in die Regular Schleife springt und am Ende auch 0 als nächster Timer in das nvram einträgt.


    Lg


    Christian

Jetzt mitmachen!

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