Ubuntu HD VDR mittels Xine und VDPAU - ACPI Shutdown/Wakeup

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Änderung 67781 von 212.93.9.148 (Diskussion) wurde rückgängig gemacht.)
 
(24 dazwischenliegende Versionen von 6 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
==ACPI Shutdwon/Wakeup==
+
==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.
 
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===
 
===ACPI Funktion des Mainboards prüfen===
  dmesg|grep -i acpi
+
  dmesg |grep -i acpi
  
 
  [    0.000000]  BIOS-e820: 00000000bff90000 - 00000000bff9e000 (ACPI data)
 
  [    0.000000]  BIOS-e820: 00000000bff90000 - 00000000bff9e000 (ACPI data)
Zeile 31: Zeile 31:
 
  sudo hwclock --systohc --utc
 
  sudo hwclock --systohc --utc
  
 +
====Prüfen ob UTC gesetzt ist====
 
  sudo cat /etc/default/rcS
 
  sudo cat /etc/default/rcS
  
Zeile 48: Zeile 49:
 
  FSCKFIX=no
 
  FSCKFIX=no
  
  hwclock von util-linux-ng 2.17.2
+
====Prüfen ob die Bios Uhrzeit auf UTC steht====
 +
  sudo hwclock --debug
  
 
  Benutze /dev interface to clock.
 
  Benutze /dev interface to clock.
Zeile 60: Zeile 62:
 
  Zeit der Hardwareuhr: 2010/10/07 13:23:43 = 1286457823 Sekunden seit 1969
 
  Zeit der Hardwareuhr: 2010/10/07 13:23:43 = 1286457823 Sekunden seit 1969
 
  Do 07 Okt 2010 15:23:43 CEST  -0.893575 Sekunden
 
  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
 +
 +
==Links==
 +
# [[ACPI Wakeup]]
 +
 +
 +
[[Kategorie:Ubuntu HD VDR mittels Xine und VDPAU]]

Aktuelle Version vom 17. April 2011, 13:45 Uhr

Inhaltsverzeichnis

[Bearbeiten] 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.

[Bearbeiten] 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....

[Bearbeiten] Zugriff auf RTC wakealram prüfen

sudo find /sys/class/rtc/rtc0/wakealarm
/sys/class/rtc/rtc0/wakealarm

[Bearbeiten] Bios Uhrzeit auf UTC Zeit stellen

sudo hwclock --systohc --utc

[Bearbeiten] 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

[Bearbeiten] 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

[Bearbeiten] 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"

[Bearbeiten] 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

[Bearbeiten] VDR herunterfahren

sudo poweroff

[Bearbeiten] ACPI Wakeup automatisieren

[Bearbeiten] 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

[Bearbeiten] 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

[Bearbeiten] Links

  1. ACPI Wakeup