Seite 12 von 14 ErsteErste ... 21011121314 LetzteLetzte
Ergebnis 111 bis 120 von 138
  1. #111
    Benutzer
    Registriert seit
    22.02.2016
    Ort
    NRW
    Beiträge
    49
    Thanks
    22
    Thanked 6 Times in 3 Posts
    ok, dann werde ich das auch mal probieren. Momentan läuft aber noch der Test mit 'bernies' Dummy Timer Eintrag. Bis jetzt (schon 18 Std. her) hat sich die Box noch nicht eingeschaltet.


  2. #112
    Developer
    Registriert seit
    18.07.2012
    Ort
    Ridderkerk, Niederlande
    Beiträge
    634
    Thanks
    144
    Thanked 713 Times in 304 Posts
    Ich bin da mal in Detail auf der Suche gegangen, und habe Folgendes heraus gefunden (Ich mache weiter in English da ich mich dann besser ausdruecken kann, bitte um Verstaendnis):

    fp_control / time management analysis

    Two clocks
    There are two clocks in the system: the Linux system time and a separate clock maintained by the front panel processor. It is important to realise that the Linux kernel is not aware of the front panel clock, and therefore never interferes or interacts with it. This in turn means that it is the responsibility of the user software (in this case the HDMU image) to properly maintain the front panel clock.

    Sequence of events in the HDMU image, power on from deep standby
    As observed above, the earliest point in the startup where the system time and the front panel time are (supposed to be) dealt with is the rcS-routine. Regarding timehandling, it does the following:

    1. The first thing that happens is the start of the nuvoton front panel driver. This driver is the speaking channel to the front panel clock and also controls the power state this way. The driver cannot synchronise the front panel clock, because at this point there is no network connection, and no satellite channel tuned in, so all possible sources of a correct and reliable time and date are absent
    2. Just before Enigma2 is started the program /sbin/set_was_timer_wakeup is called. What that does exactly I cannot tell, as it a binary in the image.
    3. Enigma2 is started.


    Observation 1: Unless these tasks are done by the mysterious /sbin/set_was_timer_wakeup, either the system time, nor the front panel clock have been touched at this point. This in practice could mean that the system time is set to midnight January 1st 1970 (or 2000). This also means that the front panel clock is uninitialised when the receiver was off the mains before.
    Observation 2: In usr/sbin there is a script time.sh that used to be called by the rcS, but is no longer. The script deleays itself for 52 seconds and then again for 30 seconds and executes a fp_contol -dt. The rationale behind this is that is very likely that by this time a satellite channel has been tuned in, and enigma2 has synchronised the system time with the transponder time. I have not been able to find any calling of this routine however.
    fp_control -dt version 1.04 does absolutely nothing on a HS8200
    fp_control -dt version 1.06 also does absolutely nothing on a HS8200

    Net result seems to be that Enigma2 sets the system time, and the front panel clock is untouched at this point.

    Sequence of events in the HDMU image, power down to deep standby
    Enigma2 stops and returns to the rcS with a return value of 1. The rcS displays the message SHUTDOWN on the front panel display, sets the HDMI CEC and executes an init 0 (=system halt). At the end of this process /etc/init.d/halt is called. The very last ting is script does is an fp_control -e (without a further argument).

    fp_control 1.06 now does the following. First it gets the current system time for the local timezone (the front processor works in local time, not UTC). Then it reads the earliest timer entry from enigma (in /etc/enigma2/timers.xml). It evaluates four cases:
    A. No timer set at all;
    B. Timer time is negative;
    C. Timer time is valid, but in the past;
    D. Timer time is valid and more than 300 days in the future.
    In all four cases the lines: "There are no timers set or\nwake up time in the past;\nshutting down now." are written in the log and the receiver is powered down through nuvoton. Note that the front panel clock is still untouched and may still be uninitialsed!

    If none of the above four cases are true, then there is a valid timer entry. fp_control now calculates the wakeup time in local time and writes this in the log.

    Both versions now calculate the time difference between the system time and the timer time, and proceed to read the front panel clock time. Then the front panel time is compared to the system time.

    fp_control 1.04 and 1.06 handle things differently from this point on.

    Version 1.04 accepts a time difference between the two clocks of up to 12 hours either way, with version 1.06 this is 1 hour either way.

    If there is a difference of more than 12 hours fp_control 1.04 sets the front panel clock equal to the system time, and then reports the front panel time in the log. It sets a wake up time of the front panel clock plus the calculated difference as wakeup time. If reading the front panel time fails, it does the same, but uses the system time plus the difference as the wake up time.

    If there is a difference of more than 1 hour, fp_control 1.06 reports this in the log, but does NOT correct the front panel clock.
    It then adds the calculated difference to the front panel time read previously and sets this as wakeup time.
    If reading the front panel time fails, it sets the difference (plus zero) as the wake up time (this needs improvement as this will probably result in a failed timer. However if one cannot read the front panel time, is is very unlikely that one can set the wakeup time correctly).

    The net result of both approaches should be the same, provided no overflows in the calcuations with a potentially uninitialised front panel clock occur. The approach in version 1.04 is the better of the two, and I have updated the git accordingly.

    Both versions more or less assume Enigma2 sets the front panel clock, wheras it does not. The only point in time the front panel clock is corrected at the moment of writing, is when a power down to deep standby is done with fp_control version 1.04 and a valid timer set. Version 1.06 wrongly assumes the front panel clock would be set each time the system time is set, but is assumption is clearly wrong. The version currently in the git should correct this; the fp_control version number has been set to 1.07. I just pushed it.

    Please not that this behaviour has been verified by users of Spark7162 with VFD display: they all conmplain about the front panel clock being incorrect until after the first deep standby and subsequent power on has occured. The real improvement would be that the rcS would set the front panel clock correctly before Enigma2 starts in about the the time.sh would do. fp_control 1.05 and higher have an option for this: option -sst copies the system time which must have be set correctly beforehand to the front panel clock. Neutrino handles all this correctly and initialises the front panel clock as part of its startup procedures.

    Regards,

    Audioniek.
    Receivers: Rebox: RE-4000, 8000, 9000, 2200, 2210, 2220, 4200, 4210, 4220, 8220, 8500, SAB Unix Triple, Golden Media Spark TripleX, Amiko Alien 2+, Sogno Spark Revolution, Kathrein UFS910(1 & 14W)/912/913/922(CX24116 & AVL2108 tuners), Vizyon revolution 820HD PVR, AB IPBox 91HD/9000HD/9000HD rev.2, Xsarius Alpha HD10, nBox BKSA/BSLA/BXZB/BZZB, Vitamin HD 5000
    Sats: Astra 1, 2 & 3, Hotbird
    Main activity: building my own E2 images for Fortis receivers

  3. The Following 3 Users Say Thank You to Audioniek For This Useful Post:



  4. #113
    VIP Avatar von santa
    Registriert seit
    07.05.2012
    Beiträge
    7.844
    Thanks
    1.070
    Thanked 5.005 Times in 1.790 Posts
    Zu 1. Set_was_timer_wakeup wartet auf die Zeit vom Satellit und schaut anschließend ob die jetzige Zeit innerhalb von 6 Minuten vor dem nächsten Timer ist, wenn das so ist, Wird ein proc gesetzt, Welches nach der Aufnahme die Box wieder in den Deep versetzt.
    Zu 2. Hab jetzt nicht in das git geschaut, aber mir war so als wenn die time.sh ein Relikt Alter Zeiten war, als einige boxen die Zeit im vfd falsch angezeigt hatten, kann sein das wir das mal rausnehmen müssten.
    mfg santa

    GigaBlue Quad Plus -->Yamaha AV Receiver-->Panasonic Plasma

    derzeit noch in Betrieb:
    IPBox 9000, Technisat Digicorder HDS2+, AT 500



  5. #114
    VIP
    Registriert seit
    13.05.2012
    Beiträge
    759
    Thanks
    35
    Thanked 345 Times in 243 Posts
    Zu time.sh kann ich was sagen:
    Die wurde bei Spark7162 benutzt, damit im VFD nach Start die Zeit gesetzt wurde.
    Kam die DVB Zeit zu spät > war das Script beendet und die Zeit passte nicht.

    Als Ersatz hab ich mal den aotomtd gebastelt, der auch benutzt wird:
    Code:
      spark|spark7162)
       /usr/bin/lircd
       (sleep 75;aotomtd 60) & 
       /bin/evremote2 useLircdName 100 50 35 &;;
    Nach Parameter ( hier alle 60 Sek. ) wird die VFD Zeit aktualisiert mit dem IOCTL:
    Code:
    #define VFDSETTIME2  0xc0425afd // seife, set 'complete' time...
    Das hat seife mal vor ewigen Zeiten in die aotom Source eingebaut, und setzt die komplette Zeit inklusive Datum.

    Das Daemon Tool (aotomtd) macht im Grunde das, was Neutrino im Falle Spark periodisch macht.

  6. The Following 4 Users Say Thank You to DboxOldie For This Useful Post:



  7. #115
    Benutzer
    Registriert seit
    22.02.2016
    Ort
    NRW
    Beiträge
    49
    Thanks
    22
    Thanked 6 Times in 3 Posts
    @dBoxOldie

    Jetzt habe ich mal den SLEEP eingebaut, aber nun fährt der Receiver nicht mehr hoch. Er bleibt auf LOADING stehen
    vorher....
    Code:
    until false
     do
      echo "starting e2->"
      /usr/local/bin/enigma2
      rtv=$?
      echo "e2 ended <- RTV: " $rtv
      case "$rtv" in
       1) echo "1"
        echo "SHUTDOWN"
        case $model in topf)
          echo "STB" > /dev/fpsmall
          echo "SHUTDOWN" > /dev/fplarge;;
         *) echo "SHUTDOWN" > /dev/vfd;;esac
        if [ -e /etc/.cecstandbyon ]; then
         echo "0" > /proc/stb/cec/systemstandby
        fi
        init 0;;
       2) echo "2"
    nachher...
    Code:
    until false
     do
      echo "starting e2->"
      /usr/local/bin/enigma2
      rtv=$?
      echo "e2 ended <- RTV: " $rtv
      case "$rtv" in
       1) echo "1"
        echo "SHUTDOWN"
        case $model in topf)
          echo "STB" > /dev/fpsmall
          echo "SHUTDOWN" > /dev/fplarge;;
         *) echo "SHUTDOWN" > /dev/vfd;;esac
        if [ -e /etc/.cecstandbyon ]; then
         echo "0" > /proc/stb/cec/systemstandby
        fi
        init 0
        sleep 6;;
       2) echo "2"
    war doch richtig so, oder?


  8. #116
    VIP Avatar von santa
    Registriert seit
    07.05.2012
    Beiträge
    7.844
    Thanks
    1.070
    Thanked 5.005 Times in 1.790 Posts
    Notepad++ oder einen anderen Linuxkonformen Editor benutzt?
    mfg santa

    GigaBlue Quad Plus -->Yamaha AV Receiver-->Panasonic Plasma

    derzeit noch in Betrieb:
    IPBox 9000, Technisat Digicorder HDS2+, AT 500



  9. #117
    Moderator Avatar von flac
    Registriert seit
    16.01.2013
    Ort
    Im Oberharz
    Beiträge
    3.495
    Thanks
    986
    Thanked 995 Times in 748 Posts
    ...die Semikolons sind wohl falsch. Sie müssen hinter dem init bleiben. Darunter der Sleep,



    Gruß

    flac
    -------------------------------------------------- Kein Support via PN --------------------------------------------------
    RECEIVER>GB UHD Quad 4K mit akt. HDMU Image, Octagon 4K SF 4008, Wetekplay, Kathrein UFS913, GI Xpeed LX2
    TV>LG47LV570S / AVR>DENON 2309 / DVD>DENON 1930 / BLURAY>DENON 1800BD / iPOD DOCK.>DENON ASD-3N /
    TAPE>AKAI GX-650D / PHONO>THORENS TD125 / HECO 7.1 SYSTEM / FB>HARMONY ELITE / FRITZBOX 7590 / NAS>ZyXEL NSA325/325v2


  10. #118
    Benutzer
    Registriert seit
    22.02.2016
    Ort
    NRW
    Beiträge
    49
    Thanks
    22
    Thanked 6 Times in 3 Posts
    @santa

    Hab mit WINSCP gearbeitet. Der ist linuxkonform.


  11. #119
    Erfahrener Benutzer
    Registriert seit
    24.02.2015
    Beiträge
    166
    Thanks
    55
    Thanked 38 Times in 24 Posts
    #112 erklärt auch das unterschiedliche Verhalten bei mir, je nach dem, ob der Timer >300 Tage in der Zukunft liegt oder nicht.
    Octagon 1028p-noblence (Bj 2012, Twin, Astra+Hotbird) mit HDMU_16609_E2_at7500_217_git_592 v. 14.8.2017 (installiert 10.10.17), interne 1 TB HDD über SATA
    AppleTV 4K
    Synology DS215j (8/2015) 2x3TB JBOD, DSM 6.1.3-15152 Update 6
    Fritzbox 7390 (06.83), Fritzbox 4040 (06.83)
    Mac-Mini i5 dual core 2,6GHz (late 2014, Bj 2017)


  12. #120
    VIP Avatar von santa
    Registriert seit
    07.05.2012
    Beiträge
    7.844
    Thanks
    1.070
    Thanked 5.005 Times in 1.790 Posts
    @flac, das mit den Semikolons ist schon richtig, da sonst das sleep nach dem init nicht aufgerufen wird und sonst im Nichts steht.



    Häng mal die geänderte rcS hier an

    Edit: Alternativ mal rcS und e2 killen und dann erst kopieren.

    Also im telnet:

    killall rcS
    killall enigma2

    Datei tauschen

    init 6
    mfg santa

    GigaBlue Quad Plus -->Yamaha AV Receiver-->Panasonic Plasma

    derzeit noch in Betrieb:
    IPBox 9000, Technisat Digicorder HDS2+, AT 500


  13. The Following User Says Thank You to santa For This Useful Post:



Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •