Hallo Leute,
nach ein bischen hin und her probieren, habe ich mittlerweile die Activy soweit hinbekommen, daß sie einen ganz passablen VDR abgibt.
Ein wichtiger Teil davon ist, daß sie zu Aufnahmen pünktlich aufwacht und wieder runterfährt.
Deshalb wie versprochen ein HOWTO, wie man ACPI-Wakeup auf der Activy realisiert.
Ich möchte nochmal betonen, daß das meiste davon nicht von mir stammt. Mit ein bischen Geduld findet man zum Glück aber alles hier im Board. Die Aussagen sind aber ein bischen wiedersprüchlich. Ich habe das deshalb für alle Einsteiger hier nochmal zusammengefaßt.
Ich benutze LinVDR, daß für ACPI-Wakeup schon eine Menge Vorarbeiten enthält. Ich habe ein paar Sachen aber noch nach meinem Geschmack angepaßt. Ein Dank nochmal an cooper und mottobug, für die tolle Vorarbeit. Es müßte aber auch auf anderen Distris hinzubekommen sein. Das HOWTO könnte auch für andere Rechner mit LinVDR und ACPI-Wakeup nützlich sein.
Und los geht's:
- Activy BIOS auf Version 1.09 upgraden. Hier gibt es im Bios (F2 beim Boot) eine Option "Resume on time", die eingeschaltet sein muß, damit es funktioniert.
- Beim booten des Kernels muß die Option acpi=force angegeben werden. Bei LinVDR muß das in /boot/grub/grub.conf in die Zeile mit vmlinuz eingetragen werden. Bei anderen Distris evtl. in die lilo.conf eintragen.
- Im VDR müssen unter Einstellungen/Sonstiges folgende Parameter gesetzt werden:
Mindest Event Pause (min): 15
Mindest Benutzer Inaktivität (min): irgendwas > 0, z.B. 120
Dieser Wert bedeutet, daß der VDR nach 120 Minuten ohne Eingabe davon ausgeht, daß der Benutzer eingeschlafen ist und runterfährt.
Vorher wird aber 5 Minuten lange eine Warnmeldung ausgegeben.
Das ist wichtig!!! Bei 0 fährt der VDR nämlich nie automatisch runter. Der eigentliche Wert ist relativ unerheblich, und hängt vom persönlichen Geschmack ab, dazu aber später mehr.
- Die Aufwachzeit wird beim runterfahren durch ein Skript poweroff.pl (siehe Anhang) nach /proc/acpi/alarm geschrieben. Dieses Skript sollte nach /usr/bin kopiert werden.
Bei LinVDR wird dieses Script automatisch aufgerufen. Es muß einfach das Orginal durch diese Version ersetzt werden (bei anderen Distris evtl. ins Shutdown-Skript einbinden).
Die Orginal-poweroff.pl von LinVDR geht davon aus, daß das BIOS die programmierte Zeit korrekt interpretiert. Leider ignorieren die meisten Mainboards (so auch die Activy) das angegebene Datum und wachen jeden Tag um die angegebene Uhrzeit auf und gehen nach "Mindest Benutzer Inaktivität"-Minuten wieder aus.
Nach ein bischen Suche bin ich auf dieses Version des Skript von mottobug gestoßen, die einmal täglich in der Nacht aufwacht um die Uhrzeit zu setzen.
Ich habe das Skript ein bischen modifiziert, so daß die Maschine nur aufwacht, wenn ein Timer für einen in der ferneren Zukunft liegenden Tag programmiert ist, und die Zeit auf 05:00 Uhr Nachts gelegt.
Außerdem wird die Aufwachzeit auf 5 Minuten vor Beginn der Aufnahme gelegt. Der VDR ist nämlich so schlau, daß er beim Einschalten prüft, ob ein Timer in den nächsten 10 Minuten gesetzt ist. Wenn dann während der Aufnahme keine Benutzereingabe kommt, geht er, entgegen anderer Aussagen hier im Board, pünktlich 5 Minuten nach der Aufnahme auch automatisch wieder aus (und nicht erst nach
"Mindest Benutzer Inaktivität"-Minuten).
- Wen der VDR nun mitten in der Nacht angeht, nur um runterzufahren und die Aufwachzeit neu zu programmieren würde er normalerweise "Mindest Benutzer Inaktivität"-Minuten lang laufen.
Deshalb das Skript checkstart.sh (siehe Anhang, auch nach /usr/bin kopieren), daß prüft, ob ein Timer gesetzt ist und die Zeit zwischen 05:00 und 05:09 liegt, und dann automatisch wieder runterfährt.
Da ich meinen VDR selten um diese Zeit starte, ist das relativ unproblematisch.
Das Skript muß irgendwo ins Startskript eingebunden werden, nachdem (!!!) der VDR gestartet wurde (z.B. unter LinVDR in die /etc/init.d/rcStart)
Viel Erfolg beim ausprobieren,
Sascha