Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Entprellzeit bei history Adapter

    NEWS

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    Entprellzeit bei history Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      church last edited by

      Hallo,

      Laut den Beiträgen hier im Forum verstehe ich die Entprellzeit so, dass ein Counter über die eingestellte Zeit läuft in der kein neuer Wert kommen darf! Sonst wird nicht aufgezeichnet (Wert instabil) und der Counter fängt von vorne an (bis stabil).

      Bei mir werden allerdings trotz einer Entprellzeit von 1000ms Werte doppelt aufgezeichnet. Angeschlossen ist ein Klingeltaster an GPIO und geloggt wird das entsprechende Objekt des rpi2 Adapters!

      3265_bildschirmfoto_2018-05-16_um_10.17.33.jpg

      3265_bildschirmfoto_2018-05-16_um_10.18.04.jpg

      Abweichung hatte ich hier mal auf 1 gesetzt, hat aber auch nicht geholfen! Klappt das überhaupt bei Logikwerten?

      Danke für die Hilfe!

      1 Reply Last reply Reply Quote 0
      • wendy2702
        wendy2702 last edited by

        Hm,

        mal einen höheren Wert probiert?

        1000ms = 1 Sekunde… je nach Qualität des Klingeltasters...

        1 Reply Last reply Reply Quote 0
        • S
          stoffel67 last edited by

          Nur so ne' Idee…

          wie wird der Klingeltaster versorgt? Wechselspannung?

          hatte ich auch mal vor Jahren, hab' mir mit Diode und Elko zum "glätten" geholfen, funktioniert jetzt stabil...

          1 Reply Last reply Reply Quote 0
          • apollon77
            apollon77 last edited by

            Ich habe da eine Vermutung. Wenn der Adapter einen Wert nicht loggt weil noch nicht stabil, wird dennoch der letzte Wert gemerkt und bei der nächsten "echten" Änderung mit geschrieben.

            Um es das ist müsste man jetzt mit Debug Log schauen. Also wenn es Dich interessiert dann Instanz mal auf Debug schalten und dann eine Änderung machen 8also Klingeln) … dann das Log von kurz davor und kurz danach mal schicken.

            1 Reply Last reply Reply Quote 0
            • C
              church last edited by

              @wendy2702:

              Hm,

              mal einen höheren Wert probiert?

              1000ms = 1 Sekunde… je nach Qualität des Klingeltasters... `

              s. meinen Beitrag

              @stoffel67:

              Nur so ne' Idee…

              wie wird der Klingeltaster versorgt? Wechselspannung?

              hatte ich auch mal vor Jahren, hab' mir mit Diode und Elko zum "glätten" geholfen, funktioniert jetzt stabil... `

              Klingeltaster schaltet potentialfrei

              @apollon77:

              Ich habe da eine Vermutung. Wenn der Adapter einen Wert nicht loggt weil noch nicht stabil, wird dennoch der letzte Wert gemerkt und bei der nächsten "echten" Änderung mit geschrieben.

              Um es das ist müsste man jetzt mit Debug Log schauen. Also wenn es Dich interessiert dann Instanz mal auf Debug schalten und dann eine Änderung machen 8also Klingeln) … dann das Log von kurz davor und kurz danach mal schicken. `

              Ich habe mal einen log angehangen, geschrieben wurde true (also Taster los) wieder doppelt mit gleichem timestamp

              history.0	2018-05-16 20:00:08.112	debug	value not changed rpi2.0.gpio.16.state, last-value=true, new-value=true, ts=1526493608096
              history.0	2018-05-16 20:00:08.111	debug	value not changed rpi2.0.gpio.16.state, last-value=true, new-value=true, ts=1526493608094
              history.0	2018-05-16 20:00:08.111	debug	value not changed rpi2.0.gpio.16.state, last-value=true, new-value=true, ts=1526493608092
              history.0	2018-05-16 20:00:08.109	debug	value not changed rpi2.0.gpio.16.state, last-value=true, new-value=true, ts=1526493608090
              history.0	2018-05-16 20:00:08.088	debug	value not changed rpi2.0.gpio.16.state, last-value=true, new-value=true, ts=1526493608083
              history.0	2018-05-16 20:00:08.079	debug	Min-Delta ignored because no number rpi2.0.gpio.16.state, last-value=false, new-value=true, ts=1526493608074
              history.0	2018-05-16 20:00:08.001	debug	Min-Delta reached javascript.0.Klingel timeout, last-value=0, new-value=1, ts=1526493607995
              history.0	2018-05-16 20:00:07.944	debug	value not changed javascript.1.Klingel aktiv, last-value=true, new-value=true, ts=1526493607928
              history.0	2018-05-16 20:00:07.942	debug	value not changed javascript.1.Klingel aktiv, last-value=true, new-value=true, ts=1526493607926
              history.0	2018-05-16 20:00:07.926	debug	Min-Delta ignored because no number javascript.1.Klingel aktiv, last-value=false, new-value=true, ts=1526493607921
              history.0	2018-05-16 20:00:07.878	debug	value not changed rpi2.0.gpio.16.state, last-value=false, new-value=false, ts=1526493607851
              history.0	2018-05-16 20:00:07.878	debug	value not changed rpi2.0.gpio.16.state, last-value=false, new-value=false, ts=1526493607849
              history.0	2018-05-16 20:00:07.877	debug	value not changed rpi2.0.gpio.16.state, last-value=false, new-value=false, ts=1526493607846
              history.0	2018-05-16 20:00:07.877	debug	value not changed rpi2.0.gpio.16.state, last-value=false, new-value=false, ts=1526493607844
              history.0	2018-05-16 20:00:07.877	debug	value not changed rpi2.0.gpio.16.state, last-value=false, new-value=false, ts=1526493607842
              history.0	2018-05-16 20:00:07.876	debug	value not changed rpi2.0.gpio.16.state, last-value=false, new-value=false, ts=1526493607839
              history.0	2018-05-16 20:00:07.875	debug	value not changed rpi2.0.gpio.16.state, last-value=false, new-value=false, ts=1526493607837
              history.0	2018-05-16 20:00:07.832	debug	value not changed rpi2.0.gpio.16.state, last-value=false, new-value=false, ts=1526493607827
              history.0	2018-05-16 20:00:07.817	debug	Min-Delta ignored because no number rpi2.0.gpio.16.state, last-value=true, new-value=false, ts=1526493607812
              

              3265_bildschirmfoto_2018-05-16_um_20.04.06.jpg

              Sollte "true" bei ts=1526493607921 dann nicht ignoriert werden?

              1 Reply Last reply Reply Quote 0
              • wendy2702
                wendy2702 last edited by

                @church:

                @wendy2702:

                Hm,

                mal einen höheren Wert probiert?

                1000ms = 1 Sekunde… je nach Qualität des Klingeltasters... `

                s. meinen Beitrag `

                Verstehe ich nicht

                Gesendet von iPhone mit Tapatalk Pro

                1 Reply Last reply Reply Quote 0
                • C
                  church last edited by

                  Genau diesen Wert (1000ms) habe ich doch beschrieben!

                  1 Reply Last reply Reply Quote 0
                  • wendy2702
                    wendy2702 last edited by

                    Ja, und ich meine du sollst den mal erhöhen auf z.b. 3000

                    Oder hast du das schon getestet und wir reden aneinander vorbei <emoji seq="1f92d">🤭</emoji>

                    Gesendet von iPhone mit Tapatalk Pro

                    1 Reply Last reply Reply Quote 0
                    • C
                      church last edited by

                      O.K., dann habe ich das missverstanden 😐 Ich dachte, Dein Vorschlag wäre auf 1000ms zu erhöhen.

                      Aber im Ernst: 3s prellen doch keine Taster, sieht man ja auch an den Werten in meinem log, die liegen max. im 100ms Bereich!

                      Wäre aber trotzdem schön wenn es eine Lösung dafür gäbe!

                      1 Reply Last reply Reply Quote 0
                      • wendy2702
                        wendy2702 last edited by

                        Hast schon recht, der sollte keine 3 Sekunden prellen.

                        Sollte auch nur ein Versuch sein um zu sehen ob es etwas ändert.

                        1 Reply Last reply Reply Quote 0
                        • apollon77
                          apollon77 last edited by

                          Hm … im Log oben bei History sieht man leider nicht wann genau ein Wert geloggt wird 😞

                          Also ich vermute das es ist wie oben geschrieben:

                          In deinem Fall "kombinieren sich" die Dinge von "Nur Änderungen Loggen" und Debounce.

                          Debounce sorgt dafür das der Wert grundsätzlich "verzögert" geschrieben wird erst wenn seit mehr als 1s kein neuer Wert mehr rein kam.

                          "Nur Änderungen "loggen schiesst da aber jetzt im Zweifel quer bzw sorgt dafür das auch wenn sich werte nicht ändern immer der letzte gemerkt wird und sobald sich der Wert dann ändert der letzte auch geschrieben wird damit die Grafische Darstellung am Ende noch korrekt ist. Die soll nämlich trotzdem anzeigen wie lange der Wert unverändert geblieben ist.

                          Jetzt muss man mal überlegen ob das so sinn macht ... Kann ich mich ab Anfang Juni gern mal reindenken 🙂 Vorher bitte so akzeptieren

                          1 Reply Last reply Reply Quote 0
                          • C
                            church last edited by

                            > Hm … im Log oben bei History sieht man leider nicht wann genau ein Wert geloggt wird :-(

                            Steht das nicht hier?

                            history.0	2018-05-16 20:00:08.079	debug	Min-Delta ignored because no number rpi2.0.gpio.16.state, last-value=false, new-value=true, ts=1526493608074
                            

                            ` > In deinem Fall "kombinieren sich" die Dinge von "Nur Änderungen Loggen" und Debounce.

                            Debounce sorgt dafür das der Wert grundsätzlich "verzögert" geschrieben wird erst wenn seit mehr als 1s kein neuer Wert mehr rein kam.

                            "Nur Änderungen "loggen schiesst da aber jetzt im Zweifel quer bzw sorgt dafür das auch wenn sich werte nicht ändern immer der letzte gemerkt wird und sobald sich der Wert dann ändert der letzte auch geschrieben wird damit die Grafische Darstellung am Ende noch korrekt ist. Die soll nämlich trotzdem anzeigen wie lange der Wert unverändert geblieben ist. `

                            Genau das war´s! "Entprellzeit" und "nur Änderungen loggen" kommen sich in die Quere! Wenn ich "nur Änderungen loggen" ausschalte, werden die Werte nicht mehr doppelt aufgezeichnet, ausser wenn der gleiche Wert NACH Ablauf der Entprellzeit gesendet wird (was ja auch gewollt ist).

                            "Nur Änderungen loggen" war bei mir Default und ist bei der Aufzeichnung des Klingeltasters eh unnötig!

                            Per Default habe ich bei fast allen Datenpunkten beides aktiviert, aber bisher ist mir ähnliches nicht aufgefallen! Ich denke das tritt nur auf, wenn ein Datenpunkt wirklich auch prellt (also e-mechanische Taster). Ist das richtig?

                            Danke nochmal!

                            1 Reply Last reply Reply Quote 0
                            • apollon77
                              apollon77 last edited by

                              Danke für die Verifizierung!

                              Ja es tritt nur auf wenn im Rahmen der Entprellzeit andere Werte reinkommen.

                              Muss ich irgendwie umbauen …

                              1 Reply Last reply Reply Quote 0
                              • C
                                church last edited by

                                Super, danke!

                                Was mir bei der Gelegenheit noch aufgefallen ist:

                                Wenn z.B. ein Homematic Gerät über Javascript geschaltet wird, werden in History zwei gleiche Einträge erzeugt. Einmal mit Quelle Javascript und kurz danach nochmal vom hm-prc Adapter! Ist das so richtig?

                                1 Reply Last reply Reply Quote 0
                                • C
                                  church last edited by

                                  Klappt jetzt:

                                  Lag wohl daran, dass der Wert aus Javascript nicht bestätigt war (über "steuern" gesendet). Wenn ich über "aktualisieren" sende ist der Wert direkt aus Java bestätigt und wird nicht mehr von hm-rpc gespeichert!

                                  Ich muss mich nochmal genau mit dem Unterschied zwischen steuern und aktualisieren vertraut machen :?

                                  1 Reply Last reply Reply Quote 0
                                  • paul53
                                    paul53 last edited by

                                    @church:

                                    Wenn ich über "aktualisieren" sende ist der Wert direkt aus Java bestätigt und wird nicht mehr von hm-rpc gespeichert! `
                                    …und auch nicht mehr an die (virtuelle) CCU gesendet :!:
                                    @church:

                                    Wenn z.B. ein Homematic Gerät über Javascript geschaltet wird, werden in History zwei gleiche Einträge erzeugt. Einmal mit Quelle Javascript und kurz danach nochmal vom hm-prc Adapter! Ist das so richtig? `
                                    Ja: Erst wird der Wert mit ack = false (Quelle: javascript) auf den Datenpunkt geschrieben, dann an die CCU gesendet, von dieser bestätigt und dann ack = true gesetzt (Quelle: hm-rpc).

                                    https://forum.iobroker.net/viewtopic.php?f=22&t=14300#p150738.

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate
                                    FAQ Cloud / IOT
                                    HowTo: Node.js-Update
                                    HowTo: Backup/Restore
                                    Downloads
                                    BLOG

                                    719
                                    Online

                                    32.0k
                                    Users

                                    80.5k
                                    Topics

                                    1.3m
                                    Posts

                                    5
                                    16
                                    2181
                                    Loading More Posts
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                    The ioBroker Community 2014-2023
                                    logo