Nvram mit nvram-wakeup.conf konfigurieren

Aus easyVDR-Wiki
Zur Navigation springen Zur Suche springen

Problem

  • easyVDR setzt keinen Aufwach-Timer im Bios beim Beenden des VDR mit der Fernbedienung oder beim Ausschalten mittels Powerknopf
  • easyVDR fährt über die Fernbedienung nicht runter

Lösung

Grundsätzliche Informationen zum Zeitgesteuerten Aufwachen des Rechners mit nvram gibt es hier:

NVRAM selbst, sämtliche Skripten und der Poweroff-Kernel sind bereits komplett fertig in easyVDR integriert,
es muß noch eine korrekte Datei /etc/nvram-wakeup.conf erstellt werden.
oder
wenn man das richtige Board inkl. richtigem Bios ("Standard-Board") hat, muß nur die Datei /usr/bin/easyvdr/vdrshutdown editiert werden.

Achtung:
Ab der easyVDR 0.4 ist die Datei /usr/bin/easyvdr/vdrshutdown nicht mehr für den shutdown verantwortlich, sondern die Datei /usr/bin/easyvdr/easyvdrshutdown.sh.
Zudem sind im OSD die Wakeupmethoden konfigurierbar.
Auch der Parameter z.B. "shuttle_sk43g" für "iwname" kann ab dieser Version übers OSD eingegeben werden!!!

Erfahrungen aus der Praxis/Tips:

  • Im ersten Schritt sind im BIOS die Wakeup-Funktion zu aktivieren (RTC Wakeup oder wakeup by RTC = ON)
  • Im Weiteren werden im BIOS als Zwischenwerte für den Tag "11", die Stunde "12", die Minute "13" und die Sekunde "14" eingetragen.
  • IM OSD unter /System/VDR-Setup/Einstellungen - Sonstiges:
    Die Option "Brückenzeit zwischen Timern darf nicht auf "0" stehen, ideal sind 15 min. Und die Inaktivitätszeit min. 1 Minute mehr.


"Standard Board"

  • Zuerst sollte man in der aktuellen nvram-wakeup-mb.c nachlesen welches board von nv-ram standardmässig unterstützt.
    Eventuell ist ja das eigene Board schon dabei. Ab Zeile 1823 stehen die Boards mit Biosversion! die Standardmäßig von nvram unterstützt werden.
    Achtung! Es ist unbedingt auf die exakte Biosbezeichnung zu achten, nur dann ist die standardmäßige Unterstützung von nvram anzunehmen.
  • Wird exakt das Board gefunden, also genaue Boardbezeichnung und Biosversion stimmen überein, muß nur noch eine Zeile in der Datei /usr/bin/easyvdr/vdrshutdown editiert werden (ab Version 0.4.2 nicht mehr notwendig).
    Beispiel für ein Shuttle SK43g Mainboard:
# Add here needed options like --configfile=...
# (read man nvram-wakeup and man nvram-wakeup.conf for more details)
$NVRAMCMD --configfile=/etc/nvram-wakeup.conf --directisa --settime $1
#$NVRAMCMD --directisa --settime $1
#$NVRAMCMD -C /etc/nvram-wakeup.conf --directisa -ls $1 <-- Orginal eintrag von easyvdr
$NVRAMCMD --iwname shuttle_sk43g --directisa -ls $1 <-- geänderter eintrag

Wichtig hierbei ist der Eintrag "--iwname boardname", alles andere kann so bleiben wie es ist.

Nicht "Standard-Board"

  • Beim Einrichten der nvram-wakeup.conf ist zu empfehlen, die Option "Brückenzeit zwischen timern (min)" auf 5 min zu stellen.

Einzustellen unter /System/VDR-Setup/VDR-Einstellungen/Sonstiges/Brückenzeit zwischen timern (min)
Dann behindert die Option nicht das Setzen der richtigen Timerzeit übers OSD/VDR

Es wird die Datei nvram-wakeup.conf erstellt und geprüft ob das Board grundsätzlich nvram-geeignet ist.

Beispiel einer nvram-wakeup.conf die nach Durchlaufen des guess-helper-Verfahrens im root-Verzeichnis zu finden ist:

################################################
##  Mainboard autodetection information:
##
##    - Mainboard vendor:"Gigabyte Technology Co., Ltd."
##    - Mainboard type:"K8M800-8237"
##    - Mainboard revision:"x.x"
##    - BIOS vendor:"Award Software International, Inc."
##    - BIOS version:"FC"
##    - BIOS release:"12/07/2005"
addr_stat= 0xD2
shift_stat= 5
addr_day= 0xD8
addr_hour= 0xD9
addr_min= 0xDA
addr_sec= 0xDB
upper_method = VT8235_37
need_reboot = ON_ANY_CHANGE

Wichtig war hier der Eintrag in der letzten Zeile, da der PC zwar beim Herunterfahren die korrekte Timerzeit im BIOS setzte, aber dann nicht zur korrekten Zeit aufwachte. Erst mit dieser Zeile wird nochmals beim Herunterfahren über die Fernbedienung kurz in den bis in den Poweroff-Kernel gebootet und dann erst komplett abgeschaltet

  • Die selbst erstellte nvram-wakeup.conf ist anschließend nach /etc zu kopieren

Wichtig um anderen das Leben leichter zu machen, unbedingt den Wunsch des Author von nvram-wakeup beachten: Dem Author die funktionierende Datei zusenden ! (E-mail: [email protected]).

Beispiel für ein Gigabyte K8M800-8237 Mainboard:

# Add here needed options like --configfile=...
# (read man nvram-wakeup and man nvram-wakeup.conf for more details)
$NVRAMCMD --configfile=/etc/nvram-wakeup.conf --directisa --settime $1
#$NVRAMCMD --directisa --settime $1
$NVRAMCMD -C /etc/nvram-wakeup.conf --directisa -ls $1 <-- Orginal eintrag von easyvdr

Hier ging es bereits ohne jegliches editieren der Datei.

Bei Problemen mit dem Setzen von Timern zum korrekten Aufwachen bitte jeweils einen eigenen Thread aufmachen! Wakeup

Weitere Aufwachmethoden wie ACPI-Wakeup und Settimer sind ebenfalls mit easyVDR möglich und übers OSD einstellbar.

Links

Infos zum ACPI-Wakeup: