Ankündigung

Einklappen
Keine Ankündigung bisher.

htime nicht zuverlässig?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Zitat von DerMitdemBusSpricht Beitrag anzeigen
    Bzgl. der Betriebsferien - ich lese hier immer wieder Nachrichten
    vom Enertex Team - also warum kann dann nicht auf meine Frage geantwortet werden? Gut, ist
    ja jetzt passiert, bedankt dafür. Aber wenn man schon publiziert das hier Betriebsferien gemacht werden
    dann sollte man sich auch wirklich fern halten.
    Was die Herren u. Damen Enertex in ihrem Urlaub machen, bleibt doch ihnen überlassen.. und wenn hier
    jemand in der Freizeit seinen Senf zu best. Problemen abgibt, dann ist das doch mehr wie nett/OK..

    Evtl. muss man ja bei einigen Fragen, die hier aufkommen Rücksprache mit Kollegen halten, die hier nicht
    mitlesen.. deswegen kommt evlt. keine Antwort, auf jede Frage (nur ein mögliches Szenario)

    also .. nicht Aufregen... Freuen !!

    Gruß Martin
    Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

    Kommentar


      #17
      betreffend "Ereignisspeicher" ...

      Handbuch lesen hilft ungemein
      EPIX
      ...und möge der Saft mit euch sein...
      Getippt von meinen Zeigefingern auf einer QWERTZ Tastatur

      Kommentar


        #18
        Ich habe 700 Euro für nen Teil bezahlt das es nicht schafft zum Zeitpunkt X die Lampe Y zu schalten. Und sorry - das ist es was mich hier gerade nicht wirklich glücklich macht. Wenn ihr das anders seht ok, für mich ist es aber ein klarer Mangel. Sorry.

        Kommentar


          #19
          Versteh ich.. aber du hast dich gerade eher darüber beschwert, warum
          Enertex sich (trotz Betriebsurlaub) nicht sofort bei dir meldet.. aber gut..
          zurück zum Thema:

          geht die zweite Zeile nie, oder nur ab und zu nicht ?
          Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

          Kommentar


            #20
            Naja, in diesem Fall konnte ich das nur einmal feststellen da es sich um die Silvesternacht handelte. Neujahr habe ich das dann wieder rausgenommen. Allerdings bestätigt das ja nur das ganze Thema nochmal.
            Ich habe auch den Ereignisspeicherausgelesen. Mir scheint das da aber nur die Sachen drin sind die sich nach dem letzten Systemstart ereignet haben. Also sehen wir nun den besagten Zeitpunkt nicht mehr. Dennoch ist auffällig das da wohl Probleme mit dem Wettermakro sind.

            Ein screenshot habe ich angefügt - Am Mac kann man den Output leider nicht in die zwischenablage kopieren und er wird wohl auch nicht in eine Textdatei geschrieben...
            Angehängte Dateien

            Kommentar


              #21
              setz doch mal ne Uhrzeit ein die nicht mitten in der Nacht ist.. zum Testen..

              einfach msl um zu dchsun, ob der Code/Zeile überhaupt läuft..
              Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

              Kommentar


                #22
                Werde ich mal ausprobieren. Ich habe mir jetzt auch mal eine Version gebaut aus der nun alles was mit wunderground zu tun hat rausgeflogen ist. Mal sehen ob es was bringt.

                Kommentar


                  #23
                  Zitat von DerMitdemBusSpricht Beitrag anzeigen
                  Punkt 1 - Ereignisspeicher Auslesen - wie geht das? Ich war der Meinung wenn ich die Telegramme vom EibPC transferiere das die der Ereignisspeicher ist. Und diese habe ich ja auch gepostet.
                  Einfach den 2 Button von rechts drücken (da steht mit der Ballonhilfe "Ereignisspeicher auslesen).
                  Punkt 2 - Ich nutze sowohl den HA7E als auch das WUnderground WetterMarkro. Das sind alles Dinge die ich nicht selbst erfunden habe sondern auf Basis der Libaries basierend die von euch vertrieben werden. Und korrigiert mich bitte wenn ich da falsche liege: Ich habe nirgends gelesen das wenn ich dieses Makro einsetzte dafür an anderer Stelle vielleicht etwas hinten runterfällt.
                  Nun kommt es schon darauf an, welche Version der Makros du einsetzt, ob es die mit dem "Enertex" im Namen vorangesetzt sind, oder eben auch die aktuelleste Version. So wie die Infos bisher gekommen sind, ist das eher was für

                  Und ob um diese Zeit tatsächlich etwas Verarbeitet worden ist kann ich leider nicht beantworten. Ich stelle diese Informationen gerne zur Verfügung wenn ich weiß wie ich daran komme.
                  Was macht denn da Dein Programm. Das wirst Du doch wohl wissen? Oder hast Du das gar nicht selber erstellt.
                  Zitat von DerMitdemBusSpricht Beitrag anzeigen
                  Ich habe 700 Euro für nen Teil bezahlt das es nicht schafft zum Zeitpunkt X die Lampe Y zu schalten. Und sorry -
                  Wenn es Dir darum geht, dann nimm folgenden Code.
                  Code:
                  if(chtime(23,00,01))then write ("DachLedFront-2/1/29",EIN) endif
                  if(chtime(01,15,01))then write ("DachLedFront-2/1/29",AUS) endif
                  Wenn irgendeine deiner Codefragmente alle 4 Wochen mal länger als 1 Sekunde aktiv ist (was eigentlich nicht vorkommen soll), dir das aber egal ist, so ist das sicher die Lösung.
                  das ist es was mich hier gerade nicht wirklich glücklich macht. Wenn ihr das anders seht ok, für mich ist es aber ein klarer Mangel. Sorry.
                  Um einen Mangel feststellen zu können, würden mir die Information bisher nicht reichen.
                  EDIT
                  Zitat von DerMitdemBusSpricht Beitrag anzeigen
                  Werde ich mal ausprobieren. Ich habe mir jetzt auch mal eine Version gebaut aus der nun alles was mit wunderground zu tun hat rausgeflogen ist. Mal sehen ob es was bringt.
                  Das von uns modifizierte Wondergroundmakro ist ok, das haben wir optimiert. Muss aber das neue sein (Makrolib), nicht das "Orginal" vom Jamabala.
                  Welche 1-Wire-Lib nutzt du- das wäre mein 2-ter Verdacht.
                  offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                  Enertex Produkte kaufen

                  Kommentar


                    #24
                    Für mich geht es hier um das Thema htime und der Funktionsweise bzw Limitierungen dieser Funktion (und vieleicht auch weiteren).

                    Zitat von enertegus Beitrag anzeigen
                    I
                    Problematisch kann sein, wenn z.B. die Schnittstelle zuckt, oder wenn das Programm an einer Stelle länger als eine Sekunde zur Verarbeitung braucht.
                    Heist das, dass auch eine Variable im Programm nicht sicher mit htime gesetzt wird, die ja auch noch nach einer Sekunde ausgewertet werden könnte?

                    Wenn dem so ist, wozu verwendet man dann noch htime, wenn die Funktion nicht save ist?

                    Kannst Du das was im eiBPC da genau abläuft, bei o.g. benötigter Sekunde, nocheinmal bitte erläutern? Aus dem Handbuch wird mir das nicht klar.
                    Ist das überhaupt dokumentiert?

                    Kommentar


                      #25
                      soweit ich das verstanden habe am Beispiel htime(23,00,01):

                      Der EibPC läuft das gesamte Programm ständig in einer großen Schleife vom Anfang bis zum Ende ab und führt das aus, was auszuführen ist.

                      Um 22:59:59 passiert noch nichts, weil ja 23:00:01 noch nicht erreicht ist
                      um 23:00:00 ebenso
                      um 23:00:00,9 ebenso
                      Wenn jetzt in der aktuellen Schleife irgendwas zu einer Verzögerung fürhrt (normal wird die Schliefe im mS-Bereich abgearbeitet), dann startet die nächste Schleife
                      um 23:00:01,1 und der EibPC sagt 23:00:01 ist schon vorbei, muss nichts machen.

                      Was man hier überlegen könnte wäre irgend eine Art von internem Flag, ob die Funktion schon ausgeführt wurde, um sie dann ggf. noch um 23:00:02 nachholen zu können. Wobei genau dafür ja chtime existiert.

                      htime hat ja den Sinn etwas EXAKT zu einer bestimmten Zeit auszuführen. Wenn die Auslastung das nicht zulässt, was ist dann das richtige Verhalten?

                      Oder: es müsste irgend wie auf tieferer Systemebene ein Timer gesetzt werden, der per Interrupt sicherstellt, dass die Funktion zur richtigen Zeit auch wirklich ausgeführt wird.
                      ....und versuchen Sie nicht erst anhand der Farbe der Stichflamme zu erkennen, was Sie falsch gemacht haben!

                      Kommentar


                        #26
                        Zitat von Uwe! Beitrag anzeigen
                        Was man hier überlegen könnte wäre irgend eine Art von internem Flag, ob die Funktion schon ausgeführt wurde, um sie dann ggf. noch um 23:00:02 nachholen zu können. Wobei genau dafür ja chtime existiert.
                        htime hat ja den Sinn etwas EXAKT zu einer bestimmten Zeit auszuführen.
                        Genau so ist es. Wir hatten das Problem hier schon mal beim Wondergroundwettermakro. Da war die Abfrage so ungünstig programmiert, dass diese über eine Sekunde gedauert hatte. Daher haben wir dieses Usermakro angepasst und auf 200ms "getrimmt".
                        Natürlich kann man den EibPC überfahren. Z.B. kann man das mit
                        [highlight=epc]
                        x=0f32
                        if htime(11,59,59) then x=cos(1f32)+sin(1f32)+....+ (_zig weitere Operationen_) + tan(2f32) endif

                        if htime(12,00,00) then write('1/2/3'b01,AUS) endif
                        [/highlight]
                        erreichen. Hier würde die erste Anweisung so viel Rechenzeit benötigen, dass das zweite htime wohl nicht mehr zum Zuge kommt.
                        Mit der V3 und den 65K Strings kann man das auch mit Hilfe von rekursiven Finds, Umkopieren der Strings, Splitten etc. erreichen.

                        Das Design der EibPC-Programmiersprache ist aber dennoch so, dass a priori zeitintesive Operationen, wie etwa Lesen/Schreiben auf Flash, TCPConnects in einzelnen Threads ablaufen (Stichwort "asynchrone" Verarbeitung im Handbuch).
                        offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                        Enertex Produkte kaufen

                        Kommentar


                          #27
                          Auch wenn es die Ursache nicht behebt, nehmt halt den chtime Befehl, wie bereits vor einem Monat vorgeschlagen. Das Problem löst es jedenfalls.

                          Kommentar


                            #28
                            Zitat von Kahler Beitrag anzeigen
                            Auch wenn es die Ursache nicht behebt, nehmt halt den chtime Befehl, wie bereits vor einem Monat vorgeschlagen. Das Problem löst es jedenfalls.
                            Das mag sein, werde ich auch tun und wahrscheinlich ist dann mein Problem auch behoben.
                            Aber nachdem jetzt einige hier ihren Input zu der Thematik geliefert haben (nochmals ausdrücklichen Dank dafür) kristallisiert sich doch deutlich das - egal was man für Libs benutzt - es immer wieder zu einer Situation kommen kann wo htime nicht ausgeführt wird. Und das ist einfach Fakt!

                            Ein klarer Hinweis an entsprechender Stelle hätte mich dann davon abgehalten diesen Befehl zu nutzen.

                            Für mich ist das Thema dann auch beendet hier, bleibt zu hoffen das solche Funktionen - die vielleicht Funktionieren - auch einen entsprechenden Hinweis erhalten oder noch besser: entfernt werden.

                            Vielen Dank!

                            Kommentar


                              #29
                              Danke Uwe.

                              Zitat von DerMitdemBusSpricht Beitrag anzeigen
                              ... Ein klarer Hinweis an entsprechender Stelle ...
                              Dem stimme ich zu. Ab ins Handbuch damit.

                              Kommentar


                                #30
                                Für mich ist das indiskutabel! Hier geht es um ein Problem des eibPCs, dass gelöst werden muss und zwar nicht nur durch einen Eintrag im Handbuch.

                                Es kann einfach nicht angehen, dass der Code quasi "zufällig" nicht ausgeführt wird. Robust geht anders!!!
                                BR
                                Marc

                                Kommentar

                                Lädt...
                                X