Hallo,
ich hänge an einem Versuch einen Counter auf der WebSeite meines Wemos D1 Mini mit Tasmota 13.2.0 über zwei Buttons über Rules zu ändern.
Mit klick auf den Button 1 soll der Counter 1 um eins erhöht werden.
Mit klick auf den Button 2 soll der Counter 1 un eins reduziert werden.
Hardware:
Relais 1 mit WebText "+"
und mit Pulsetime1 2
Relais 2 mit WebText "-"
und mit Pulsetime2 2
Relais 3
Im WebUi sieht das dann so aus:
Den Counter 1 ändere ich über zwei Rules:
rule1 on power1#state=1 do backlog Counter1 %var1%; add1 1 endon
rule2 on power2#state=1 do backlog Counter1 %var1%; sub1 1 endon
Das funktioniert fast wie ich es mir vorgestellt habe, aber der Counter "schleicht" um die Differenz von einem gezählten klick hinterher,
wenn man auf "+" und dann auf den "-" Button klickt.
11:55:26.109 RUL: POWER2#STATE=1 performs "backlog Counter1 1.000; sub1 1"
11:55:26.120 RSL: RESULT = {"Counter1":1}
11:55:26.218 RSL: RESULT = {"POWER2":"OFF"}
11:55:26.221 RSL: POWER2 = OFF
11:55:26.370 RSL: RESULT = {"Sub1":"0.000"}
11:55:27.125 RSL: RESULT = {"POWER1":"ON"}
11:55:27.127 RSL: POWER1 = ON
11:55:27.212 RUL: POWER1#STATE=1 performs "backlog Counter1 0.000; add1 1"
11:55:27.224 RSL: RESULT = {"Counter1":0}
11:55:27.426 RSL: RESULT = {"Add1":"1.000"}
11:55:27.445 RSL: RESULT = {"POWER1":"OFF"}
11:55:27.447 RSL: POWER1 = OFF
11:55:33.341 RSL: RESULT = {"POWER1":"ON"}
11:55:33.343 RSL: POWER1 = ON
11:55:33.431 RUL: POWER1#STATE=1 performs "backlog Counter1 1.000; add1 1"
11:55:33.444 RSL: RESULT = {"Counter1":1}
11:55:33.593 RSL: RESULT = {"POWER1":"OFF"}
11:55:33.595 RSL: POWER1 = OFF
11:55:33.645 RSL: RESULT = {"Add1":"2.000"}
11:55:37.042 RSL: RESULT = {"POWER1":"ON"}
11:55:37.045 RSL: POWER1 = ON
11:55:37.132 RUL: POWER1#STATE=1 performs "backlog Counter1 2.000; add1 1"
11:55:37.145 RSL: RESULT = {"Counter1":2}
11:55:37.295 RSL: RESULT = {"POWER1":"OFF"}
11:55:37.297 RSL: POWER1 = OFF
11:55:37.397 RSL: RESULT = {"Add1":"3.000"}
11:55:40.702 RSL: RESULT = {"POWER1":"ON"}
11:55:40.704 RSL: POWER1 = ON
11:55:40.785 RUL: POWER1#STATE=1 performs "backlog Counter1 3.000; add1 1"
11:55:40.799 RSL: RESULT = {"Counter1":3}
11:55:40.998 RSL: RESULT = {"POWER1":"OFF"}
11:55:40.001 RSL: POWER1 = OFF
11:55:41.047 RSL: RESULT = {"Add1":"4.000"}
11:55:46.539 RSL: RESULT = {"POWER2":"ON"}
11:55:46.542 RSL: POWER2 = ON
11:55:46.633 RUL: POWER2#STATE=1 performs "backlog Counter1 4.000; sub1 1"
11:55:46.643 RSL: RESULT = {"Counter1":4}
11:55:46.794 RSL: RESULT = {"POWER2":"OFF"}
11:55:46.796 RSL: POWER2 = OFF
11:55:46.845 RSL: RESULT = {"Sub1":"3.000"}
11:55:50.508 RSL: RESULT = {"POWER2":"ON"}
11:55:50.511 RSL: POWER2 = ON
11:55:50.605 RUL: POWER2#STATE=1 performs "backlog Counter1 3.000; sub1 1"
11:55:50.623 RSL: RESULT = {"Counter1":3}
11:55:50.721 RSL: RESULT = {"POWER2":"OFF"}
11:55:50.723 RSL: POWER2 = OFF
11:55:50.824 RSL: RESULT = {"Sub1":"2.000"}
11:55:53.617 RSL: RESULT = {"POWER2":"ON"}
11:55:53.619 RSL: POWER2 = ON
11:55:53.708 RUL: POWER2#STATE=1 performs "backlog Counter1 2.000; sub1 1"
11:55:53.725 RSL: RESULT = {"Counter1":2}
11:55:53.831 RSL: RESULT = {"POWER2":"OFF"}
11:55:53.834 RSL: POWER2 = OFF
11:55:53.926 RSL: RESULT = {"Sub1":"1.000"}
Klicke ich nach einem "+" auf "-" geht der Counter erst um ein hoch, bevor er dann anfängt runter zu zählen.
Klicke ich von "-" auf "+" geht der Counter erst um eins nach unten, bevor er anfängt hoch zu zählen.
Hat jemand eine Idee, warum der Zähler und die Variable bei Wechsel von "+" auf "-" um einen Klick verschoben reagieren?