Was Du bekommst
Drainbee misst den Wasserstand im Pumpensumpf mit einer hydrostatischen Tauchsonde (0–1 m, ±1 cm). Den aktuellen Pegel kannst Du direkt im Heimnetz abfragen und in Deinem Smart-Home-System weiterverwenden:
- Der Pegel als Sensor in Home Assistant, ioBroker oder Node-RED – in ganzen Zentimetern.
- Eigene Dashboards und Automationen, etwa eine Nachricht ab einem bestimmten Pegel oder ein Verlaufsdiagramm über die Woche.
- Kombination mit anderen Sensoren, zum Beispiel mit Regendaten oder dem Verbrauch einer Messsteckdose an der Pumpe.
Die Alarme bleiben in der Drainbee-App: Schwellenwert, Stromausfall und WLAN-Verlust. Die lokale Abfrage ergänzt die App, sie ersetzt sie nicht.
Voraussetzungen
- Drainbee ist eingerichtet und mit Deinem WLAN verbunden. Falls noch nicht: Die Installationsanleitung führt Dich in 15 Minuten durch.
- Die IP-Adresse des Geräts. Du findest sie in der Drainbee-App in den Geräteinformationen. Alternativ zeigt Dein Router sie in der Liste der verbundenen Geräte.
- Dein Smart-Home-System im selben Netzwerk. Home Assistant, ioBroker oder Node-RED müssen Drainbee direkt erreichen können.
Tipp: Vergib im Router eine feste IP-Adresse (DHCP-Reservierung) für Drainbee. Sonst kann sich die Adresse nach einem Neustart ändern und Deine Abfrage läuft ins Leere.
Verbindung testen
Öffne im selben Netzwerk http://IP-des-Geräts/status im Browser, zum Beispiel http://192.168.1.50/status. Im Terminal geht es mit curl:
curl http://192.168.1.50/status Drainbee antwortet mit einem kleinen JSON-Objekt:
{
"deviceId": "drainbee",
"firmwareVersion": "1.2.5",
"uptimeMs": 86400000,
"measurement": {
"cm": 42,
"ageMs": 3200
},
"wifi": {
"isConnected": true,
"localIp": "192.168.1.50",
"rssiDbm": -61
},
"mqtt": {
"isConnected": false
},
"memory": {
"freeHeapBytes": 142000,
"minFreeHeapBytes": 98000,
"largestFreeBlockBytes": 86000
}
} Ein Endpunkt, ein Feld für den Pegel: measurement.cm. Kann null sein.
Abfrageintervall: 30–60 s sind ausreichend. Eine Abfrage beschleunigt die Messung nicht; nutze measurement.ageMs, um veraltete Werte zu erkennen.
Home Assistant
Home Assistant bringt mit der RESTful-Integration alles mit, was Du brauchst. Trage diesen Block in Deine configuration.yaml ein, setze Deine IP-Adresse ein und starte Home Assistant neu:
rest:
- resource: http://192.168.1.50/status
scan_interval: 30
sensor:
- name: "Pumpensumpf Pegel"
unique_id: drainbee_pegel
availability: "{{ value_json.measurement.cm is number }}"
value_template: "{{ value_json.measurement.cm }}"
unit_of_measurement: "cm"
device_class: distance
state_class: measurement Danach gibt es die Entität sensor.pumpensumpf_pegel. scan_interval: 30 fragt alle 30 Sekunden ab, state_class: measurement sorgt für Langzeitstatistiken. Im Verlauf siehst Du die Pumpenzyklen als Sägezahn: Der Pegel steigt langsam und fällt schlagartig, sobald die Pumpe läuft. Hast Du schon einen rest:-Eintrag, hänge den Block einfach als weiteren Listenpunkt an.
Nachricht bei hohem Pegel
Diese Automation meldet sich, wenn der Pegel zwei Minuten lang über 60 cm liegt. Lege in Home Assistant eine neue Automation an, wechsle in die YAML-Ansicht und füge sie ein. Den Schwellenwert passt Du an Deinen Sumpf an.
alias: "Pumpensumpf: Pegel zu hoch"
triggers:
- trigger: numeric_state
entity_id: sensor.pumpensumpf_pegel
above: 60
for:
minutes: 2
actions:
- action: notify.notify
data:
title: "Pumpensumpf"
message: "Pegel bei {{ states('sensor.pumpensumpf_pegel') }} cm – bitte Pumpe prüfen."
mode: single notify.notify geht an Deinen Standard-Dienst, meist die Home-Assistant-App. Die Automation arbeitet nur, solange Home Assistant läuft und Drainbee erreicht – lass die Alarme in der Drainbee-App deshalb aktiv.
Ideen zum Weiterbauen
- Ein Template- oder Derivative-Sensor, der zeigt, wie schnell der Pegel steigt.
- Die Pumpenzyklen pro Tag zählen – jeder Zyklus ist ein Sprung des Pegels nach unten.
- Pegel und Regenmenge in einem Diagramm, um zu sehen, wie stark Dein Sumpf auf Niederschlag reagiert.
Node-RED
In Node-RED reichen drei Nodes, um den Pegel abzuholen:
HTTP-Request-Node auf http://192.168.1.50/status mit Ausgabe „JSON-Objekt“, davor ein Inject-Node alle 60 Sekunden. Danach folgt diese Function-Node.
Ein Endpunkt, ein Feld für den Pegel: measurement.cm. Kann null sein.
const measurement = msg.payload?.measurement;
const cm = measurement?.cm;
if (typeof cm !== "number") return null;
msg.ageMs = measurement.ageMs;
msg.payload = cm;
return msg; Von dort geht der Wert weiter, wohin Du ihn brauchst: an ein Dashboard (Gauge oder Chart), über einen mqtt out-Node an Deinen Broker oder in eine Datenbank. Ist Drainbee nicht erreichbar, meldet der http-request-Node einen Fehler, den Du mit einem catch-Node abfangen kannst.
ioBroker
Am schnellsten geht es mit dem JavaScript-Adapter; httpGet steht dort ab Version 7.9 zur Verfügung. Lege ein neues Skript an, setze Deine IP-Adresse ein und starte es:
const DRAINBEE_URL = "http://192.168.1.50/status";
const STATE_ID = "0_userdata.0.drainbee.pegel";
createState(STATE_ID, null, {
name: "Pumpensumpf Pegel",
type: "number",
role: "value",
unit: "cm",
read: true,
write: false
});
schedule("*/30 * * * * *", () => {
httpGet(DRAINBEE_URL, { timeout: 5000 }, (err, response) => {
if (err || response.statusCode !== 200) {
setState(STATE_ID, null, true);
log("Drainbee nicht erreichbar: " + (err || response.statusCode), "warn");
return;
}
try {
const cm = JSON.parse(response.data).measurement?.cm;
setState(STATE_ID, typeof cm === "number" ? cm : null, true);
} catch (e) {
setState(STATE_ID, null, true);
log("Drainbee: " + e, "warn");
}
});
}); Das Skript legt den Datenpunkt 0_userdata.0.drainbee.pegel an und schreibt alle 30 Sekunden den aktuellen Pegel hinein. Von dort kannst Du ihn in VIS anzeigen, in Blockly-Regeln verwenden oder mit dem History-Adapter aufzeichnen. Ohne JavaScript-Adapter lässt sich dieselbe URL auch mit dem Parser-Adapter zyklisch einlesen.
Sicherheit
Die lokale API ist für Dein vertrauenswürdiges Heimnetz gedacht. Sie hat keine Authentifizierung und kein HTTPS – wer Drainbee im Netz erreichen kann, kann den Status lesen. Geändert werden kann darüber nichts.
Richte keine Portfreigabe für Port 80 auf Drainbee im Router ein. Für den Zugriff von außen nutze die Drainbee App oder ein VPN in Dein Heimnetz.
Fehlerbehebung
Keine Antwort auf die Abfrage
- IP-Adresse geändert: Prüfe die aktuelle Adresse in der App oder im Router und richte eine DHCP-Reservierung ein.
- Anderes Netz: Gast-WLAN, getrennte VLANs oder ein aktives VPN auf dem Rechner blockieren den Zugriff. Beide Geräte müssen sich im selben Netz erreichen können.
- Drainbee offline: Zeigt die App keinen aktuellen Pegel, prüfe zuerst Strom und WLAN am Gerät.
WLAN-Verbindung
Drainbee funkt ausschließlich im 2,4-GHz-Band. Achte darauf, dass Dein Router ein 2,4-GHz-Netz anbietet und das Signal am Montageort stabil ist.
Wie oft abfragen?
Alle 30 bis 60 Sekunden reichen aus – schneller ändert sich der Pegel in der Praxis selten. Sehr kurze Intervalle belasten Gerät und WLAN unnötig. Einzelne Aussetzer bei schwachem Empfang sind normal; Home Assistant zeigt den Sensor dann kurz als nicht verfügbar.
Häufige Fragen
Hat Drainbee eine lokale API?
GET http://IP-des-Geräts/status mit JSON wie {"measurement":{"cm":37,"ageMs":3200}} – dem aktuellen Pegel in ganzen Zentimetern. Die Schnittstelle ist nur lesend, braucht keine Anmeldung und ist aus dem Internet nicht erreichbar.