DIY Bewässerungscomputer mit ESP8266 & Shelly (Low Cost!?)

Moin zusammen,
was macht man(n) wenn man im Winter Zeit hat und seit 2 Monaten die AZ-Delivery Überraschungsbox rumstehen hat? In meinem Fall, spielen und testen :smiley:

Hintergrund für mein Interesse einen Bewässerungscomputer zu “programmieren” kommt daher, dass ich mit der Hunter API und der Steuerung im HA nicht zufrieden bin. Das Problem war das ich es nie geschaft habe, dem Hunter HC-12 (mein eigentlicher Bewässerungscomputer) die im HA eingestellten Timer so zu übermitteln, dass die Bewässerung wirklich die eingestellten 30min lief. Der HC-12 hat einfach das bekannte Programm gestartet und wollte 45min laufen, damit konnte HA aber nicht… und hat nach kurzer Zeit das Ventil geschlossen. Warum… keine Ahnung! War mir dann irgendwann auch egal. Ich muss dazu sagen, dass ich kein Softwareentwickler bin und damit auch nie wirklich etwas zu tun hatte… aber KI sei dank, war das nicht (das grüßte) Problem.
Ich bin über einen Ausfall eines meiner Homematic Aktoren auf Shelly gestoßen, von Shelly kam ich auf Home Assistant, von Home Assistant auf ESP32 und so weiter… da meine Shelly´s hervorrangend funktionieren, und es auch einen Anschlußplan für 24VAC Ventile bei Shelly gibt, war die Idee schnell geboren das einfach mal mit Shelly zu testen.

Zur Hardware:
1x D1-Mini (wird es final) in einer ArduiBox ESP für die Hutschiene
1x KY-040 Drehwinkelgeber
1x 1,3 Zoll OLED I2C 128 x 64 Display
1x 24VAC Trafo für die Hutschiene
7x Shelly 1 Plus

Zugegeben: ins besondere mit 7x Shelly ist das nicht wirklich eine Low Cost Version eines Bewässerungscomputers, aber man könnte es ja auch mit entsprechenden Relais (von Ali & Co.) umsetzten. Aber ich mag nun mal meine Shelly´s.

Die Kosten halten sich, im Vergleich zu einem “richtigen” Bewässerungscomputer im Rahmen. Günstiger würde es noch mit Relais funktionieren die 24VAC schalten können, aber das fühle ich in meinem Fall nicht so richtig.

Warum überhaupt den ESP, wenn das ja auch alles über HA und Shelly alleine gehen würde. 1., das Zeug war eh da und wollte verwendet werden und 2., funktioniert der ESP und die Steuerung der Bewässerung auch ohne HA und 3. finde ich es charmant die Ventile im Sommer auch ohne Handy steuern zu können (meine Frau übrigens auch)

ESP8266 Pin Belegung:
→ KY-040
CLK → D6
DT → D5
SW → D7
“+” → 3V
GND → G

→ OLED Display
GND → G
VCC → 3V
SCL → D1
SDA → D2

Programmiert habe ich den ESP8266 mit Hilfe von KI (ChatGPT und Google AI Studio). Ziel war es, einfach und schnell die zu bewässernde Zone, bei mir sind es 7, über den Drehwinkelgeber auswählen zu können, mit einem Druck auf den Drehwinkelgeber dies zu bestätigen und zur Zeitauswahl zu kommen. Mittels drehen die Zeit einzustellen und ein erneuter Druck bestätigt die Zeit, löst das Ventil bzw. den Shelly aus und schließt das Ventil nach Ablauf der Zeit. Ein längerer Druck auf den Drehwinkelgeber führt zu einem sofortigem Abbruch des Programms, also schließ das Ventil und springt wieder in die erste Ansicht zurück in dem man die Zone wählen kann.
Selbst eine Art “Screensaver” ist verbaut, um bei dem OLED Display das Einbrennen zu verhinden :wink:
Die Shelly´s sind im Code so eingebunden, dass lediglich die IP´s des jeweiligen Shelly in die Liste eintrage und gut ist. Der Aufruf von “/relay/0?turn=ON” (oder OFF) findet weiter unten im Code statt.
image

Nach einigem hin- und her funktioniert das echt prima, auch wenn ich aktuell nur Trockenübungen durchführen kann, da sich die Bewässerung noch ohne Wasser im Winterschlaf befindet.

Sollte jemand Interesse an dem Arduino IDE Code, also an der INO-Datei haben, schreibt mir gerne ne PN und ich lasse euch die Datei gerne zukommen.

Lass mich gerne wissen was ihr davon haltet, oder was ihr anders gemacht hättet.

Beste Grüße,
P.

Finde ich sehr cool! Hast du den anderen Thread bezüglich GardenControl gesehen?

Jau, finde ich sehr nice! Coole Sache wenn jemand solche Möglichkeiten hat. Nachbauen wird da aber nicht so einfach :smiley:

Du könntest deine Shelly Farm durch einen GardenController ersetzen und ihn über dein Input Device steuern.
Was auch spannend wäre, für dein Input Device einen ESP32 und Tasmota zu verwenden … und den Status im HA Dashboard zu visualisieren.

Warum selber programmieren, wenn es von ESPHome bereits eine “Sprinkler Controller” gibt, den man sich nach Belieben anpassen und beliebig gross erstellen kann ?