Ubuntu HD VDR mittels Xine und VDPAU - ACPI Shutdown/Wakeup
Aus VDR Wiki
Inhaltsverzeichnis |
ACPI Shutdown/Wakeup
Damit eurer VDR automatisch vor einer Aufnahme startet, und nach der Aufnahme sich wieder "schlafen" legt, benötigt Ihr hierfür ACPI Shutdown/Wakeup.
ACPI Funktion des Mainboards prüfen
dmesg |grep -i acpi
[ 0.000000] BIOS-e820: 00000000bff90000 - 00000000bff9e000 (ACPI data) [ 0.000000] BIOS-e820: 00000000bff9e000 - 00000000bffd0000 (ACPI NVS) [ 0.000000] modified: 00000000bff90000 - 00000000bff9e000 (ACPI data) [ 0.000000] modified: 00000000bff9e000 - 00000000bffd0000 (ACPI NVS) [ 0.000000] ACPI: RSDP 00000000000fbba0 00024 (v02 ACPIAM) [ 0.000000] ACPI: XSDT 00000000bff90100 0005C (v01 060810 XSDT1613 20100608 MSFT 00000097) [ 0.000000] ACPI: FACP 00000000bff90290 000F4 (v03 060810 FACP1613 20100608 MSFT 00000097) [ 0.000000] ACPI: DSDT 00000000bff904a0 099D4 (v01 A1537 A1537000 00000000 INTL 20060113) [ 0.000000] ACPI: FACS 00000000bff9e000 00040 [ 0.000000] ACPI: APIC 00000000bff90390 00080 (v01 060810 APIC1613 20100608 MSFT 00000097) [ 0.000000] ACPI: MCFG 00000000bff90410 0003C (v01 060810 OEMMCFG 20100608 MSFT 00000097) [ 0.000000] ACPI: WDRT 00000000bff90450 00047 (v01 060810 NV-WDRT 20100608 MSFT 00000097) [ 0.000000] ACPI: OEMB 00000000bff9e040 0007A (v01 060810 OEMB1613 20100608 MSFT 00000097) [ 0.000000] ACPI: HPET 00000000bff99e80 00038 (v01 060810 OEMHPET0 20100608 MSFT 00000097) [ 0.000000] ACPI: NVHD 00000000bff9e0c0 00284 (v01 060810 NVHDCP 20100608 MSFT 00000097) [ 0.000000] ACPI: Local APIC address 0xfee00000 usw....
Zugriff auf RTC wakealram prüfen
sudo find /sys/class/rtc/rtc0/wakealarm
/sys/class/rtc/rtc0/wakealarm
Bios Uhrzeit auf UTC Zeit stellen
sudo hwclock --systohc --utc
Prüfen ob UTC gesetzt ist
sudo cat /etc/default/rcS
# /etc/default/rcS # # Default settings for the scripts in /etc/rcS.d/ # # For information about these variables see the rcS(5) manual page. # # This file belongs to the "initscripts" package. TMPTIME=0 SULOGIN=no DELAYLOGIN=no UTC=yes VERBOSE=no FSCKFIX=no
Prüfen ob die Bios Uhrzeit auf UTC steht
sudo hwclock --debug
Benutze /dev interface to clock. Letzte Abweichungskorrektur vorgenommen bei 1286457365 Sekunden nach 1969 Letzte Kalibrierung vorgenommen bei 1286457365 Sekunden nach 1969 Hardwareuhr geht nach UTC Zeit Die Hardwareuhr läuft vermutlich in UTC. Warte auf Uhrtick… … erhielt Uhrtick Zeit gelesen aus Hardwareuhr: 2010/10/07 13:23:43 Zeit der Hardwareuhr: 2010/10/07 13:23:43 = 1286457823 Sekunden seit 1969 Do 07 Okt 2010 15:23:43 CEST -0.893575 Sekunden
Manuellen Test durchführen
Hier wird der "wakealarm" gelöscht falls vorhanden:
sudo bash -c "echo 0 > /sys/class/rtc/rtc0/wakealarm"
Und hier wird der "wakealarm" auf 5 Minuten nach der aktuellen UTC Uhrzeit gesetzt.
sudo bash -c "echo `date '+%s' -d '+ 5 minutes'` > /sys/class/rtc/rtc0/wakealarm"
Gesetzten Timer prüfen
"rtc_time" zeigt die aktuelle UTC Uhrzeit des Bios an. Der Wert "alrm_time" zeigt die UTC Uhrzeit an wann der VDR hochfahren wird. In unserem Fall sind das 5 Minuten nach der aktuellen UTC Uhrzeit des Bios.
sudo cat /proc/driver/rtc
rtc_time : 12:35:49 rtc_date : 2010-10-08 alrm_time : 12:40:46 alrm_date : 2010-10-08 alarm_IRQ : yes alrm_pending : no 24hr : yes periodic_IRQ : no update_IRQ : no HPET_emulated : yes DST_enable : no periodic_freq : 1024 batt_status : okay
VDR herunterfahren
sudo poweroff
ACPI Wakeup automatisieren
vdrpoweroff Skript als User root starten
Damit der vdruser das vdrpoweroff Skript ausführen kann benötigt dieser root Rechte. Achtung! Der untiger Eintrag muss als letzte Zeile hinzugefügt werden.
sudo visudo vdruser ALL=(ALL) NOPASSWD: /usr/bin/hwclock
vdrpoweroff.sh Skript anpassen
vi /usr/local/bin/vdrpoweroff.sh
#!/bin/bash sudo hwclock --systohc --utc NextTimer=$(($1 - 600 )) # 10 minutes earlier sudo bash -c "echo 0 > /sys/class/rtc/rtc0/wakealarm" sudo bash -c "echo $NextTimer > /sys/class/rtc/rtc0/wakealarm" sudo /sbin/poweroff