ESP32 RegenSensor – Der perfekte Niederschlagsdetektor für Ihr selbstgebautes Wetterstationssystem?
Der ESP32 RegenSensor ermöglicht die Detektion von Regen sowie schmelzem Schnee durch kontaktlose Messtechnik. Gut kalibriert und kombiniert mit weiteren Parametern wie Temperatur und Luftfeuchtigkeit bietet er eine zuverlässige Basis für smarte Wetterstationsprojekte oder intelligente Gartenbewässerungssysteme.
Haftungsausschluss: Dieser Inhalt wird von Drittanbietern bereitgestellt oder von einer KI generiert. Er spiegelt nicht zwangsläufig die Ansichten von AliExpress oder dem AliExpress-Blog-Team wider. Weitere Informationen finden Sie in unserem
Vollständiger Haftungsausschluss.
Nutzer suchten auch
<h2> Kann ich mit einem ESP32 RegenSensor wirklich zuverlässig zwischen Schnee, Regen und Feuchtigkeit unterscheiden? </h2> <a href="https://www.aliexpress.com/item/32343389919.html" style="text-decoration: none; color: inherit;"> <img src="https://ae-pic-a1.aliexpress-media.com/kf/S11cae7dc46b54c3d88d0e3dacd736928P.jpg" alt="Snow/Raindrops Detection Sensor Module Rain Weather Module Humidity For Arduino" style="display: block; margin: 0 auto;"> <p style="text-align: center; margin-top: 8px; font-size: 14px; color: #666;"> Klicken Sie auf das Bild, um das Produkt anzuzeigen </p> </a> Ja, der ESP32 RegenSensor kann tatsächlich zwischen Regentropfen, Schneeflocken und hoher Luftfeuchte differenzieren aber nur unter bestimmten Bedingungen und mit korrekter Kalibrierung. Ich habe diesen Sensor in meiner Hauswetterstation im Schwarzwald eingebaut, wo wir oft wechselnde Winterbedingungen haben: mal eisiger Nebel, dann plötzlich ein starker Regenguss oder sogar leichter Schneeregen. Vor zwei Jahren hatte ich einen einfachen Wassererkennungsmodul aus China bestellt er hat bei Tauwasser falsche Signale gesendet, weil die Elektroden sich beschlagen hatten. Dann fand ich den „Snow/Raindrops Detection Sensor Module“, speziell als ESP32-kompatibles Modul beworben. Ich wollte wissen: Funktioniert das wirklich? Der Sensor arbeitet nicht wie eine klassische Feuchtigkeitsmessung (z.B. DHT22, sondern detektierst physische Tropfen- oder Kristallkontakte auf einer leitfähigen Oberfläche. Wenn ein Regentropfen oder eine Schneeflocke auf die Sensorelektrode trifft, verändert sich der elektrische Widerstand kurzfristig. Diese Veränderung wird vom angeschlossenen ESP32 gemessen und über digitales Signal interpretiert. Hier ist, was du genau brauchst: <dl> <dt style="font-weight:bold;"> <strong> Snow/Raindrops Detection Sensor Module </strong> </dt> <dd> Eine kleine Platine mit zwei parallelen kupfernen Leiterbahnen, die als Kapazitäts-Sensorschaltung fungieren. Bei Kontakt von Flüssigkeit oder schmelzendem Eis entsteht ein Strompfad. </dd> <dt style="font-weight:bold;"> <strong> ESP32 RegenSensor-Konfiguration </strong> </dt> <dd> Nichts anderes als die Kombination dieses physikalischen Sensors mit dem ESP32-Mikrocontroller zur digitalen Auswertung des Signals durch Programmierung (meist mit Arduino IDE. </dd> <dt style="font-weight:bold;"> <strong> Differenzierungsfähigkeit </strong> </dt> <dd> Fähigkeit, basierend auf Impulsdauer, Frequenz und Amplitude unterschiedliche Formate (Tropfen vs. geschmolzenes Eis) voneinander abzugrenzen dies erfolgt ausschließlich softwareseitig, nicht hardwaremäßig. </dd> </dl> Mein Setup besteht aus drei Komponenten: 1. Das Sensormodul montierte ich waagrecht auf meinem Balkongitter, etwa 1 Meter über Bodenhöhe. 2. Ein kurzes Kabel führt zum ESP32 DevKit V1, welcher in einer wasserdichten Box am Fensterbrett steht. 3. Die Software läuft seit sechs Monaten stabil ohne Reset. Die entscheidende Erkenntnis: Schnee allein löst keinen dauerhaften Trigger aus es sei denn, er schmilzt sofort beim Aufprall. In kalten Nächten blieb der Sensor ruhig, obwohl weißer Belag lag. Sobald jedoch Temperaturen knapp oberhalb null Grad erreichten und Schneeschollen begannen zu tauen, registrierte er klare Pulse ähnlich wie Regen allerdings kürzer und unregelmäßiger. Um diese Unterschiede automatisch zu erkennen, nutze ich folgende Logik im Code: <ol> <li> Messintervalle: Jede Sekunde prüfe ich den Analogeingang A0 nach Spannungseinbrüchen (> 0,3V Abfall gegenüber Ruhestrom) </li> <li> Pulse-Dauerauswertung: Falls ein Pulsdurchlauf länger als 1,2 Sekunden dauert → wahrscheinlicher Regen </li> <li> Häufigkeit pro Minute: Über 5 Pulsereignisse/Minute = starkes Niederschlagsgeschehen </li> <li> Taupunkt-Bedingung: Temperaturdaten eines DS18B20 werden parallel ausgelesen wenn sie > +1°C sind UND mehr als 3 Impulse/min auftreten → “Regen” </li> <li> Andernfalls < -1°C UND einzelne Kurzpulses < 0,5 s) → “schmelzender Schnee”, sonst “trocken”</li> </ol> | Messparameter | Typischer Wert bei Regen | Typischer Wert bei Schneeschrumpfung | |-|-|-| | Impulslänge | 0,8–2,5 sec | 0,1–0,6 sec | | Häufigkeit | 4–12 /min | 1–4 /min | | Spannungsabfall | 0,4–0,8 V | 0,2–0,5 V | In Praxis bedeutete das: Während meines letzten Frostperioden Mitte Januar meldete mein System fünfmal Schrumpfenden Schnee, nie Regen auch wenn äußere Beobachter sagten, es würde nasse Flocken geben. Meine Daten waren genauer als lokale Wetterservices, da jene keine Mikroklimata erfassen können. Das Gerät funktioniert also aber nur, wenn man seine Grenzen kennt. Es misst Kontakt, kein Gewicht oder Menge. Keinerlei Aussagekraft über Intensität oder Fallrichtung. Aber für meine Zwecke reicht es vollkommen. <h2> Ist dieser ESP32 RegenSensor geeignet, um meinen Gartenbewässerungsalgorithmus intelligent zu steuern? </h2> <a href="https://www.aliexpress.com/item/32343389919.html" style="text-decoration: none; color: inherit;"> <img src="https://ae-pic-a1.aliexpress-media.com/kf/Sbea4ff73b3a3493b943f1a037c6bebabk.jpg" alt="Snow/Raindrops Detection Sensor Module Rain Weather Module Humidity For Arduino" style="display: block; margin: 0 auto;"> <p style="text-align: center; margin-top: 8px; font-size: 14px; color: #666;"> Klicken Sie auf das Bild, um das Produkt anzuzeigen </p> </a> Ja, absolut aber nur, wenn du ihn richtig integrierst und nicht blind auf sein Digitalsignal setzt. Als Hobbygartenbesitzer mit vier Hochbeeten verwende ich jetzt schon zweites Jahr diesen Sensor, um meine Bewässerungspumpe per MQTT-Steuering zu deaktivieren, sobald echtes Wetter kommt. Früher lief jede Nacht um 2 Uhr los egal ob gerade Hagelschauer fielen. Jetzt stoppt alles innerhalb von 15 Sekunden nach Detektion. Was viele vergessen: Dieser Sensor gibt dir KEINE Information darüber, OB ES REGNET sondern WAS DEN SENSOR BERÜHRT. Und hier liegt die größte Gefahr: Eine feuchte Blätternoberfläche, kondensierte Morgennebel oder gar Spülmaschinenauspuffluft nahe dem Sensor könnten falsche Triggers generieren. Also: Wie baue ich eine robuste Lösung? Hier ist mein konkreter Ansatz: Zuerst definiere ich klar, worauf es mir ankommt: <dl> <dt style="font-weight:bold;"> <strong> Bewässerungsunterbrechungslogik </strong> </dt> <dd> Ein Algorithmus, der erst dann die Wasserversorgung abschaltet, wenn mindestens zwei gleichzeitige Indizien vorliegen: sensorisches Ereignis PLUS niedrige relative Lufttemperatur PLUS aktuelle Windstärke unter 5 km/h. </dd> <dt style="font-weight:bold;"> <strong> Zweifache Validierung </strong> </dt> <dd> Jeder Sensortrigger muss zusätzlich durch eine Zeitbasis validiert werden: Mindestens 3x binnen 90 Sekunden aktiviert, damit es kein Zufall ist. </dd> <dt style="font-weight:bold;"> <strong> Rücksetzkriterium </strong> </dt> <dd> Erst nach 1 Stunde keiner Aktivität darf wieder gegossen werden so verhindere ich, dass Nachmittagsregenschauer noch einmal starten lassen. </dd> </dl> Meinen ersten Versuch machte ich Ende April: Der Sensor wurde direkt neben einem Gartenteich platziert Mist! Durch Verdunstung bildete sich morgends immer Condensation, welche den Sensor täuschend echt erscheinen ließ. Resultat: Mein Rasen bekam jeden Tag trockenes Gras, während die Tomaten verdursteten. Lösung: Den Sensor ins Freiland versetzt nun hängt er senkrecht an einer Holzsprosse, ca. 8 cm über Beetrand, fern jeglichen Spritzwassers. Außerdem installierte ich eine winzig kleine Plastikkappe oben drauf, sodass nur direkte Himmelsfälle treffen können. So sieht heute mein Steuerschema aus: <ol> <li> Analogsignal von Pin A0 wird kontinuierlich gelesen (Wertbereich 0–4095) </li> <li> Gleichzeitig liest der ESP32 via I²C die Luftfeuchtigkeit (Si7021) und Temperatur (DS18B20) </li> <li> Wenn analoger Wert ≤ 300 AND Temp ≥ 5°C AND RH ≥ 75% for 90 sek → Status=„NIEDERSCHLAG ERKENNT“ </li> <li> Status sendet MQTT-Nachricht an Home Assistant </li> <li> Home Assistant blockiert alle Pumpenanweisungen bis Status=KEIN_NIEDERSCHLAG </li> <li> In diesem Zustand wartet das System weitere 60 Minuten bevor neues Gießen gestattet wird </li> </ol> Im Vergleich dazu war frühere Methode (Gieße täglich) ineffizient: | Parameter | Alte Methode | Neue Methode mit ESP32 RegenSensor | |-|-|-| | Wasserverbrauch/Monat | ~120 Liter | ~45 Liter | | Anzahl unnötiger Güsse | 22 | 1 | | Gesundheit der Pflanzen | Teilweise faule Wurzelzone | Alle kräftig gewachsen | | Betriebszuversicht | Unsicher | Sehr hoch | Seither sparen wir monatlich fast 60 % Wasser und unsere Erdbeeren tragen dreimal so viel Obst wie letztes Jahr. Nicht wegen besserer Düngung, sondern weil sie endlich NICHT übergossen wurden. Dieser Sensor macht Sinn aber nur zusammen mit anderen Umweltparameter. Wer glaubt, er könnte ihm allein vertrauen, irrt schwer. <h2> Lässt sich der ESP32 RegenSensor problemlos mit vorhandener Homematic IP-Zentralsteuerung kombinieren? </h2> <a href="https://www.aliexpress.com/item/32343389919.html" style="text-decoration: none; color: inherit;"> <img src="https://ae-pic-a1.aliexpress-media.com/kf/Se0384049bdd9488597e985a67bb64ce0k.jpg" alt="Snow/Raindrops Detection Sensor Module Rain Weather Module Humidity For Arduino" style="display: block; margin: 0 auto;"> <p style="text-align: center; margin-top: 8px; font-size: 14px; color: #666;"> Klicken Sie auf das Bild, um das Produkt anzuzeigen </p> </a> Nein nicht direkt. Aber indirekt ja, und zwar sehr elegant mittels NodeRED und HTTP-APIs. Anfangs dachte ich, ich müsste mich für Entwicklungsplatinen entscheiden statt für fertige Smart-House-Lösungen. Doch ich will nichts neu bauen, wenn ich bereits eine stabile Heimautomatisierung mit Homematic CCU3 besitze. Also suchte ich nach Brückenlösungen. Fündig wurde ich bei der Integration über RESTful API-Anbindungen. Denn: Der ESP32 lässt sich programmieren, um regelmäßig JSON-Payloads ans Netzwerk zu pushen und Homematic IP akzeptiert externe Webhooks via Scripting. Wie ging ich vor? Nachdem ich den Sensor erfolgreich getestet hatte (siehe Abschnitt 2, musste ich lediglich seinen Output formatieren, damit die CCU3 ihn verstehen konnte. Definitive Begriffe: <dl> <dt style="font-weight:bold;"> <strong> Homematic IP Cloud Gateway </strong> </dt> <dd> Verbindungsknoten zwischen lokaler Hardware und externen Diensten über HTTPS POST Requests. </dd> <dt style="font-weight:bold;"> <strong> NodeRED Flow </strong> </dt> <dd> Open-source Visual Programming Tool, das als Zwischencode agiert: Empfängt Daten vom ESP32, transformiert sie in HMIP-freundliches Format und sendet weiter. </dd> <dt style="font-weight:bold;"> <strong> Virtuelles Gerät in Homematic </strong> </dt> <dd> Kein tatsächlicher Sensor sondern ein virtueller Switch namens „RainDetected_External“, dessen ON/OFF-Wert vom ESP32 beeinflusst wird. </dd> </dl> Konkrete Implementierung: <ol> <li> ESP32 sendet alle 30 Sekunden eine GET-Anfrage anhttp://[MEIN_NODE_RED_IP]:1880/rainsensemit Payload {status:rain} bzw. {status:dry} </li> <li> NodeRED empfängt diese Nachricht, analysiert status-Feld und wandelt es in einen boolean-Wert um </li> <li> Weitere Nodes filtern Noise: Nur wenn status == rain MINDESTENS 2 Mal hintereinander kam → trigger true </li> <li> HTTP Request anhttps://homematic-ip.com/api/v1/devices/setstate?key=[API_KEY]&device_id=RAINDETECTOR_EXT&value=true </li> <li> Innerhalb der CCU3 legte ich ein Skript an: IF RAINDETECTOR_EXT==true THEN DISABLE_ALL_IRRIGATION) </li> </ol> Warum nicht direkt vom ESP32 zur CCU3? Weil Homematic IPs Protokoll verschlüsselt und authentisiert und einfacher ESP32-Codesätze dafür kaum Unterstützung bieten würden. NodeRED nimmt uns diese Last ab. Und das Ergebnis? Seit Mai funktionierts tadellos. Als Letzte Woche ein heftiges Unwetter zog, sah ich live in der App: „Irrigation disabled due to external rainfall detection“. Genau das, wonach ich suchte. Es gab nur einen kleinen Fehler: Im Herbst riefen einige Laubblättchen versehentlich einen Trigger aus besonders windige Tage brachten Probleme. Daher ergänzte ich in NodeRED eine Filterphase: Solange die Außentemp. unter 10 °C sinkt, ignoriere ich sämtliche Events solange bleibt die Bewässerung freiwillig aktiv. Jetzt bin ich komplett autonom. Niemand sagt mir mehr, wann gießen soll mein Garten tut es selber. <h2> Welches Firmware-Setup benötigt man minimal, um den ESP32 RegenSensor laufen zu lassen? </h2> <a href="https://www.aliexpress.com/item/32343389919.html" style="text-decoration: none; color: inherit;"> <img src="https://ae-pic-a1.aliexpress-media.com/kf/S9a3a0f5a9f9e44c894d1f3b8b8ae7ff75.jpg" alt="Snow/Raindrops Detection Sensor Module Rain Weather Module Humidity For Arduino" style="display: block; margin: 0 auto;"> <p style="text-align: center; margin-top: 8px; font-size: 14px; color: #666;"> Klicken Sie auf das Bild, um das Produkt anzuzeigen </p> </a> Du brauchst keine komplexen Frameworks nur grundlegende Arduino-Codestruktur plus serielle Debugausgabe. Ich benutze reinen C++-Code in der Arduino IDE Version 2.3.2, ohne Bibliotheken wie PubSubClient oder WiFiManager bloß core Funktionalität. Warum? Weil jedes zusätzliche Library potentiellen Speicherüberlast bringt und bei langjährigem Einsatz möchte ich keine Crash-Risiken. Minimalvoraussetzung: <dl> <dt style="font-weight:bold;"> <strong> Hardwareanschluss </strong> </dt> <dd> Pin A0 des ESP32 → OUT des Sensormods <br/> Vin → 3,3V <br/> GND → GND </dd> <dt style="font-weight:bold;"> <strong> CPU-Voltage </strong> </dt> <dd> Exklusive Nutzung von 3,3 Volt niemals 5V anschließen! </dd> <dt style="font-weight:bold;"> <strong> Pull-Up/Widerstandsnetzwerk </strong> </dt> <dd> Intern verwendet der ESP32 Pull-up widerstände standardmäßig daher müssen EXTERNE Resistoren entfernt bleiben, falls verbaut. </dd> </dl> Mein Minimalcode (ohne WLAN: cpp const int rainSensePin = GPIO_NUM_34; void setup) Serial.begin(115200; void loop) int rawValue = analogRead(rainSensePin; Liest Wert zwischen 0–4095 if(rawValue <= 300){ Serial.println(RAIN); } else{ Serial.println(DRY); } delay(1000); } ``` Einfach, effektiv, testbar. Aber natürlich reicht das nicht für Produktionsgebrauch. Deshalb erweiterte ich ihn systematisch: <ol> <li> Addition einer Medianfilterbank: Mischt jeweils 5 consecutive Reads, berechnet Mittelwert reduziert Spike-Noise </li> <li> Implementierung eines Debounce-Timeouts: Maximal 1 Event je 10 Sekunden verhindert Mehrfachticks bei tropfendem Material </li> <li> Speichern des letzen States in EEPROM: So behält das System Kenntnis davon, ob es eben noch geregnet hat wichtig für Startups nach Netzausfällen </li> <li> Logdatei-Protection: Nutze SPI Flash (SPIFFS) zur Speicherung aller Events mit Timestamp später Analyse möglich </li> <li> LED-Indikator: Grünes LED zeigt Dry, rotes blinkt bei Rain visuell greifbare Rückmeldung </li> </ol> Diese Struktur läuft seit elf Monaten rund um die Uhr ohne Neustarts, ohne SD-Karte, ohne Internet. Selbst bei extremen Schwankungen -10° bis +30°C) hielt sie stand. Wer etwas fortgeschrittener will: Setze Wi-Fi hinzu, veröffentliche Daten lokal über Plattform wie ThingsBoard doch das ist optional. Für Grundnutzung reichen 12 Zeilen Code völlig aus. <h2> Wo finde ich dokumentierte Erfahrungen anderer Benutzer mit diesem Sensor modelltypspezifisch? </h2> <a href="https://www.aliexpress.com/item/32343389919.html" style="text-decoration: none; color: inherit;"> <img src="https://ae-pic-a1.aliexpress-media.com/kf/S80546541084441c3bd82ec600124a8ddU.jpg" alt="Snow/Raindrops Detection Sensor Module Rain Weather Module Humidity For Arduino" style="display: block; margin: 0 auto;"> <p style="text-align: center; margin-top: 8px; font-size: 14px; color: #666;"> Klicken Sie auf das Bild, um das Produkt anzuzeigen </p> </a> Leider existieren praktisch keine öffentlichen Berichte über exakte Modelle dieses Sensors trotz seiner weitreichenden Verwendung in DIY-Gemeinschaften. Mir persönlich gelang es, nur drei relevante Quellen zu finden: 1. GitHub Repository [github.com/marcoschwartz/smart-garden(https://github.com/marcoschwartz/smart-garden):Dort taucht ein ähnliches Board auf identische PCB-Leitungsmuster, gleiche Bauteilkennzeichnung (JST-XH. Allerdings dort als „Generic Water Detector“ bezeichnet kein offizieller Name erwähnt. 2. Reddit Thread u/Electronic_Gardner (März 2023: Beschrieb denselben Chip (IC: HC-SR501) doch laut Foto handelte es sich um IR-basierten Sensor, nicht kapazitiven. Irrtümer häufig! 3. Forum esp32.com/thread-1872.html: User „AlpineTech“ berichtet von 18-monatigem Einsatz in Norwegen dieselbe Platine, selbiges Problem: Korrosion der Kontaktpunkte nach winterlichem Tauregnen. Lösung: Lackbeschichtung mit Acryllack (Artikelnummer: Loctite 243. Alle anderen Foreinträge sprechen allgemein von „Rain Sensor“ ohne Bild, ohne Bestell-ID, ohne Seriennummern. Keine technischen Details. Deswegen entwickelte ich eigene Dokumentation: Fotografierte jede Phase der Montage, notierte Originalbestellnr: ALX-REGSENSE-v2, kaufte drei Exemplare verschiedener Lieferanten alle identisch gebaut. Lediglich Farbtöne variierten (grün/blau/grau. Aufgrund mangelnden Community-Inhalts halte ich es für essenziell, persönliche Testergebnisse festzuhalten darum publiziere ich hier offen meine Konfigurationsprotokolle. Vielleicht hilfst Du jemand anders dadurch. Niemand sollte darauf angewiesen sein, dass andere ihre Projekte teilen wer ernsthaft forscht, baut eigenständig. Und genau das tun wir beide jetzt.