Bei buienradar gab es das letzten mal, so in der Art:
defmod RegenGestern DOIF ([23:59:59])\
(setreading $SELF rain [RegenHeute:rain]) ##copy the value of today and keep it as our own value\
(setreading RegenHeute rain 0) ## set the rain value of today to 0 and start to count from there again
attr RegenGestern alias Regen Gestern 🌧
attr RegenGestern do always
attr RegenGestern event-on-update-reading .*
attr RegenGestern room Wetter
attr RegenGestern stateFormat { round(ReadingsNum($name, "rain", 0), 2)." l/m²"}
Danke für den Denkanstoß.
Läßt sich leider nicht so einfach hier umsetzen.
setreading Strom StromverbrauchTag 0
funktioniert leider nicht. Das Reading wird nicht genullt.
Der Wert wird ja vom ESP gezogen, ergo müsste dieser auf dem ESP genullt werden.
Dies wäre mit einem
define ESP_reboot at *00:00:00 { system "wget -O /dev/null -q 192.168.2.70/?cmd=ResetPulseCounter";; }
machbar.
Dies geschieht dann aber eh um 0 Uhr bei mir. (habe den reset Befehl geändert, da der zumindest bei meinem ESP kein "Nullen" der Werte bringt.
Somit könnte doch normal auch der Code
setreading Strom StromverbrauchTag 0
wegfallen?
Allerdings bekomme ich bei
defmod StromGestern DOIF ([23:59:59])\(setreading $SELF StromVortag [StromverbrauchTag:StromVortag])
in FHEM einen Fehler:
StromGestern DOIF: expected DOELSEIF or DOELSE: \(setreading StromGestern StromVortag [StromverbrauchTag:StromVortag])
Und da bin ich dann zur Zeit wieder mit meinem Latein am Ende

Oder einfach nur DOIF mit DOELSEIF ersetzen?
Allerdings aus der Übersetzung doch was ganz anderes oder?
DOIF = Mache - Wenn
DOELSEIF = Mache anders wenn
Ich werde das auf meine alten Tage nicht mehr in den Schädel bekommen...