Tasmota Rule für Regensensor

  • Verwendet wird ein Wemos D1 mini mit Tasmota 8.1.0.4 mit #define USE_EXPRESSION #define SUPPORT_IF_STATEMENT

    und einem FC-37 Regensensor Modul.

    Das Rule soll folgendes machen:

    Ein Timer schaltet den Regensensor über Relay1 D8 jede Minute für 50 Milisekunden ein,

    mißt den Wert ANALOG_0,

    vergleicht ihn mit der letzten Messung und

    übermittelt ihn per MQTT an Garten/Regensensor/tele/SENSOR,

    wenn der Wert Analog=A0 sich gegenüber der letzten Messung verändert hat.

    Irgendwie bekommee ich das nicht so ganz hin,

    kann mit eine Rules- Experte da bitte mal helfen?

    Einmal editiert, zuletzt von Papiertiger (6. Februar 2020 um 12:50)

  • Sorry für späte Antwort

    status 8

    11:30:03 MQT: Garten/RegenAnalog/stat/STATUS8 = {"StatusSNS":{"Time":"2020-02-07T11:30:03","ANALOG":{"A0":402}}}

    11:32:17 MQT: Garten/Anemometer/stat/RESULT = {"Rule1":"ON","Once":"OFF","StopOnError":"OFF","Free":406,"Rules":"on tele-counter#c1>0 do publish cmnd/wind/counter1 %value% endon on tele-counter#c1>0 do counter1 0 endon"}

  • rule1 on Power1#state=1 do backlog power1 %value%; status 8; ruletimer1 0.1 endon on rules#timer=1 do power1 off endon

    OK, habe allerdings festgestellt, dass mit einem Sonoff Basic (Firmware 8.1.0) - und vermutlich anderen Sonoff-Geräten - das Zeitfenstter ruletimer1 0.1 nicht funktioniert, sondern der Wert mindestens 1 sein muss.

  • vielleicht kann mir jemand hier weiter helfen.

    bin da komplett neu drin in der tasmota und rules welt und nun bereits tagelang gelesen.

    jetzt geht es an eingemachte und da hakt es schon recht schnell

    und zwar haben ich am WemosD1 mini A0 einen Wert anliegen, welche ich mittels einer rule verarbeiten möchte

    sprich, wenn dieser <777 ist, soll per mqtt der wert übermittelt werden.

    meine rules sehen wie folgt aus

    rule1 on ANALOG0<777 do stat/tele/Klingelspannung

    rule1 on ANALOG0<777 do status 10

    8:53:40.808 MQT: stat/Klingelspannung/RESULT = {"Rule1":"ON","Once":"OFF","StopOnError":"OFF","Length":43,"Free":468,"Rules":"on ANALOG0<777 do stat/tele/Klingelspannung"}

    19:12:08.397 MQT: stat/Klingelspannung/RESULT = {"Rule1":"ON","Once":"OFF","StopOnError":"OFF","Length":27,"Free":484,"Rules":"on ANALOG0<777 do status 10"}

    aber wenn ich am Input A0 den Wert verändere, geht leider keine Message (aktueller Wert) über MQTT raus...nur alle 5min, was ja vor eingestellt ist

    Danke schon mal

    Gruß Harald

    ...so...hatte mal Erfolg :)

    hier die Lösung

    rule on ANALOG#a0<777 do status 10 endon

    Solange der Wert<777 ist, wird per MQTT der Wert gesendet :)

    2 Mal editiert, zuletzt von Userability (30. Januar 2021 um 19:21)