Hallo zusammen,
ich bin der Neue, sowohl hier als auch im Thema generell mit ESPHome. Mein Name ist Peter, frisch in der Rente und hab nun endlich Zeit einen Sensor für einen möglichen Wasseralarm (Schlagregen) im Keller zu basteln.
Als Basis hab ich EspHome innerhalb des HomeAssistants auf einem Raspi4 laufen. Nun habe ich schon erfolgreich einen Temperatursensor mit ESP8266 Wemos D1 Mini und einem oneWire Sensor DS18B20 integriert, welcher hervorragend läuft!
Mein Wassersensor verwendet auch einen ESP8266 mit Wemos D1 Mini und hat
einen Taster an GPIO14 und eine LED an GPIO15.
Der Taster dient der Deaktivierung des Alarms bei Bodenreinigung (keine Alarmauslösung durch Putzwasser an den Sensoren).
Der Taster lässt aktuell die LED leuchten, aber nur solange die Taste gedrückt wird.
Mein Ziel ist aber, dass nach Tastendruck sagen wir mal die LED 60 Minuten lang leuchtet. Gleichzeitig soll der Taster auch einen Status “off” setzen, der dann von der Automation erkannt wird.
Aktuell löst mein Wassersensor brav aus, sofern keine Deaktivierung vorliegt (nur eben solange die Taste gedrückt wird). Per Automation wird bei Auslösung eines Wasseralarms eine Telegram Nachricht versendet.
Das funktioniert schon alles soweit, nur steh ich auf dem Schlauch wie ich das mit dem ablaufenden Timer von sagen wir 60 Minuten machen soll. Finde dazu keine Beispiele im Netz oder der Anleitung, aber auch weil ich nicht weis nach welcher Begrifflichkeit ich suchen soll (Timer brachte mich nicht weiter).
Hier mal mein Code von Taster und LED. Bei GPIO13 und 5 habe ich die beiden Wassersensoren (offene Kabelenden die auf Kurzschluss durch Wasser warten)
binary_sensor:
- platform: gpio
pin:
number: GPIO14
inverted: True
mode:
input: True
pullup: True
name: "taster deaktivierung Heizungsraum"
on_press:
then:
- light.turn_on: "led_gpio15"
on_release:
then:
- light.turn_off: "led_gpio15"
- platform: gpio
pin:
number: GPIO13
inverted: True
mode:
input: True
pullup: True
name: "Wasseralarm Heizungsraum"
- platform: gpio
pin:
number: GPIO5
inverted: True
mode:
input: True
pullup: True
name: "Wasseralarm Kellerflur"
light:
- platform: status_led
pin: GPIO15
id: "led_gpio15"
name: "Alarm deaktiviert"
VG und schon mal Danke im Voraus
Peter