Hallo,
ein Wemos D1 mini, mit Tasmota DE 14.6.0 geflasht, soll einen Bodenfeuchtesensor auslesen.
Ist es z.B. mit rules möglich, dass über mqtt ein Mittelwert aus mehreren Messungen gesendet wird, anstatt dass jeder Wert gesendet wird und ich im IOBroker den Mittelwert bilde?
Könnte man diesen Wert dann noch in % umrechnen? Ich hab da was gefunden - SCALE1.
Mein Topic ist: "Zitronenbaum/Bodenfeuchte/" in %.
Vielen Dank schon mal!
In Tasmota den Messwert vor dem MQTT-publish ändern...
-
ansim -
23. April 2025 um 17:46 -
Erledigt
-
-
-
- Offizieller Beitrag
Moin.
Ist im Prinzip möglich, indem Du die Werte in einer Variablen addierst, einen counter mit hochzählst und dann bei Counterwert X den Variablenwert durch diesen teilst.
Die Umrechnung in % geht auch ...
-
... indem Du die Werte in einer Variablen addierst, einen counter mit hochzählst und dann bei Counterwert X den Variablenwert durch diesen teilst.
Naja - das ist mir ja schon klar... Aber: Es soll ja erst über MQTT gesendet werden, wenn dieser Vorgang abgeschlossen ist.
Normalerweise werden die Messwerte an den Server gesendet wenn 300ms vergangen sind (oder was da eingestellt ist).
Ich muss demnach den Wert der Variablen in der MQTT-Nachricht verändern bevor diese abgeschickt wird. Richtig?
Ich kann aber nicht direkt in die VVariablen der Messwerte neue Daten schreiben - oder? Ist mit nicht gelungen.
Kann ich einen Trigger auf die Variable mit dem berechneten Mittelwert setzen? D.h. immer wenn die aktualisiert ist, dann senden?
Ich danke schon mal für dein Hirnschmalz!!! -
- Offizieller Beitrag
Hi.
Wie schauen die Messwerte den im Log aus?
Das der jeweilge Werte über MQTT gesendet wird stört ja nicht. Was wir brauchen ist ein zusätzlicher Wert der den Mittelwert übermittelt, im Bsp genannt M10 (Mittelwert von 10 Messungen)
Mir stelle mir das dann als Rule so vor:
Codeon system init do backlog var1 0; var2 0; var3 0; endon on <MESSWERT> do backlog add1 %value%; var2 add 1 endon on var2#state>=10 do backlog scale3 %var1%,0,10,0,1; var1 0; var2 0 endon on var3#state do publish stat/<DEVICENAME>/M10 %value% endon
Um das dann in Prozent umzurechnen bräuchte man noch den 100% Wert.
scale<x> <MITTELWERTWERT>,0,<100%_WERT>,0,100
-
-
- Offizieller Beitrag
Das geht so:
on analog#a0>WERTX do IRGENDWAS endon
bzw.
on analog#a0 do IRGENDWAS endon
Was es beim Analog schwierig machen wird ist das der Wert vermutlich viel zu oft ändert und schwankt.
Da muss man evtl mit einer Wertematrix arbeiten. Um sich das zu verdeutlichen, kannst Du dir das hier mal ansehen:
BeitragRE: Mit Folientastatur (Matrix) Tasmota Geräte schalten
Nachdem ich da zufällig beim freundlichen Chinesen eine 4x4 Folientatstatur für unter 2€ gesehen hab, hab ich mir das Teil mal bestellt mit dem Hintergrund das mit Tasmota an den Start zu bekommen.
Die Idee war die Tastenmatrix über Widerstände abzufragen und über den Analog Eingang auszuwerten. (Siehe Schaltbild und Foto)
Dazu muss im Tasmota -Binarie die VCC Auswertung auskommentiert werden:
#ifdef USE_ADC_VCC
#undef USE_ADC_VCC
Damit werden am GPIO17 die ADC -Input Varianten auswählbar,…HoerMirAuf27. April 2022 um 09:46 -
Vielen Dank, ich glaube ich habe das meiste verstanden...
Ich probiere es erstmal ohne Wertematrix.
Die Regel sieht nun so aus:
rule1
on system init do backlog var1 0; var2 0; var3 0; endon
on analog#a0 do do backlog add1 %value%; var2 add 1 endon
on var2#state>=10 do backlog scale3 %var1%,0,10,0,1; var1 0; var2 0 endon
on var3#state do publish stat/Zitronenbaum/Bodenfeuchte/M10 %value% endonAuf der Konsole kommt aber folgendes in schöner Wiederholung:
11:51:10.443 RUL: ANALOG#A0 performs 'do backlog add1 738; var2 add 1'
11:51:10.450 MQT: Zitronenbaum/Bodenfeuchte/RESULT = {"Command":"Unknown","Input":"DO backlog add1 738; var2 add 1"}
Das steht dann auch im IOBroker unter RESULT. M10 wird nicht angelegt.
Ich denke mal, ich hab da noch einen Fehler drin... - oder? -
- Offizieller Beitrag
Hi
du hast 2x "do" in deiner Rule:
on analog#a0 do do backlog add1 %value%; var2 add 1 endon
ich hab allerdings auch eine Schreibfehler in meinem Beispiel (var2 add1).
Nimm das mal:
Coderule1 on system init do backlog var1 0; var2 0; var3 0; endon on analog#a0 do backlog add1 %value%; add2 1 endon on var2#state>=10 do backlog scale3 %var1%,0,10,0,1; var1 0; var2 0 endon on var3#state do publish stat/Zitronenbaum/Bodenfeuchte/M10 %value% endon
Wie gesagt triggert die Rule recht viel ....
Man kann das auch mit einer Hysterese einschränken:
(In der var6 steht der Hysteresenwert +-5)
Coderule1 on system init do backlog var1 0; var2 0; var3 0; var4 0; var5 0; var6 5 endon on analog#a0>=%var4% do backlog add1 %value%; add2 1; var4 %value%; add4 %var6%; var5 %value%; sub5 %var6% endon on analog#a0<=%var5% do backlog add1 %value%; add2 1; var4 %value%; add4 %var6%; var5 %value%; sub5 %var6% endon on var2#state>=10 do backlog scale3 %var1%,0,10,0,1; var1 0; var2 0 endon on var3#state do publish stat/Zitronenbaum/Bodenfeuchte/M10 %value% endon
-
Sorry, leider muss man auch manchmal etwas anderes machen als Bodenfeuchte-Sensoren zu konfigurieren....
Ich habe im 1. Vorschlag das scale noch etwas angepasst:
scale3 %var1%,0,1000,0,100; jetzt kommen die M10-Werte wieder dreistellig.
Die Rule funktioniert sehr gut.
Mit dem Hysteresis-Vorschlag komme ich nicht so klar. +-5 bedeutet doch, dass nur Werte einbezogen werden, die sich um +-5 vom vorherigen Wert unterscheiden. Wahrscheinlich muss var4 auch noch Null gesetzt werden, der wird immer weiter hochgezählt.
Bis hierher vielen Dank für Deine Hilfe!!! Alleine hätte ich das nicht hinbekommen. -
- Offizieller Beitrag
Moin
Um Nachkommastellen usw. zu definieren, kann man auch CALCRES setzen. (Siehe Tasmota Commands)
Mit dem Hysteresis-Vorschlag komme ich nicht so klar. +-5 bedeutet doch, dass nur Werte einbezogen werden, die sich um +-5 vom vorherigen Wert
Ganz genau, damit wird nicht ganz so oft getriggert. Das hängt aber von der größe der Wertänderung und der Hysterese ab. Da muss man mit spielen. Ist die Hysterese zu groß wird zu wenig getriggert und ist sie zu niedrig, bringt sie nichts. Deshalb ist sie auch als Variable gesetzt [var6] umd das leichter anpassen zu können ohne die ganz Rule umzuschrieben.
Wahrscheinlich muss var4 auch noch Null gesetzt werden, der wird immer weiter hochgezählt.
Nach meinem Beispiel nicht. var 4 wird bei jedem triggern mit dem aktuellen triggerwert gefüttert [var4 %value%] und dann um den Hystereswert erhöht [add4 %var6%] ... dasselbe mit var5 nur das diese um den Triggerwert reduziert wird.
Um mehr zu sagen müsste man jetzt den Konsolenoutput sehen....
-
Ich habe mal das Log von der Konsole kopiert.
Erstens für Rule1 (Mittelwert). Das scheint in Ordnung zu sein.
Hier die Rule, so wie sie jetzt eingegeben ist:Coderule1 on system init do backlog var1 0; var2 0; var3 0; endon on analog#a0 do backlog add1 %value%; add2 1 endon on var2#state>=10 do backlog scale3 %var1%,0,10,0,1; var1 0; var2 0 endon on var3#state do publish /Bodenfeuchte/Zitronenbaum/M10 %value% endon
Hier das Log zu Rule1:
Code
Alles anzeigenrule1 on 11:32:32.394 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Rule1":{"State":"ON","Once":"OFF","StopOnError":"OFF","Length":259,"Free":252,"Rules":"on system init do backlog var1 0; var2 0; var3 0; endon on analog#a0 do backlog add1 %value%; add2 1 endon on var2#state>=10 do backlog scale3 %var1%,0,10,0,1; var1 0; var2 0 endon on var3#state do publish /Bodenfeuchte/Zitronenbaum/M10 %value% endon rule1 on"}} 11:32:32.394 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Rule1":{"State":"ON","Once":"OFF","StopOnError":"OFF","Length":259,"Free":252,"Rules":"on system init do backlog var1 0; var2 0; var3 0; endon on analog#a0 do backlog add1 %value%; add2 1 endon on var2#state>=10 do backlog scale3 %var1%,0,10,0,1; var1 0; var2 0 endon on var3#state do publish /Bodenfeuchte/Zitronenbaum/M10 %value% endon rule1 on"}} 11:32:32.387 CMD: rule1 on 11:32:32.394 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Rule1":{"State":"ON","Once":"OFF","StopOnError":"OFF","Length":259,"Free":252,"Rules":"on system init do backlog var1 0; var2 0; var3 0; endon on analog#a0 do backlog add1 %value%; add2 1 endon on var2#state>=10 do backlog scale3 %var1%,0,10,0,1; var1 0; var2 0 endon on var3#state do publish /Bodenfeuchte/Zitronenbaum/M10 %value% endon rule1 on"}} 11:32:32.595 RUL: ANALOG#A0 performs 'backlog add1 734; add2 1' 11:32:32.629 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"734.000"} 11:32:32.883 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"1.000"} 11:32:33.643 RUL: ANALOG#A0 performs 'backlog add1 738; add2 1' 11:32:33.661 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"1472.000"} 11:32:33.913 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"2.000"} 11:32:34.661 RUL: ANALOG#A0 performs 'backlog add1 734; add2 1' 11:32:34.677 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"2206.000"} 11:32:34.881 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"3.000"} 11:32:35.691 RUL: ANALOG#A0 performs 'backlog add1 738; add2 1' 11:32:35.709 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"2944.000"} 11:32:35.911 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"4.000"} 11:32:36.660 RUL: ANALOG#A0 performs 'backlog add1 734; add2 1' 11:32:36.677 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"3678.000"} 11:32:36.931 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"5.000"} 11:32:37.679 RUL: ANALOG#A0 performs 'backlog add1 734; add2 1' 11:32:37.698 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"4412.000"} 11:32:37.934 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"6.000"} 11:32:38.674 RUL: ANALOG#A0 performs 'backlog add1 738; add2 1' 11:32:38.692 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"5150.000"} 11:32:38.895 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"7.000"} 11:32:39.686 RUL: ANALOG#A0 performs 'backlog add1 738; add2 1' 11:32:39.703 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"5888.000"} 11:32:39.954 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"8.000"} 11:32:40.673 RUL: ANALOG#A0 performs 'backlog add1 738; add2 1' 11:32:40.689 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"6626.000"} 11:32:40.943 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"9.000"} 11:32:41.685 RUL: ANALOG#A0 performs 'backlog add1 738; add2 1' 11:32:41.704 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"7364.000"} 11:32:41.956 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"10.000"} 11:32:41.989 RUL: VAR2#STATE>=10 performs 'backlog scale3 7364.000,0,10,0,1; var1 0; var2 0' 11:32:42.000 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Scale3":"736.400"} 11:32:42.031 RUL: VAR3#STATE performs 'publish /Bodenfeuchte/Zitronenbaum/M10 736.400' 11:32:42.036 MQT: /Bodenfeuchte/Zitronenbaum/M10 = 736.400
Hier die Rule2:
Coderule2: on system init do backlog var1 0; var2 0; var3 0; var4 0; var5 0; var6 5 endon on analog#a0>=%var4% do backlog add1 %value%; add2 1; var4 %value%; add4 %var6%; var5 %value%; sub5 %var6% endon on analog#a0<=%var5% do backlog add1 %value%; add2 1; var4 %value%; add4 %var6%; var5 %value%; sub5 %var6% endon on var2#state>=10 do backlog scale3 %var1%,0,10,0,1; var1 0; var2 0 endon on var3#state do publish /Bodenfeuchte/Zitronenbaum/M10 %value% endon
Hier das Log zu Rule2:
Der größte Wert ist 729.
...und so kommt es im IOBroker an:
1799,2 ist größer als der größte Messwert.
Ich seh da leider nicht wo in Rule2 der Fehler steckt... -
Code
Alles anzeigen12:29:43.132 CMD: rule2 on 12:29:43.139 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Rule2":{"State":"ON","Once":"OFF","StopOnError":"OFF","Length":450,"Free":61,"Rules":"on system init do backlog var1 0; var2 0; var3 0; var4 0; var5 0; var6 5 endon on analog#a0>=%var4% do backlog add1 %value%; add2 1; var4 %value%; add4 %var6%; var5 %value%; sub5 %var6% endon on analog#a0<=%var5% do backlog add1 %value%; add2 1; var4 %value%; add4 %var6%; var5 %value%; sub5 %var6% endon on var2#state>=10 do backlog scale3 %var1%,0,10,0,1; var1 0; var2 0 endon on var3#state do publish /Bodenfeuchte/Zitronenbaum/M10 %value% endon"}} 12:29:43.379 RUL: ANALOG#A0>=%VAR4% performs 'backlog add1 492; add2 1; var4 492; add4 ; var5 492; sub5 ' 12:29:43.433 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"492.000"} 12:29:43.684 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"1.000"} 12:29:43.932 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"492"} 12:29:44.182 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"492"} 12:29:44.437 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"492"} 12:29:44.525 RUL: ANALOG#A0>=%VAR4% performs 'backlog add1 725; add2 1; var4 725; add4 ; var5 725; sub5 ' 12:29:44.543 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"492"} 12:29:44.756 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"1217.000"} 12:29:45.004 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"2.000"} 12:29:45.217 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"725"} 12:29:45.464 RUL: ANALOG#A0<=%VAR5% performs 'backlog add1 450; add2 1; var4 450; add4 ; var5 450; sub5 ' 12:29:45.483 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"725"} 12:29:45.735 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"725"} 12:29:45.945 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"725"} 12:29:46.201 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"1667.000"} 12:29:46.452 RUL: ANALOG#A0<=%VAR5% performs 'backlog add1 562; add2 1; var4 562; add4 ; var5 562; sub5 ' 12:29:46.470 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"3.000"} 12:29:46.722 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"450"} 12:29:46.968 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"450"} 12:29:47.221 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"450"} 12:29:47.470 RUL: ANALOG#A0<=%VAR5% performs 'backlog add1 401; add2 1; var4 401; add4 ; var5 401; sub5 ' 12:29:47.489 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"450"} 12:29:47.740 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"2229.000"} 12:29:47.991 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"4.000"} 12:29:48.183 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"562"} 12:29:48.399 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"562"} 12:29:48.629 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"562"} 12:29:48.875 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"562"} 12:29:49.136 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"2630.000"} 12:29:49.387 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"5.000"} 12:29:49.476 RUL: ANALOG#A0>=%VAR4% performs 'backlog add1 728; add2 1; var4 728; add4 ; var5 728; sub5 ' 12:29:49.495 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"401"} 12:29:49.749 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"401"} 12:29:49.947 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"401"} 12:29:50.196 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"401"} 12:29:50.444 RUL: ANALOG#A0>=%VAR4% performs 'backlog add1 733; add2 1; var4 733; add4 ; var5 733; sub5 ' 12:29:50.465 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"3358.000"} 12:29:50.664 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"6.000"} 12:29:50.893 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"728"} 12:29:51.094 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"728"} 12:29:51.295 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"728"} 12:29:51.467 RUL: ANALOG#A0<=%VAR5% performs 'backlog add1 571; add2 1; var4 571; add4 ; var5 571; sub5 ' 12:29:51.485 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"728"} 12:29:51.687 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"4091.000"} 12:29:51.939 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"7.000"} 12:29:52.137 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"733"} 12:29:52.388 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"733"} 12:29:52.466 RUL: ANALOG#A0<=%VAR5% performs 'backlog add1 727; add2 1; var4 727; add4 ; var5 727; sub5 ' 12:29:52.480 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"733"} 12:29:52.687 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"733"} 12:29:52.888 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"4662.000"} 12:29:53.139 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"8.000"} 12:29:53.390 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"571"} 12:29:53.483 RUL: ANALOG#A0<=%VAR5% performs 'backlog add1 374; add2 1; var4 374; add4 ; var5 374; sub5 ' 12:29:53.568 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"571"} 12:29:53.776 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"571"} 12:29:53.988 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"571"} 12:29:54.184 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"5389.000"} 12:29:54.436 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"9.000"} 12:29:54.524 RUL: ANALOG#A0>=%VAR4% performs 'backlog add1 727; add2 1; var4 727; add4 ; var5 727; sub5 ' 12:29:54.579 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"727"} 12:29:54.829 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"727"} 12:29:55.084 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"727"} 12:29:55.296 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"727"} 12:29:55.495 RUL: ANALOG#A0<=%VAR5% performs 'backlog add1 448; add2 1; var4 448; add4 ; var5 448; sub5 ' 12:29:55.516 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"5763.000"} 12:29:55.738 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"10.000"} 12:29:55.776 RUL: VAR2#STATE>=10 performs 'backlog scale3 5763.000,0,10,0,1; var1 0; var2 0' 12:29:55.788 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"374"} 12:29:56.004 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"374"} 12:29:56.209 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"374"} 12:29:56.461 RUL: ANALOG#A0>=%VAR4% performs 'backlog add1 395; add2 1; var4 395; add4 ; var5 395; sub5 ' 12:29:56.479 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"374"} 12:29:56.684 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"6490.000"} 12:29:56.934 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"11.000"} 12:29:56.977 RUL: VAR2#STATE>=10 performs 'backlog scale3 6490.000,0,10,0,1; var1 0; var2 0' 12:29:56.988 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"727"} 12:29:57.240 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"727"} 12:29:57.266 MQT: Bodenfeuchte/Zitronenbaum/STATE = {"Time":"2025-05-03T12:29:57","Uptime":"0T00:00:40","UptimeSec":40,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":43,"MqttCount":1,"Wifi":{"AP":1,"SSId":"Simon","BSSId":"5C:49:79:32:0D:D5","Channel":1,"Mode":"11n","RSSI":84,"Signal":-58,"LinkCount":1,"Downtime":"0T00:00:04"}} 12:29:57.332 MQT: Bodenfeuchte/Zitronenbaum/SENSOR = {"Time":"2025-05-03T12:29:57","ANALOG":{"A0":392}} 12:29:57.487 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"727"} 12:29:57.737 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"727"} 12:29:57.987 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"6938.000"} 12:29:58.232 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"12.000"} 12:29:58.272 RUL: VAR2#STATE>=10 performs 'backlog scale3 6938.000,0,10,0,1; var1 0; var2 0' 12:29:58.286 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"448"} 12:29:58.371 RUL: ANALOG#A0>=%VAR4% performs 'backlog add1 728; add2 1; var4 728; add4 ; var5 728; sub5 ' 12:29:58.426 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"448"} 12:29:58.678 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"448"} 12:29:58.929 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"448"} 12:29:59.187 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Scale3":"576.300"} 12:29:59.230 RUL: VAR3#STATE performs 'publish /Bodenfeuchte/Zitronenbaum/M10 576.300' 12:29:59.236 MQT: /Bodenfeuchte/Zitronenbaum/M10 = 576.300 12:29:59.449 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var1":"0"} 12:29:59.538 RUL: ANALOG#A0>=%VAR4% performs 'backlog add1 624; add2 1; var4 624; add4 ; var5 624; sub5 ' 12:29:59.593 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var2":"0"} 12:29:59.845 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add1":"395.000"} 12:30:00.071 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add2":"1.000"} 12:30:00.294 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var4":"395"} 12:30:00.452 RUL: ANALOG#A0>=%VAR4% performs 'backlog add1 517; add2 1; var4 517; add4 ; var5 517; sub5 ' 12:30:00.471 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Add4":"395"} 12:30:00.724 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var5":"395"} 12:30:01.055 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Sub5":"395"} 12:30:01.304 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Scale3":"649.000"} 12:30:01.347 RUL: VAR3#STATE performs 'publish /Bodenfeuchte/Zitronenbaum/M10 649.000' 12:30:01.354 MQT: /Bodenfeuchte/Zitronenbaum/M10 = 649.000 12:30:01.448 RUL: ANALOG#A0>=%VAR4% performs 'backlog add1 727; add2 1; var4 727; add4 ; var5 727; sub5 ' 12:30:01.469 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var1":"0"} 12:30:01.722 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Var2":"0"} 12:30:01.925 MQT: Bodenfeuchte/Zitronenbaum/RESULT = {"Scale3":"693.800"} 12:30:01.967 RUL: VAR3#STATE performs 'publish /Bodenfeuchte/Zitronenbaum/M10 693.800' 12:30:01.974 MQT: /Bodenfeuchte/Zitronenbaum/M10 = 693.800
-
Vielleicht hilft das hier weiter
-
Vielleicht hilft das hier weiter
Vielen Dank für den Hinweis!
1% Änderung bei 1024 (max. Anzeige) wären 102. Das ist ja schon ziemlich grob.
Eigentlich muss es ja auch mit der Rule funktionieren.