OE2.5 Uhrzeit wird nicht mehr von DVB-Time oder ntp bezogen

  • Ich habe mal wieder seit Tagen eventuell Wochen das Problem, dass die Uhrzeit meiner Dreambox 7080HD nicht stimmt.


    Meine Netzwerkeinstellung steht aktuell auf manuell, würde ich es auf automatisch stellen, wäre der Uhrzeit-Bezug von meiner Fritzbox die von 2.pool.ntp.org bezieht. Stimmt bei jedem Gerät im Haus.
    Ich habe auch gutemins DVB-Time Plugin schon verwendet, wo man manuell die Uhrzeit setzen kann, sich von DVB-Time beziehen lassen kann oder sogar von einem ntp-Server.
    In allen Fällen bleibt die Dreambox Uhrzeit Hartnäckig auf dem falschen Wert.
    Sogar wenn ich mit dem DVB-Time Plugin auswähle, vergleiche mit DVB-Time, dann kommt immer eine Differenz von 102-104sek dabei raus.


    Was konnte ich feststellen (Log anbei)
    - Dreambox komplett Stromlos
    - Nach 5min hochfahren (Uhrzeit 1.1.1970 00:00 Uhr) auf einen Sender via Sat
    -- Meine Beispiel ein DVB-S2 Sender. Zeit der Dreambox aktualisiert sich auf richtige aktuelle Zeit, welche auch vom Transponder gesendet wird
    - Weiter schalten auf einen DVB-S Sender (ProSieben). Uhrzeit passt und bleibt unverändert
    - Schalte weiter auf einen Sender DVB-C UM (ProSieben). Uhrzeit springt direkt auf ungefäht 1:40min voraus (2 Minuten)


    Ab diesem Zeitpunkt kann ich umher zappen wie ich möchte. Die Uhr bleibt wie eingebrannt auf diese 2 Min voraus. Egal was ich mache. Box Herunterfahren, DVB-Time Plugin verwenden um zu sagen, verwende DVB-Time, nehme selbst definierte Zeit oder beziehe von ntp-Server. Beziehe Zeit automatisch vom internen Zeit-Server (Fritzbox). Es wird alles ignoriert.


    Im Log bei 22:48Uhr gut zu lesen, es steht zwar drin update Linux Time und systemd[1]: Time has been changed, aber die Uhrzeit bleibt auf dem falschen Wert (2 Min voraus) stehen. :(



    Einzige Lösung aktuell:
    - Enigma2 Zeitaktualisierung deaktivieren
    - Box aus dem Stromlosen Zustand hochfahren
    - Vom Zeitserver aktuelle Zeit holen lassen

  • Habe das Problem auch auf meiner DM7020HD und DM800HDse. Habe auch festgestellt das bei einigen Sendern die Zeit im Teletext bis zu 5min. abweicht.
    Wie es mit OE2.5 aussieht kann ich im Moment nicht testen da meine DM900UHD noch bei DP zur Reparatur ist. ;(

  • du weist aber schon das sich ome OE2.0 nichts mehr tut womit das problem bei dir bleiben wird und kaum was Neues sein wird.....

  • Das sich am OE2.0 nichts mehr tut ist mir klar, aber das Problem tritt erst seit ca. 4-5 Tagen auf. Und das ist es was mich grübeln lässt.
    Hoffe das meine DM900UHD bald wieder bei mir ist ( zum 2.ten mal ein MB Wechsel ;( )

  • Ich kann exakt das gleiche Problem auf einer DM900 mit akt. Merlin 4 Image bestätigen.
    Wenn ich auf Dubai Sports 3 HD (13°E) zappe springt die Uhr 1:40 Minuten nach vorn in nie wieder zurück ausser nach dem stromlos machen.

    CU
    HorstH


    LG OLED 65 C7D

    Dreambox 900 UHD
    Dreambox 800se 500Gb Samsung

  • Naja man sieht doch in den Logfiles sehr genau wo das Problem liegt.


    Die Transponder / Provider / Sender liefern halt total unterschiedliche Zeiten.


    Abweichungen bis zu 120 Sekunden nehmen wir hin und trauen halt der gesendeten Zeit.


    Es gibt halt keine Referenz Zeit der man 100% vertrauen kann.


    Von daher wissen wir halt nie, ob und welche Zeit nun korrekt ist und welche nicht.


    Da kann man sich halt nur bei den Providern beschweren... die sollen halt Ihre Technik mal in den Griff bekommen und korrekte Zeiten senden.


    Wobei man sagen muss, dass ich auf Astra 19.2 die Zeiten der Deutschen Sender okay finde.


    Da weicht nicht viel an.. +- 5 sekunden.. das ist alles im Rahmen...


    Aber mehr als 2 Minuten Abweichungen sind schon komisch.


    Aber da die Settop Boxen halt keine so genauen Uhren haben, ist man auf die korrekte Zeit über DVB angewiesen.


    Kurzer Nachtrag noch... in der DVB Spezifikation ist sehr genau geregelt, was die Sender da senden sollen / dürfen.


    Und das ist im Normalfall eine UTC .. also ohne jegliche Abweichung.. und die UTC sollte auf der gesammten Welt identisch sein.


    cya

  • Und wie erklärst du mir das es auf auf meiner 7080er nicht funktioniert,
    auf meiner 900er aber doch?


    Die Transponder / Provider / Sender in meinem Test sind ja die identisch.
    Das Erste HD und ZDF HD.

    mfg.


    schnubbel
    OoZooN Team

  • Hast du ein Logfile?


    Bei der 7080 gibts eine art RTC.. die hat die DM900 nicht.


    Dort versucht die Software über das vergleichen der RTC Zeit zu erreichen, dass falsche Transponder Zeiten nicht übernommen werden.


    Das Problem dabei ist aber, dass wenn man z.b. mehrfach hintereinander auf Transponder schaltet wo die Abweichung jeweils kleiner als 120 Sekunden ist.. dann verstellt man sich damit die RTC ebenso.. sprich beim ersten schalten geht z.b. die Uhrzeit um 2 Minuten zurück.. oder 90 sekunden.. dann schaltet man auf einen Sender der nochmals 90 Sekunden in der selben richung abweicht.. dann hat man nun insgesammt eine Abweichung von 180 Sekunden.. diese steht so nun aber auch in der RTC...


    Wenn man nun wieder auf einen Sender schaltet wo die Abweichung dann in der Anderen Richtung mehr als 120 Sekunden ist.. dann wird diese Zeit nicht mehr übernommen .. weil e2 dann davon ausgeht dass die Zeit auf dem Transponder falsch ist... was sie aber ja nicht ist.. nur weiss die Box das nicht.


    Wenn jemand eine tolle Idee für eine tolle Logic hat mit der man sowas verhindern kann.. dann nehme ich die gerne ;)


    Aber bitte nur Lösungen die komplett ohne Zeit aus dem Internet oder Netwerk auskommen.


    Sprich das ganze muss funktionieren mit einer Box die nicht am Netz hängt und komplett Stromlos war....


    Das Dumme ist, dass man nie weiß welche Transponder korrekte Zeiten senden.


    Eventuell sollte man irgendwie ein Plugin bauen wo man ein paar Sender definieren kann wo die Box der Zeit immer vetrauen kann / soll. Und damit jegliche Abweichung der RTC dann auch wieder korrigiert wird.


    Ohne so etwas wird es vermutlich nie gehen.


    Das ganze Thema ist übrigens schon uralt.. und die selben Probleme gabs damals bei e1 auch schon....


    Wenn man sich die RTC soweit verstellt hat, dass ein zappen auf einen korrekten Sender die Zeit nicht mehr richtig setzt.. dann hilft nur noch Box auf Das Erste HD schalten.. oder ZDF.. oder jeglichen Sender wo man weiss dass die Zeit korrekt ist.. und dann runterfahren und stromlos machen.


    Oder ein Plugin verwenden wo man die Zeit wieder gesetzt bekommt.... weiss gar nicht obs eins gibt.


    cu

  • Wenn man sich die RTC soweit verstellt hat, dass ein zappen auf einen korrekten Sender die Zeit nicht mehr richtig setzt.. dann hilft nur noch Box auf Das Erste HD schalten.. oder ZDF.. oder jeglichen Sender wo man weiss dass die Zeit korrekt ist.. und dann runterfahren und stromlos machen.
    Oder ein Plugin verwenden wo man die Zeit wieder gesetzt bekommt.... weiss gar nicht obs eins gibt.


    Ja gut Ghost, aber bis vor paar Monaten gab es das Problem noch nicht. OE2.2?. Da wurde die Zeit halt hin und her gewechselt. Also 3min vor und beim anderen Transponder wieder zurück. Jetzt bleibt es stehen.
    Die Lösung mit Das Erste HD ist zwar möglich, aber sobald ich hier auf einen Unitymedia oder Hotbird Transponder schalte passt die Zeit wieder nicht mehr.
    Ja es gibt von gutemine ein DVBTime Plugin, hier kann man die Uhrzeit nach dvb-time stellen, nur paasiert nichts.
    Man kann damit sagen prüfe die dvb-time vom Transponder, die sagt mir auch liegen 104sek Differenz vor. Geht aus Log auch hervor.
    Mit dem Plugin kann man auch die zeit manuell, vom ntp Server oder vom Transponder/Frequenezn setzen und korrigieren lassen, solange ich wie gesagt auf keinen Unitymedia Frequenz schalte, danach ist diese Änderungs-Sperre der Uhrzeit aktiv (drücke es jetzt mal so aus) und die einzige Lösung ist Stromlos.


    Quote from Ghost

    Wenn man nun wieder auf einen Sender schaltet wo die Abweichung dann in der Anderen Richtung mehr als 120 Sekunden ist.. dann wird diese Zeit nicht mehr übernommen .. weil e2 dann davon ausgeht dass die Zeit auf dem Transponder falsch ist... was sie aber ja nicht ist.. nur weiss die Box das nicht.


    Gut, aber worin unterscheidet sich dann die Netzwerk-Einstellung manuell und automatisch des Zeitservers, wenn beides dann nicht mehr funktioniert/reagiert.
    Dachte eigentlich immer manuell nimmt Zeit vom Mux/Transponder/Frequenz und automatisch auch vom HomeServer, Fritzbox bzw. internen Zeitserver welcher ja die richtige Zeit vorgibt.


    Kurz verstehe ich dich dann richtig. Die einzige Lösung aktuell ist. DVB-Time von Enigma2 abschalten und bei jedem Bootvorgang mit einem Plugin wie dvb-time die Zeit vom ntp-Server beziehen lassen, da der interne Schalter automatisch vom eigenen Zeitserver nicht zieht?

    In Betrieb
    Dreambox 920uhd-S2X/C
    Ausser Betrieb
    Dreambox 7080HD-S2/C / 8000-S2

  • Es ging halt die ganze Zeit, weil die Abweichungen der Transponder nicht so groß waren.
    Die haben halt was verbockt...


    Und naja.. solange du das setzen der DVB-Time aktiviert hast, hat die DVB-Time immer Vorrang. Egal wie oft du die Zeit dann manuell oder per NTP verstellst.. wenn das nächste mal eine DVB-Zeit kommt wird ggf. dann wieder die falsche kaputte Zeit gesetzt weil in der RTC ggf. eine falsche steht.. und der NTP die RTC Zeit nicht setzen kann... oder es aktuell nicht tut.


    Ich denke ich werde bei Gelegenheit eine Möglichkeit schaffen wo man in e2 ein paar Sender festlegen kann die immer Vorrang haben. Sprich wenn man auf diese schaltet wird immer die Zeit der Box und auch die Zeit der RTC damit neu gesetzt.


    Ansonsten müsste man das Plugin zum Zeit korrigieren auch mal anpassen, dass es ggf. ach die RTC neu setzt. Das kann man einfach über /proc/stb/fp/rtc machen.. sprich da die Zeit reinschreiben im Linux format... also Sekunden seit dem 1.1.1970.


    Das ist für alle Boxen notwendig, die eine RTC haben..


    Ansonsten gibt es momentan nur die Möglichkeit das setzen der DVB-Zeit abzuschalten. Und nur die NTP Zeit zu verwenden.


    cu

  • DVBTime Plugin um schnell mal auf einen Sender mit richtiger Zeit zu zappen und explizit zu setzen geht schon auch noch immer, aber wie Ghost sagte sobald du dann wieder einen Sender anzappst wo schlechte Zeit gesendet wird fängt das Problem von vorne an. Ich kann dort aber auch zusätzlich einbauen das die Zeit auch noch ins /proc geschrieben wird, damit das e2 dann beim Vergleichen kein Problem hat.


    Wobei ich das Ganze nicht über "gute" Sender lösen würde, sondern ich würde eher im Kanallistenmenu eine "Ignore Time from Transponder" Einstellung implementieren würde, wo man dann die Problekinder/Sender markieren kann.

  • Na ja ich könnte ein Plugin bauen das ähnlich dem EPG Refresh die Sender schnell mal im Hintergrund durchzappt und die um die Ausreisser bereinigte Durchschnittszeit setzt :) Gut das ich das Problem aber nicht habe, weil dann muss ich mir die Arbeit nicht machen :P


    Oder wenn jemand lieb bitte, bitte sagt könnte ich auch den C Code Code vom DVBTimer Plugin in eine *.so umbauen die man dann in einem Python Plugin oder Skin benutzen könnte um die jeweilige Zeit anzuzeigen und dann selber zu entscheiden ob man die haben will - weil das wäre eigentlich die eleganteste Methoder - wenn mehr als 2 min Zeitunterschied ermittelt wird kommt ein Popup im enigma2 und man wird GEFRAGT ob man die Zeit anpassen will, das man dann mit ja/Nein/Ignore beantworten kann :D

  • Ich weis, schon weil Sachen wie eine simple Ignore Einstellung bei bösen Transpondern relativ leicht einzubauen wäre. Die Jungs (warum eigentlich keine Mädels?) von DP schaffen das sicher wenn Sie mal am Abend nicht schlafen können :whistling:


    Um es in einem Plugin selber zu lösen müsste ich aber auch nur die Transponderzeit komplett ignorieren und dann das Setzen der Zeit nachbauen, so das ich es vom python aus selber kontrollieren kann wie ich will. Jetzt passiert das im C++ Teil und wir sind auf DP angewiesen ^^

    Edited 2 times, last by Lost in Translation ().

  • DreamOS lässt die Zeit aber eh nicht ändern - zumindest nicht mit rdate ....


    Code
    1. root@dm900uhd:~# echo -e "local time: $(date)\nserver time: $(rdate -p time.fu-berlin.de)\nsync ...";rdate -s time.fu-berlin.de;echo "local time: $(date)"
    2. local time: Sa 18. Nov 21:40:18 CET 2017
    3. server time: Sat Nov 18 21:39:52 2017
    4. sync ...
    5. local time: Sa 18. Nov 21:40:18 CET 2017
    6. root@dm900uhd:~#

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox

    Edited 4 times, last by Fred Bogus Trumper ().

  • e2 ist recht insistiv, so einfach gehts nicht ^^


    Ohne das wirst du nicht weit kommen:


    config.misc.useTransponderTime = ConfigYesNo(default=True)


    Das ist nicht umsonst im DBVTime Plugin auf Blau drinnen, damit man es damit abdrehen kann.


    Jack Daniel hat sich damals die ganze Arbeit nicht umsonst gemacht.

    Edited 3 times, last by Lost in Translation ().

  • stimmt


    micht nerven seit dem ich die DM900 habe die falschen Zeiten im kernel log und systemdctl status solange die Zeit nicht aus der DVB-Time ans System übertragen wird (01.01.1970)


    Ich wollte mir eine fake-hwclock a-lá Rasperry Pi nachbauen, damit die Zeit wenigstens nach einem reboot einigermaßen stimmt. Ich fand aber keine Möglichkeit die Systemzeit zu ändern bis ich bemerkte, dass die Systemzeit nicht geändert werden kann.


    Im OE2.5 ist der Linux Unterbau an einigen Stellen nach wie vor "verbugt" bzw. greift E2 für meinen Geschmack zu tief in das System ein - aber das ist nur meine unbedeutende wie irrelevante Meinung. MIch nervt nur, das wir User diesen "eingebrandten" Mist schlucken müssen. Aber das ist wahrscheinlich nur ein weiterer Schritt zu closed source Box ...

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox