(gelößt) Wake on Timer funktioniert nicht aber warum?

  • Mein Problem ist das Wake on Timer nicht funktioniert.


    In meinem Bios habe ich folgenden Einstellungen vorgenommen:


    Unter ACPI Configuration steht


    Suspend To RAM (Disabled)
    Restore on AC/Power Loss (Power OFF)
    Ring-In Power On (Enabled)
    PCI Devices Power On (Disabled)
    PS/2 Keyboard Power On (Disabled)
    RTC Alarm Power On (Disabled)


    Habe ich hier vieleicht was falsch eingestellt?
    (Früher hat dsa schon mal funktioniert. Benutze zur Zeit LinVDR Mahlzeit 3.2)

    VDR:Netzteil: Fortron 350W (Passivkühlung duch Öl) Mainboard: ASUS P4N8-X Speicher: 512MB HDD: 80GB Segate + 160GB Maxtor Prozessor: Intel Celeron 2.1Ghz (Passivkühlung duch Thermaltake Sonic-Tower) TV Karte: Technotrend S2300 Premium (Rev2.3) modded + Hauppauge Nova-S-Plus Software: LinVDR Mahlzeit 3.2

    Einmal editiert, zuletzt von Mettwursty ()

  • Habe nun folgende Einstellungen vorgenommen:


    Suspend To RAM (Auto)
    Repost Video on STR Resume (Yes)


    Restore on AC/Power Loss (Power OFF)
    Ring-In Power On (Enabled)
    PCI Devices Power On (Disabled)
    PS/2 Keyboard Power On (Disabled)
    RTC Alarm Power On (Disabled)


    Leider startet der VDR noch nicht.

    VDR:Netzteil: Fortron 350W (Passivkühlung duch Öl) Mainboard: ASUS P4N8-X Speicher: 512MB HDD: 80GB Segate + 160GB Maxtor Prozessor: Intel Celeron 2.1Ghz (Passivkühlung duch Thermaltake Sonic-Tower) TV Karte: Technotrend S2300 Premium (Rev2.3) modded + Hauppauge Nova-S-Plus Software: LinVDR Mahlzeit 3.2

  • Hallo,


    stell mal in der poweroff.pl settime² ein, stell im Bios die Aufwachzeit auf den 01.06.2004 (wenn Das nicht geht, dann auf den 01 des Monats) Uhrzeit 00:00:00 Uhr. Dann sollte Dein Rechner auch aufwachen. Kannst dann mal nen Timer Programmieren (min. 30 min in der Zukunft), dann den Rechner ausschalten per FB und mal im Bios schauen ob er die normal Bios-Zeit auf den 31.05.2004 23:30 (+-5 min) gestellt hat. Wenn ja ist alles OK und er sollte auch aufwachen.


    MfG
    Daniel


    ² "nano -w /usr/bin/poweroff.pl" ziemlich weit oben in der Datei, eigentlich selbsterklärend.
    Siehe auch hier

  • Hier ist meine poweroff.pl mit dem Veränderungen:


    #!/usr/bin/perl


    ##
    # by Thomas Koch <tom@linvdr.org>
    ##
    use POSIX qw(strftime sprintf);
    use Time::Local;


    my $PROC_ALARM = "/proc/acpi/alarm";
    my $SETTIME = "/usr/bin/settime.sh";
    my $DEBUG = 0;
    my $WAKEUP_MARGIN = 5;
    my $TWOOCLOCK = 1;
    my $METHOD = 1; # 0 = ACPI-Wakeup, 1 = settime


    sub true() { 1; }
    sub false() { 0; }


    sub dprint {
    $_ = join("", @_);
    chomp;
    print "$_\n" if($DEBUG);
    }


    sub setTime {
    system("hwclock -w");
    #system("hwclock -w --directisa");
    }


    sub setAlarm {
    my $Next = shift;
    my $TwoOclock = NextTwoOclock();
    my $NextStart;
    my $ShouldStart;
    setTime();

    if($Next) {
    if($Next > $TwoOclock) {
    $ShouldStart = true;
    }
    $NextStart = $Next - ($WAKEUP_MARGIN * 60);
    dprint("Next event at ", strftime("%d.%m.%Y %H:%M", localtime($Next)));
    } else {
    $ShouldStart = true;
    }


    if($TWOOCLOCK && $ShouldStart) {
    $NextStart = $TwoOclock;
    }

    if($NextStart) {
    dprint("Programming wakeup at ", strftime("%d.%m.%Y %H:%M:%S", localtime($NextStart)));
    if($METHOD == 0) {
    if(-e $PROC_ALARM) {
    system(sprintf("echo \"%s\" > %s", strftime("%Y-%m-%d %H:%M:%S", localtime($NextStart)), $PROC_ALARM));
    sleep 1;
    system(sprintf("echo \"%s\" > %s", strftime("%Y-%m-%d %H:%M:%S", localtime($NextStart)), $PROC_ALARM));
    } else {
    dprint("$PROC_ALARM does not exist");
    }
    } else {
    if(-e $SETTIME) {
    system(sprintf("%s \"%s\"", $SETTIME, strftime("%Y-%m-%d %H:%M:00", localtime($NextStart))));
    } else {
    dprint("$SETTIME does not exist");
    }
    }
    }
    }


    sub PowerOff {
    system("/bin/busybox poweroff") if(!$DEBUG);
    }


    sub NextTwoOclock {
    my $now = time();
    # Array-Format: ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)
    my @today = localtime($now);
    @today[0..2] = (0, 0, 2);


    # get today 2:00 in seconds since epoc
    my $TwoOclock = timelocal(@today);

    # Check: Is today 2:00 in future or past?
    if($now < $TwoOclock) {
    # Today two oclock is in future
    return $TwoOclock;
    } else {
    # We're past two oclock, next two oclock is tomorrow (+86400s)
    return $TwoOclock+86400;
    }
    }


    if(scalar(@ARGV)) {
    # called from vdr
    die "Wrong parameter count\n" if(scalar(@ARGV) != 5);
    die "$PROC_ALARM missing" if(!-e $PROC_ALARM);


    my($Next, $Delta, $Channel, $Recording, $UserShutdown) = @ARGV;

    setAlarm($Next);
    PowerOff();
    } else {
    # called from cmdline
    $next = `svdrpsend.pl next abs`;
    if($next =~ /550 No active timers/) {
    setAlarm(0);
    PowerOff();
    } elsif($next =~ /250 \d+ (\d+)/) {
    setAlarm($1);
    PowerOff();
    } else {
    PowerOff();
    }
    }


    Leider fährt der VDR immer noch nicht Timergesteuert hoch.
    (Bei einer früheren Version von LinVDR mit Mahlzeit patch hat alles auch ohne änderungen funktioniert.)

    VDR:Netzteil: Fortron 350W (Passivkühlung duch Öl) Mainboard: ASUS P4N8-X Speicher: 512MB HDD: 80GB Segate + 160GB Maxtor Prozessor: Intel Celeron 2.1Ghz (Passivkühlung duch Thermaltake Sonic-Tower) TV Karte: Technotrend S2300 Premium (Rev2.3) modded + Hauppauge Nova-S-Plus Software: LinVDR Mahlzeit 3.2

  • [Hirnfurz on]
    Stelle zum Testen die Brückenzeit zwischen Timern auf 0, wenn der VDR beim Ausschalten meckert es würde gleich eine Aufnahme anstehen und man fährt trotzdem runter (was ich beim Testen früher immer gemacht habe), programmiert der VDR neuerdings eine Aufwachzeit von +30min.
    Auch zu beachten, VDR will 5min vor dem Timer starten, also mindestens 6min vor Timer sollte ausgeschaltet sein.
    [Hirnfurz off]


    Gruß Jens.

    Athlon 1800+ - KT3 Ultra2 - 512 MB

    Samsung 200 GB - NEC 1300A

    Atric IR-Einschalter - GLCD 128x64

    Hauppauge Nexus + 2 x TT-Budget

    Debian/Etch - 2.6.22-6 - VDR-1.4.7 - Bigpatch


    Von Fachidioten für Fachidioten, 5 Buchstaben.

    LINUX?

  • Hi,


    ein beliebtes Problem ist auch, dass beim Runterfahren durch ein Init-Skript die aktuelle Systemzeit in die Hardware-Uhr geschrieben wird, wobei anscheinend die Aufwachzeit flöten geht.


    Auf meinen SuSE-Systemen hat da geholfen, hwclock zusätzlich den Parameter --directisa zu spendieren.


    Bye.

  • Danke für alle eure Antworten und Hilfe!


    Ich habe das Problem gelößt!
    So wie ich das rausgefunden habe war das so:
    Ich habe immer einen Timer 10 Minuten in der Zukunft programiert.
    Dann fuhr der VDR nicht mehr hoch da er nur für Timer hochfährt die mindestens 30 Minuten in der Zukunft liegen.
    Dies habe ich nun im Menü auf 10 Minuten gestellt und alles läuft super!

    VDR:Netzteil: Fortron 350W (Passivkühlung duch Öl) Mainboard: ASUS P4N8-X Speicher: 512MB HDD: 80GB Segate + 160GB Maxtor Prozessor: Intel Celeron 2.1Ghz (Passivkühlung duch Thermaltake Sonic-Tower) TV Karte: Technotrend S2300 Premium (Rev2.3) modded + Hauppauge Nova-S-Plus Software: LinVDR Mahlzeit 3.2

    Einmal editiert, zuletzt von Mettwursty ()

Jetzt mitmachen!

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