- • ESP32-C3
- • ESPHome
- • Home Assistant
Mit einem TL-136 Drucksensor (4-20 mA), einem ADS1115 16-Bit-ADC und **
ESPHome ESPHomeFramework zur Konfiguration von ESP32/ESP8266-Mikrocontrollern, die sich dann automatisch in Home Assistant integrieren. Ideal für DIY-Sensoren und AktorenMehr dazu → ** misst du den Wasserstand deiner Zisterne, Regentonne oder deines IBC-Containers auf **±1 mm genau** — für unter 50 €. Diese Anleitung zeigt den kompletten Aufbau: von der Hardware über den [ESP32](https://amzn.to/4vesHLe "ESP32 Boards bei Amazon")-C3-Code bis zur Kalibrierung.Regenwasser ist mittlerweile ein kostbares Gut — wer eine eigene Zisterne oder Regentonne hat, will wissen, wie viel Wasser darin ist. Eine zuverlässige Füllstandsanzeige für die Zisterne ist daher für viele der erste Schritt zur smarten Bewässerung. Im letzten Jahr haben wir eine 5.000 Liter Regenwasserzisterne von Rewatec bekommen. So etwas extra und nachträglich nur wegen des Regenwassers einbauen zu lassen, dürfte sich eher selten lohnen, da Aufwand und Kosten beträchtlich sind.
SONOFF Zigbee 3.0 USB Dongle Plus
- Vorgeflasht mit Z-Stack 3.x.0-Koordinator-Firmware
- Basis auf TI CC2652P + CP2102(N)
SONOFF SWV-ZFE Hydro ONE Zigbee Bewässerungscomputer
- Durable Brass Inlet: Dieser water timer verfügt über einen robusten Messinganschluss für zuverlässige Leistung, sorgt für stabilen Betrieb in Ihrem bewässerungssystem garten oder bewässerungssystem, ideal für den langfristigen Einsatz.
- Flexible Zeitpläne & Mengensteuerung: Erstellen Sie bis zu sechs Pläne für zeit- oder mengenbasierte Bewässerung. Wetter- und saisonale Anpassungen optimieren Ihr bewässerungssystem garten und sparen Wasser – ein intelligenter sprinkler-timer.
SONOFF NSPanel Pro Gen2 Smart Home Bedienfeld
- Multi-App Unterstützung & Home Assistant-Integration: 2GB RAM + 32GB Speicher für flüssige Nutzung mehrerer Drittanbieter-Apps – kein Root erforderlich, einfach über F-Droid als Home Assistant Steuerzentrale nutzbar. All-in-One Smart Panel ersetzt zusätzliche Tablets.
- Matter Bridge für universelle Kompatibilität: Integriertes Matter Gateway verbindet Zigbee‑ & Wi‑Fi‑Geräte mit Apple Home, Google Home, Alexa & Home Assistant. Vereinheitlicht alle Marken und Protokolle für ein nahtloses Smart Home Erlebnis.

Beim Umbau unserer Terrasse stellten wir jedoch fest, dass die Ableitungen unserer Regenrinnen marode waren und der Bagger war ohnehin schon da, sodass die Zisterne mit geringem Aufwand umsetzbar war. In sie fließen nun die Niederschläge, die auf die 75 qm Südseite des Dachs fallen - sofern es überhaupt regnet …
Aus der Zisterne speisen wir unsere Gardena Sprinkler, die durch eine Renkforce Tauchpumpe (welche schon seit 5–7 Jahren ihren Dienst verrichtet) versorgt werden. Man will natürlich wissen, wie viel Wasser in der Zisterne ist, um danach die Bewässerung steuern zu können. Zudem benötigt die Tauchpumpe mindestens 8 cm Füllstand, damit sie nicht trocken läuft.
DIY-Lösungen meist unzuverlässig
Wer den Wasserstand in der Zisterne messen möchte, findet im Netz viele DIY-Ansätze — die meisten funktionieren aber eher schlecht als recht. Ultraschallsensoren, die auf die Wasseroberfläche gerichtet sind, leiden nicht nur unter der feuchten Umgebung und fallen dann aus, sondern messen durch Reflexionen oft nicht korrekt. Gleiches gilt für optische TOF (Time of Flight) Sensoren. Kapazitive Fühler messen eher ungenau, da Verunreinigungen die Dielektrizitätskonstante des Wassers verändern. Ich habe damit auch experimentiert, bin aber schnell wieder davon abgekommen.

Die Füllhöhe eines Regenwassertanks mit einem Schwimmer zu messen, etwa über eine Kaskade aus Reed-Relais und Widerständen mit einem Magnetschwimmer, funktioniert gut und ist robust — löst aber nur sehr grob auf. Für eine Zisterne, die ein Maximallevel von 1,05 Metern erreichen kann, ist das eher unbefriedigend.
Schwimmer mit Umlenkrollen und Seil an einem Potenziometer sind zu abenteuerlich.
Sehr genau sind hingegen Drucksensoren. Kleine Drucksensoren, wie sie in Blutdruckmessgeräten eingebaut sind, wären für die Anwendung ausreichend und sind recht preiswert. Allerdings berücksichtigt man damit nicht den veränderlichen Luftdruck, der auf die Wassersäule wirkt und man erhält keine genauen Messwerte, zudem verstopft der Schlauch zum Sensor gerne.
TL-136 Drucksensor als Lösung
Für eine präzise Niveaumessung in der Zisterne sind nicht ganz so preiswerte, dafür robuste und genaue piezoelektrische Drucksensoren die beste Wahl — insbesondere der TL-136 Flüssigkeitsstand-Messumformer . Diese haben in der Zuleitung auch ein kleines Rohr, das den Außendruck in die Messung einfließen lässt. Diese Sensoren sind für verschiedene Füllhöhen für ungefähr 50 Euro erhältlich. Dafür erhält man ein massives Edelstahlgehäuse samt recht einfacher Ansteuerung. Der Sensor wird einfach auf den Grund der Zisterne oder des Tanks gelegt. Ich habe das 0-1 Meter Modell gewählt, da bei meiner Zisterne der Überlauf bereits bei 105 cm ist. Auch für die beliebten IBC-Container dürfte das 0-1 Meter Modell geeignet sein, lässt man diese ja nicht bis auf den letzten Zentimeter volllaufen.

Der Sensor wird mit 24 Volt versorgt und wandelt den Druck im Bereich 0-20 mA um. Daher muss man den Strom messen, um daraus Füllhöhe und später die Füllmenge zu berechnen. Ein 4-20mA Sensor an einem Wemos D1 oder ESP32 ESP32Mikrocontroller von Espressif mit integriertem WLAN und Bluetooth. Das Herz vieler DIY-Smarthome-Projekte – programmierbar über ESPHome, Tasmota oder ArduinoMehr dazu → -C3 ist dabei denkbar einfach anzubinden. Es gibt günstige kleine Module, mit Transkonduktanzwandler, also der Umwandlung eines Stroms in eine Spannung. Man kann aber auch einfach einen Widerstand nehmen, an dem die abgefallene Spannung abgreift.

Mit einem 150 Ohm Widerstand kann man den Bereich bis 100 cm so abgreifen, dass daraus eine Spannung mit maximal 3,2 Volt wird - ideal für den ADC eines ESP8266 oder ESP32 . Mit einem 27 kOhm Widerstand in Reihe zum Analogeingang des ESP, hat man einen zusätzlichen Schutz, da dieser maximal 3,3 Volt verträgt. Ich nutze noch immer sehr gerne die praktischen und preiswerten WeMos D1 Mini .

Für die 24 Volt des Sensors muss man auch nicht ein zusätzliches Netzteil bemühen. Ein Stepup-Konverter tut es hier auch und kann die 24 V aus dem 5 Volt Pin des ESP erzeugen. Den Step-Up-Konverter stellt man VOR dem Einbau auf die erforderlichen 24 V Ausgangsspannung ein.
Achtung: Der LM2596 ist ein Step-DOWN-Konverter (er senkt die Spannung). Für 24 V aus 5 V brauchst du einen Step-UP-Konverter wie den XL6009. Wer einen LM2596 einbaut, erhält nie mehr als 5 V am Sensor — ein häufiger Fehler, den Leser mehrfach berichtet haben.
Wenn du ein 24-V-Steckernetzteil (~5 €) zur Hand hast, ist das die einfachere und rauschärmere Lösung. Der XL6009-Boost ist kompakt, aber einige Leser berichteten von Instabilität und Rauschen. Beide Wege funktionieren — mit externem 24-V-Netzteil sparst du dir eine Fehlerquelle.

Um herauszufinden, welche Spannung bei welchem Füllstand ausgegeben wird, habe ich ein 100 mm HT-Rohr mit einem Stopfen verstehen, mit Wasser befüllt, den Sensor unterschiedlich tief eingetaucht und die Spannung gemessen. Der hydrostatische Druck ist in einem solchen Rohr in gleicher Tiefe ebenso groß, wie in einer 5.000 Liter Zisterne.

Die Elektronik: ADS1115 und ESPHome
Auch der ESP32-C3 hat nur einen 12-Bit-SAR-ADC, der für präzise DC-Messungen ungeeignet ist — er rauscht und ist bei kleinen Spannungen nichtlinear. Der ADS1115 ist ein 16-Bit-Sigma-Delta-Wandler und liefert damit die Auflösung, die für ±1 mm Füllhöhe nötig ist. Der ADS1115 ist also kein Workaround für einen schlechten ESP8266-ADC, sondern die eigentliche Präzisionslösung — egal welcher ESP.
Der Code für den ESPHome Sensor ist ziemlich selbsterklärend. Es wird der Analog-Digital-Wandler ausgelesen. Die id: levelraw ermöglicht, dass ich später auf den Füllstand in Zentimetern noch einmal in einer anderen Funktion zugreifen kann. In den Tabs findest du die Konfiguration für ESP32-C3 (empfohlen) und ESP8266/Wemos D1 (Alternative für Bestandsnutzer):
|
|
|
|
Der calibrate_linear Filter wandelt die Spannung in die tatsächliche Füllhöhe um, denn der Sensor arbeitet nicht völlig linear. Die Formel für den Wasserstand aus der Spannung lautet also nicht einfach “Volt × Faktor”, sondern wird über die gemessene Kennlinie des Sensors interpoliert — genau das macht calibrate_linear für dich. Ich habe die ersten Werte mit meinem Testaufbau ermittelt und korrigiere nun nach und nach mit den Werten aus der Zisterne. Der - multiply: 100 Filter sorgt dafür, dass die Ausgabe in Zentimetern erfolgt.

Die Filter (sliding_window_moving_average, median) sind übrigens auch die Antwort auf die häufige Frage, wie man Home-Assistant-Messwerte bereinigt: Statt in Home Assistant zu nachträglich zu glätten, erledigt ESPHome das direkt auf dem Mikrocontroller — die Werte kommen bereits sauber an. Ich frage den ADC dann ein weiteres Mal ab, um eine Ausgabe in Volt zu erhalten, mit der ich nach und nach den Linear-Filter mit den echten Füllständen korrigieren kann.
Die zweite Funktion startet mit - platform: template
Hier hole ich mir mit return id(levelraw).state; den Wert in Zentimetern, um ihn dann mit einem weiteren - calibrate_linear Filter auf den Füllstand in Litern umzurechnen.
Historischer ESP8266-ADC-Code (veraltet)
Dieser Code nutzt den A0-ADC des ESP8266, der für solche Messungen nicht geeignet ist (Rauschen, Nichtlinearität). Er wird nur noch zu Dokumentationszwecken gezeigt — nutze stattdessen den ADS1115-Code oben.
Der Code für den ESPHome Sensor ist ziemlich selbsterklärend. Es wird der A0 Pin, also der Analog-Digital-Wandler ausgelesen. Beim ESP8266 wird hier übrigens nicht 0 - 3,3 Volt ausgegeben, sondern 0 - 1 V. Darum habe ich einen Filter mit - multiply: 3.3 eingebaut. Die id: levelraw ermöglicht, dass ich später auf den Füllstand in Zentimetern noch einmal in einer anderen Funktion zugreifen kann.
|
|
Der Median glättet die Werte, da das Signal etwas rauscht. Warum habe ich noch nicht herausgefunden. Die Spannungsversorung des Step-Up-Wandlers ist stabil. Allerdings bewegt sich das Rauschen im Bereich von 0,5 cm Füllhöhe, was vernachlässigbar ist. Die Genauigkeit des Sensors selbst ist mit 0,2 - 0,5 % FS angegeben. Bei einer Füllhöhe von 0 - 1 Meter sind die 0,5 cm Rauschen genau 0,5 % …
ESP32-C3 statt ESP8266: Warum?
Seit 2026 empfehle ich für neue Projekte einen ESP32-C3 statt des klassischen Wemos D1 Mini (ESP8266). Der Preisunterschied ist minimal, die Vorteile aber deutlich:
| ESP8266 (Wemos D1) | ESP32-C3 | |
|---|---|---|
| Preis | ~3 € | ~3–5 € |
| Architektur | Xtensa (2014) | RISC-V (2021) |
| RAM | 80 KB | 400 KB |
| WiFi | 2,4 GHz b/g/n | 2,4 GHz + BLE BLEBluetooth Low Energy – Energieeffiziente Bluetooth-Variante für Sensoren. Xiaomi Mijia Temperatursensoren und Feuchtigkeitsmesser nutzen z.B. BLEMehr dazu → 5 |
| ADC | 10-Bit (ungenau) | 12-Bit (besser, aber weiterhin ADS1115 nötig) |
| Toolchain | PlatformIO | ESP-IDF (Default seit ESPHome 2026.7) |
| Zukunftssicher | Wird kaum noch weiterentwickelt | Aktive Espressif-Pflege |
Kann ich meinen alten Wemos D1 Mini weiterverwenden? Ja, auf jeden Fall — die Konfiguration im zweiten Tab nutzt exakt dieselben Sensoren und Filter, nur mit anderer Pin-Belegung (D1/D2 statt GPIO). Für ein bestehendes, laufendes System lohnt der Umbau nicht. Für neue Aufbauten ist der ESP32-C3 aber die klar bessere Wahl — besonders weil ESPHome und Espressif den ESP8266 nur noch pflegen, aber nicht mehr aktiv weiterentwickeln.
Füllhöhe mit Füllstandskurve in Volumen umrechnen
Meine Rewatec-Zisterne hat ja eine recht komplexe Form, sodass die Füllstände in Litern über die Füllhöhe nicht linear sind. Rewatec schickte mir auf Anfrage eine Füllstandskurve. Damit lässt sich der Füllstand in Abhängigkeit der Füllhöhe umrechnen. Wie zuvor erwähnt: Bei 5.000 Litern ist es egal, ob da 20 Liter mehr oder weniger angezeigt werden. Der Rest ist nur eine Hilfsfunktion, die man weglassen kann.
Den Zisternen-Füllstand per App messen geht damit ganz einfach: Über die
Home Assistant Companion App
hast du den Wert sensor.zisterne_liter immer in der Tasche — inklusive Verlauf, Benachrichtigungen und
Dashboard
DashboardGrafische Übersichtsseite in Home Assistant (Lovelace) zur Steuerung und Anzeige von Entitäten. Lässt sich als YAML versionieren (Teil 3 der Serie)
-Karten. Wer Apple Home (HomeKit) nutzt, kann den Sensor über die
HomeKit Bridge
von Home Assistant direkt in die Apple Home App einbinden und den Füllstand dort als Füllstandssensor anzeigen lassen.

Momentan ist es auch bei uns sehr trocken, sodass sich der Wasserstand in der Zisterne auf einem sehr niedrigen Level von 10 - 25 Zentimetern und damit 150 - 1000 Litern bewegt.

Man sieht jedoch wunderbar Zu- und Abflüsse und kann damit auch feststellen, wie viel Liter etwa 5 Minuten Rasenbewässerung sind. In unserem Fall kommen wir auf etwa 150 Liter pro Bewässerung. Ebenso erkennt man Regenfälle und damit den recht schnellen Anstieg des Levels ausgezeichnet.

Da wir auch noch zwei eingelassene und verbundene Regentonnen mit jeweils 1.500 Litern haben, werde ich hier demnächst auch noch einen Sensor einbauen.

Insgesamt ist die Lösung mit den TL-136 Flüssigkeitsstand-Messumformern eine einfache und hinreichend genaue Lösung für die Messung von Füllständen. Die Sensoren sind robust und einfach anzusteuern. Mit den Linear-Filtern der ESPHome-Plattform lassen sie sich einfach korrigieren, sodass eine Genauigkeit im Bereich von 1 % möglich ist. Für die Anwendung in Regenwassertonnen und Zisternen ist das mehr als ausreichend.
Fragen oder eigene Erfahrungen? Schreib gerne einen Kommentar — ich (nachbelichtet) beantworte hier regelmäßig Fragen zur Zisternen-Überwachung und habe den Aufbau inzwischen auch auf zwei Regentonnen erweitert.

Mit den gewonnenen Werten kann man die Bewässerungsdauer dynamisch steuern, also etwa die Bewässerungszeit verkürzen, wenn nur noch wenig Wasser in der Zisterne ist.
Update 2023 - zuverlässiger und genauer messen
Wie letztes Jahr angekündigt, habe ich den Wasserstandsensor optimiert. Das Problem beim ursprünglichen Projekt war der schlechte ADC des ESP8266, der sehr stark rauscht. Zudem war die Schaltung mit dem einfachen Messwiderstand nicht besonders sicher, was auch hier in den Kommentaren richtigerweise angemerkt wurde. Wegen der Wintersaison und anderen Projekten, hat es mit dem Update etwas länger gedauert, als geplant.
Wie bereits beschrieben, habe ich nun einen ADS1115 4-fach ADC im Einsatz. Man benötigt nur einen der 4 Kanäle des ADS1115, hat also noch 3 ADC für andere Aufgaben übrig.
Nach einigen Tests habe ich mich auch für den günstigen Stromwandler / Messwertumformer entschieden. Dieses kleine Modul hat nicht nur den Vorteil, dass der Eingang des ADS1115 nie mehr als 3,3 Volt sieht. Dazu entfernt man alle Jumper auf dem Modul. Außerdem kann man den Nullpunkt (Sensor nicht eingetaucht) und die maximale Ausgangsspannung einstellen. So lässt sich der Messbereich maximieren, auch wenn man etwa bei einem 0-1 Meter Sensor nur bis maximal 70 cm messen muss. Ich habe die Klemmen ausgelötet, damit ich das Modul auf meine Streifenrasterplatine löten kann.

Nach einem Hinweis in den Kommentaren musste ich mein Wissen über 4-20 mA Stromschleifen wieder auffrischen (das ist dann doch schon knapp 30 Jahre her und ich hatte das nicht mehr parat): Diese Stromschleifen sind sehr robust gegen Störungen und können 100 m und mehr lang sein. So kann man den TL136 Sensor bis ins Haus verlängern, wo die zugehörige Elektronik im Warmen und Trockenen montiert ist
Die Beschaltung ist denkbar einfach. Der ADS1115 wird per I2C-Bus an den Wemos angebunden, der Ausgang des Messwertumformers kommt an einen Eingang (bei mir ADC0) des ADS1115.

Mit dem im Schaltplan “Zero” bezeichneten Trimmer, stellt man die Ausgangsspannung des Moduls (grünes Kabel im Plan) auf nahe 0 Volt ein, wenn der Sensor nicht eingetaucht ist. Nun taucht man den TL136-Sensor bis zur maximalen Tiefe bei maximalem Füllstand ein und stellt mit dem “Span” Trimmer die Spannung am Ausgang (grünes Kabel im Plan) auf knapp 3,3 Volt ein. Damit hat man den möglichen Messbereich optimal ausgenutzt und erhält somit die maximale Auflösung.
Ich habe wieder eine Messreihe mit 10 cm Schritten gemacht und die entsprechenden Spannungen notiert. Daraus wird, wie vorher auch, erst die Füllhöhe in Zentimetern errechnet und von dieser wieder die Füllmenge nach dem vorliegenden Fülldiagramm des Herstellers.
Dank des Messwertumformers und des ADS1115 wird man mit einer sehr präzisen (wenngleich für die Anwendung schon übertriebenen Genauigkeit) und rauschfreien Messung belohnt. Das Restrauschen beträgt maximal 0,1 % und entspricht damit der Toleranz des TL136 Sensors.
Hier ein Vergleich der alten Methode mit der neuen, was wohl für sich spricht:


Stark hineingezoomt sieht man, dass die Abweichung nun nur noch +- 1mm beträgt:

Die übrigen ADC-Kanäle des ADS1115 kann man z. B. für einfache Bodenfeuchtesensoren etc. nutzen.
Da ohnehin noch GPIOs am Wemos frei waren, habe ich auch noch einen Eingang für 1-Wire-Sensoren vorgesehen. Mit den günstigen DS18B20 Temperatursensoren kann man z. B. die Bodentemperatur, Termperatur im Gerätehaus oder die Wassertemperatur der Zisterne erfassen. Mehrere dieser 1-Wire-Sensoren lassen sich parallel an einem Eingang betreiben.

So kalibrierst du den Sensor
Die calibrate_linear-Werte im Code sind nur ein Anhaltspunkt — jeder Sensor und Aufbau weicht leicht ab. Zum Ermitteln deiner eigenen Messreihe brauchst du nur ein HT-Rohr und Wasser:
- HT-Rohr (100 mm) mit Stopfen senkrecht aufstellen und mit Wasser füllen. Der hydrostatische Druck in einer Wassersäule ist unabhängig vom Durchmesser — im Rohr herrscht also derselbe Druck wie in einer 5.000-Liter-Zisterne.
- TL-136 an einer Schnur befestigen und in definierten Schritten (0 cm, 10 cm, 20 cm … bis zur maximalen Füllhöhe) eintauchen.
- Spannung notieren — entweder im ESPHome-Log (
sensor.zisterne_volt) oder direkt am Multimeter am Ausgang des Messwertumformers. - Wertepaare in
calibrate_lineareintragen:- <spannung> -> <füllhöhe>. Bei Werten zwischen den Messpunkten interpoliert ESPHome linear — 10-cm-Schritte reichen völlig. - Nach dem Einbau nachjustieren: Sobald die Zisterne einen bekannten Füllstand hat (z. B. leer oder bei bekannter Füllmenge), die beiden Endpunkte der Kurve korrigieren.
Bevor du die Messreihe machst, solltest du mit dem “Zero”- und “Span”-Trimmer des Messwertumformers den Nullpunkt (Sensor nicht eingetaucht) und die Endspannung (Sensor bei maximaler Tiefe) auf knapp 0 V bzw. knapp 3,3 V einstellen — das nutzt den Messbereich des ADS1115 optimal aus.
Stückliste:
Vollständiger ADS1115-Code für ESP8266 / Wemos D1 (historisch)
Diese Konfiguration war mein Stand ab 2023 — ADS1115 mit ESP8266. Der Code oben in den Tabs ist die modernisierte Version für ESP32-C3 (2026). Die 1-Wire-Beschaltung ist im Schaltplan nicht enthalten — das schafft ihr selbst, wenn ihr es benötigt ;-)
Der neue Code mit ADS1115 und 1-Wire sieht bei mir so aus:
|
|
Wer will, kann über den I2C-Bus oder die Wemos SPI-Bus Pins D5, D6 und D7 auch noch ein Display zur Anzeige des Wasserstands, der Temperatur etc. anbinden. Hier bieten sich ein LC-Display vom Typ 1602/HD44780 oder ein MAX7219 7-Segment-Display an. Letzteres habe ich auch in meiner Bewässerungssteuerung “Waterking” im Einsatz, die auch bereits den Wasserstand der Zisterne anzeigt.
Alternative: INA219 statt Messwertumformer + ADS1115
Ein Leser (Adrian) hat eine schlanke Alternative eingebracht: Statt des 4-20-mA-Messwertumformers plus ADS1115 misst der
INA219
den Strom direkt per I²C — mit einem 10-Ohm-Shunt und platform: ina219 in ESPHome:
|
|
Vorteil: Spart zwei Bauteile (Messwertumformer + ADS1115) und die Verdrahtung wird einfacher. Nachteile: kein Zero/Span-Abgleich für den optimalen Messbereich, keine galvanische Trennung, andere Genauigkeitscharakteristik. Wer den Messbereich präzise ausnutzen will, bleibt beim ADS1115-Aufbau.
Erfahrungen aus der Community
Der Beitrag ist einer der meistgelesenen auf fricklr — entsprechend viele Leser haben das Projekt nachgebaut und Erfahrungen geteilt:
- PCB-Platine: Marc hat eine eigene PCB für den Aufbau entworfen — perfekt, wenn du statt Steckblock/Lochraster eine kompakte, saubere Platine möchtest.
- 3D-gedrucktes Gehäuse: Jörg hat ein passendes Gehäuse für den 3D-Drucker konstruiert , in das die Bauteile exakt hineinpassen.
- IBC-Container mit Frostschutz: Carsten nutzt den Aufbau für einen überirdischen 600-Liter-IBC-Tank und hat zusätzlich eine Temperaturüberwachung plus Teichheizer gegen Einfrieren ergänzt.
- Display am I²C-Bus: Flosi hat ein 20x4-LCD angeschlossen und zeigt Spannung, Füllhöhe und Liter direkt am Gerät an — inklusive Button für die Hintergrundbeleuchtung.
Bekannte Stolpersteine
- USB-Netzteil-Qualität: Einige Leser berichteten von unregelmäßigen Neustarts. Die Ursache war meist ein billiges USB-Netzteil, das unter Last einbricht. Ein Qualitäts-Netzteil (oder ein Kondensator am 5-V-Eingang) behebt das.
- Vorsicherung fliegt: Wenn eine 250-mA-Vorsicherung zwischen Netzteil und Schaltung immer wieder auslöst, prüfe die Verkabelung auf einen intermittierenden Kurzschluss — häufig die Schwachstelle bei nachgebauten Schaltungen.
- Temperaturdrift: Schwankende Messwerte über den Tag trotz gleichbleibendem Füllstand deuten auf temperaturempfindliche Elektronik in einer unbeheizten Box hin (Details siehe FAQ).
Häufige Fragen zur Zisternen-Füllstandsmessung
Kann ich den Sensor mit einem NYM-J-Kabel verlängern?
Ja. Die 4-20-mA-Stromschleife ist sehr robust gegen Störungen und kann problemlos 100 Meter und mehr überbrücken. Eine vorhandene NYM-J-Leitung (z. B. 3x1,5) eignet sich gut, um den TL-136 bis ins Haus zu verlängern, wo die Elektronik trocken montiert wird.
Warum LM2596 und nicht XL6009?
Der LM2596 ist ein Step-DOWN-Konverter (senkt die Spannung). Für 24 Volt aus 5 Volt brauchst du zwingend einen Step-UP-Konverter wie den XL6009. Wer den LM2596 einbaut, bekommt nie mehr als 5 Volt am Sensor — ein häufiger Stolperstein.
Wie genau ist die Messung?
Mit dem ADS1115 und dem Messwertumformer liegt die Abweichung bei ±1 mm Füllhöhe. Das Restrauschen beträgt maximal 0,1 % und entspricht damit der Toleranz des TL-136-Sensors (0,2–0,5 % FS).
Funktioniert das auch mit IBC-Containern?
Ja, sehr gut. Für einen IBC-Container (typisch 600–1000 Liter) eignet sich das 0-1-Meter-Modell des TL-136, da man diese meist nicht ganz voll laufen lässt. Das bestätigen auch mehrere Leser, die das Projekt für ihre IBC-Tanks nachgebaut haben.
Welchen Messbereich sollte der TL-136 haben?
Wähle den Messbereich möglichst nah an der maximalen Füllhöhe (z. B. 0–1 m statt 0–3 m). Ein überdimensionierter Sensor funktioniert zwar ohne Schaden, verschlechtert die Messung aber deutlich: Bei 0,5 % FS verdreifacht sich der absolute Fehler (bei 0–3 m: ±1,5 cm statt ±0,5 cm), und du nutzt nur ein Drittel des 4-20-mA-Signalbereichs — der ADC verliert zwei Drittel seiner Auflösung. Auch Temperaturdrift schlägt dann dreifach stärker durch.
Kann ich statt ESP8266 auch einen ESP32 verwenden?
Ja, das ist 2026 sogar die empfohlene Wahl. Ein ESP32-C3 kostet kaum mehr als ein Wemos D1 Mini, hat mehr RAM/Flash und nutzt die moderne ESP-IDF-Toolchain. Die Pin-Belegung ist anders (GPIO-Nummern statt D1/D2), der Rest des Codes bleibt gleich.
Was tun bei Temperaturdrift der Messung?
Wenn der Füllstand über den Tag bei gleichbleibendem Wasserstand drifft, ist meist die Elektronik in einer unbeheizten Box temperaturempfindlich. Setze den Messwertumformer und ADS1115 ins Trockene und Temperaturstabile (z. B. im Haus) und verlängere die 4-20-mA-Leitung.
Wie verhindere ich einen Kurzschluss in der Zisterne?
Die 4-20-mA-Stromschleife ist hochohmig und kurzschlussfest — bei einem Kurzschluss fließen keine hohen Ströme. Der Eingang des Messwertumformers verträgt das in der Regel. Ein Polysicherungselement am ESP-Eingang schützt zusätzlich.
Welchen Sendeintervall brauche ich für eine Pumpensteuerung?
Für die reine Anzeige reichen die Standard-40-Sekunden (window_size: 20, send_every: 20 bei 2s Intervall). Wenn du eine Pumpe steuerst, reduziere auf window_size: 5, send_every: 5 — dann hast du ~10 Sekunden Aktualität.
Was sagst du dazu? Kommentiere jetzt!
Teile deine Gedanken, Fragen oder Erfahrungen mit der Community.