Zum Inhalt springen
Erste Schritte

Erste Schritte

🏊 Smart Swimming Pool: Heimautomatisierung für eine intelligentere Steuerung Ihres Schwimmbads

⚠️

WARNUNG: 230V Netzspannung

Dieses Projekt arbeitet mit 230V Wechselstrom und darf nur von Personen mit Elektronik-Grundkenntnissen nachgebaut werden. Verwende immer einen RCD (FI-Schutzschalter). Das Projekt ist nicht CE/UL-zertifiziert und nicht fĂĽr den gewerblichen Einsatz bestimmt.

Beispiel einer Anlage

In einer typischen Anlage erwärmt ein thermisches Solarsystem das Wasser und unterstützt die Raumheizung im Haus. Das erwärmte Wasser wird in einem Pufferspeicher gesammelt, der eine dritte Zirkulation für den Pool bereitstellt. Eine Pumpe an diesem Kreislauf leitet das Poolwasser durch einen Wärmetauscher:

Beispielaufbau

Grundvoraussetzungen

  • Swimmingpool mit Sandfilteranlage
  • Ăśber eine Pumpe zuschaltbarer Heizkreislauf mit Wärmetauscher
  • Solarer Wärmespeicher mit zusätzlichem Heizkreislauf fĂĽr den Pool

Teileliste (Bill of Materials)

KomponentePreis (ca.)Hinweise
ESP32 DevKit V110–15 €Mind. 4MB Flash, USB-Kabel inklusive
DS18B20 Temperatursensor (2x, wasserdicht)8–12 €Edelstahlsonde, 1m Kabel
2-Kanal-Relais-Modul5–8 €Standard Aktiv-Low-Modul — siehe Hinweise
4,7kΩ Widerstände (2x)< 1 €Pull-Up-Widerstände für OneWire-Bus
Breadboard + Jumper-Kabel3–8 €Für Prototyp; für Dauerbetrieb Lochrasterplatine
USB-Netzteil (5V / 1A+)5–10 €Für ESP32 + Relaismodul
Gehäuse (IP54+)5–10 €Optional, aber empfohlen für Außeneinsatz
Gesamt~45–75 €Ohne Pumpen / Wärmetauscher-Infrastruktur

⚠️ Relais-Modul Hinweis: Die Firmware steuert die Relais Aktiv-Low (GPIO LOW = Relais EIN, GPIO HIGH = Relais AUS). Dies entspricht der überwiegenden Mehrheit günstiger 2-Kanal-5V-Relais-Module. Während des ESP32-Starts sind die GPIOs kurz im hochohmigen Zustand — die Firmware setzt sie sofort nach dem Start auf HIGH (Relais AUS). Falls Ihr Modul andersherum arbeitet (Aktiv-High), finden Sie Konfigurationsmöglichkeiten im FAQ.

Hardware-Aufbau

Breadboard-Layout

Pool Controller Breadboard

Der ESP32 und das Relais-Modul auf einem Breadboard — der einfachste Weg, um zu starten.

Schritt 1: ESP32 vorbereiten

  1. SchlieĂźen Sie den ESP32 per USB an Ihren Computer an.
  2. PrĂĽfen Sie, ob er als serielle Schnittstelle erkannt wird (/dev/ttyUSB0 unter Linux, COM3 unter Windows).
  3. Installieren Sie ggf. CP210x- oder CH340-Treiber (CP210x Treiber, CH340 Treiber).

Schritt 2: Temperatursensoren anschlieĂźen

Die DS18B20-Sensoren verwenden das OneWire-Protokoll. Verbinden Sie sie wie folgt:

Die Firmware (esp32dev-Umgebung) weist jedem Sensor einen eigenen GPIO-Pin zu:

SensorESP32 PinKabel (typisch)
Solar-Kollektor (DS18B20 #1)GPIO32VDD=Rot, GND=Schwarz, DATA=Gelb/WeiĂź
Poolwasser (DS18B20 #2)GPIO33VDD=Rot, GND=Schwarz, DATA=Gelb/WeiĂź

Wichtig: Schließen Sie einen 4,7kΩ-Widerstand zwischen jeder DATA-Leitung und 3.3V an (Pull-Up). OneWire benötigt einen separaten Pull-Up pro GPIO-Pin. Für zwei Sensoren auf getrennten GPIOs benötigen Sie zwei 4,7kΩ-Widerstände.

Schritt 3: Relais-Modul anschlieĂźen

ESP32 PinRelais-ModulHinweise
GPIO26IN1Heizkreispumpe
GPIO25IN2Umwälzpumpe / Filter
5V (VIN)VCC5V nicht 3.3V!
GNDGNDGemeinsame Masse mit ESP32

⚠️ Stromversorgung: Das Relais-Modul benötigt 5V Spannung (nutzen Sie den VIN-Pin des ESP32 bei USB-Stromversorgung). Nicht vom 3.3V-Pin versorgen. Verbinden Sie ESP32 GND mit Relais GND (gemeinsame Masse).

Schritt 4: AbschlieĂźende PrĂĽfung

Bevor Sie Pumpen oder Netzspannung anschließen, folgen Sie der Inbetriebnahme-Checkliste — einer vollständigen Schritt-für-Schritt-Prüfliste mit Hardware-Kontrolle, Firmware-Test, Sensor-Überprüfung, Relais-Test und Automatik-Check.

Wichtige Punkte vorab:

  1. ĂśberprĂĽfen Sie alle Verbindungen anhand des Schaltplans.
  2. Vergewissern Sie sich, dass das Relais-Modul korrekt arbeitet: Bei eingeschaltetem ESP32 (noch ohne Pumpensteuerung) messen Sie die GPIO-Pins mit einem Multimeter — sie sollten HIGH sein (Relais AUS). Nach dem Schalten eines Relais über die Weboberfläche sollte der zugehörige GPIO auf LOW gehen (Relais EIN).
  3. Spiele Sie zuerst die Firmware auf (siehe unten) und testen Sie mit dem Webinterface ohne angeschlossene Pumpen.
  4. Immer noch keine 230V? Erste erfolgreiche Firmware-Tests abwarten.

Firmware-Installation

PlatformIO (Empfohlen)

⚠️ Wichtig: Der Pool-Controller ist ein PlatformIO-Projekt. Es gibt keine Arduino-IDE-kompatible .ino-Datei. PlatformIO ist die einzige unterstützte Build-Methode.

  1. Installieren Sie Visual Studio Code und die PlatformIO-Erweiterung.
  2. Repository klonen:
    git clone https://github.com/smart-swimmingpool/pool-controller.git
    cd pool-controller
  3. Öffnen Sie den Ordner in VS Code — PlatformIO erkennt das Projekt automatisch.
  4. Die richtige Umgebung wählen: Das Projekt hat als Voreinstellung die Umgebung für den NORVI AE01-R Industrie-Controller. Für ein Standard-ESP32-DevKit wechseln Sie zur esp32dev-Umgebung:
    • Klicken Sie auf das PlatformIO-Logo (⚡-Symbol) in der VS-Code-FuĂźzeile
    • Gehen Sie zu Project Tasks → esp32dev
    • Oder nutzen Sie den Umgebungswechsler unten im VS-Code-Fenster
  5. Verbinden Sie den ESP32 per USB.
  6. Schritt A — Firmware flashen: Klicken Sie auf den → (Upload and Monitor)-Button neben esp32dev in der PlatformIO-Fußzeile. Die Firmware wird kompiliert und geflasht.
  7. Schritt B — Dateisystem hochladen (Weboberfläche): Die Weboberfläche wird in einer separaten LittleFS-Partition gespeichert und muss nach der Firmware hochgeladen werden:
    • Ă–ffnen Sie in VS Code den PlatformIO-Reiter → esp32dev → Platform → Upload Filesystem Image
    • Oder per Terminal:
      pio run -e esp32dev -t uploadfs
    • Ohne diesen Schritt zeigt die Weboberfläche eine Fehlerseite statt der Konfigurationsseite.

Nach dem Flashen prĂĽfen

Ă–ffnen Sie den seriellen Monitor (115200 Baud). Sie sollten sehen:

[INFO] Pool Controller v3.3.0 starting...
[INFO] WiFi: Starting in AP mode
[INFO] AP: 'Pool-Controller-Setup'. IP: 192.168.4.1

Der ESP32 startet standardmäßig im Access Point (AP) Modus.

Erste Inbetriebnahme & Konfiguration

Schritt 1: Mit ESP32 verbinden

  1. Suchen Sie nach WLAN-Netzwerken — Sie sehen Pool-Controller-Setup (offenes Netzwerk, kein Passwort).
  2. Verbinden Sie sich von Ihrem Smartphone oder Laptop.
  3. Ă–ffnen Sie einen Browser und gehen Sie zu http://192.168.4.1

Schritt 2: WLAN konfigurieren

  1. Die Weboberfläche zeigt eine Konfigurationsseite.
  2. Geben Sie Ihren WLAN-Namen (SSID) und Ihr Passwort ein.
  3. Klicken Sie auf Speichern — der ESP32 startet neu und verbindet sich mit Ihrem Netzwerk.

Schritt 3: MQTT einrichten

  1. Finden Sie die IP-Adresse des ESP32 (Router oder serieller Monitor).
  2. Ă–ffnen Sie http://<esp32-ip>/ im Browser.
  3. Gehen Sie zu Konfiguration → MQTT.
  4. Geben Sie die Adresse Ihres MQTT-Brokers ein (z. B. 192.168.1.100 oder core-mosquitto).
  5. Bei Authentifizierung Benutzername/Passwort eingeben.
  6. Klicken Sie auf Speichern — der Controller verbindet sich neu mit MQTT.

Kein MQTT-Broker? Installieren Sie Mosquitto auf einem Rechner im Netzwerk oder nutzen Sie das Mosquitto-Add-On in Home Assistant.

Schritt 4: Home Assistant Integration

Wenn Sie Home Assistant mit MQTT verwenden:

  1. Der Controller sendet automatisch MQTT Discovery-Nachrichten.
  2. In Home Assistant gehen Sie zu Einstellungen → Geräte & Dienste.
  3. Klicken Sie auf Integration hinzufügen → MQTT (falls nicht schon konfiguriert).
  4. Der Pool Controller sollte automatisch als neues Gerät erscheinen.
  5. Alle Sensoren, Steuerungen und Konfigurationsparameter erscheinen als Entities — keine manuelle Einrichtung nötig.

▶️ Ausführliche Anleitung: Siehe Home Assistant Integrations-Guide für die vollständige Entity-Referenz, Dashboard-Einrichtung, Automatisierungsbeispiele und Fehlerbehebung.

Schritt 5: Pumpen anschlieĂźen

Erst jetzt — nach erfolgreichem Test — die Pumpen anschließen:

  1. Trennen Sie den ESP32 von der USB-Stromversorgung.
  2. Verdrahten Sie die Relaisausgänge mit Ihren Pumpenschützen/Ventilen.
  3. Verwenden Sie geeignete Kabelquerschnitte fĂĽr 230V.
  4. SchlieĂźen Sie die Netzspannung ĂĽber einen RCD (FI-Schutzschalter) an.
  5. Versorgen Sie den ESP32 wieder ĂĽber sein USB-Netzteil (elektrisch getrennt von 230V).
⚠️

WARNUNG: 230V Netzspannung

Dieses Projekt arbeitet mit 230V Wechselstrom und darf nur von Personen mit Elektronik-Grundkenntnissen nachgebaut werden. Verwende immer einen RCD (FI-Schutzschalter). Das Projekt ist nicht CE/UL-zertifiziert und nicht fĂĽr den gewerblichen Einsatz bestimmt.

Modulare SystemĂĽbersicht

Die Erste-Schritte-Anleitung konzentriert sich auf den Pool Controller als zentrales Modul. Das System hat zusätzliche optionale Module:

ModulZweckWann hinzufĂĽgen
Pool Controller (diese Anleitung)Hauptsteuerung: Pumpen, Heizung, ZirkulationErforderlich — hier starten
Home AssistantNativer MQTT DiscoveryAutomatisch — keine Einrichtung nötig
Pool MonitorSolarbetriebene TemperaturanzeigeNachdem der Controller läuft
Grafana DashboardDatenvisualisierung und -verlaufWenn Sie historische Diagramme möchten
openHAB KonfigurationIntegration mit openHABWenn Sie openHAB statt Home Assistant nutzen
Smart Analyzer (geplant)WasserqualitätsüberwachungNoch nicht verfügbar

Wie geht es weiter?

Sobald Ihr Pool Controller läuft:

Vorbereitungen

Sofern ein Heizkreislauf mit Wärmetauscher vorbereitet ist, kann mit der Umsetzung der smarten Steuerung des Pools begonnen werden.

Herz des Systems ist der Pool Controller. Dieser ĂĽbernimmt:

  • Steuerung der Zirkulationszeit fĂĽr die Sandfilterreinigung
  • Zuschalten des Heizkreislaufs zur Erwärmung des Poolwassers
  • Melden von Status und Temperaturen fĂĽr die Integration in Smart-Home-Server

Der Pool Controller nutzt Home Assistant MQTT Discovery fĂĽr nahtlose Smarthome-Integration. Mit der hier vorgestellten Konfiguration kann der Pool-Controller schnell eingerichtet und von jeder Home Assistant-kompatiblen App gesteuert werden.

Home Assistant Dashboard

Der Pool Controller registriert via MQTT Discovery automatisch alle Sensoren und Steuerelemente in Home Assistant. Nachfolgend ein Beispiel des Dashboards und der zugehörigen Konfigurationseinträge:

Home Assistant Dashboard

Pool-Controller-Entitäten im Home Assistant Dashboard

Home Assistant Device Eintrag

MQTT Discovery-Geräteeintrag mit allen Sensoren und Steuerungen

Home Assistant Konfiguration

Konfigurationseinträge für den Pool Controller in Home Assistant

Historie

🏊 Smart Swimming Pool basiert auf einem früheren Projekt, das noch nicht modular aufgebaut war und die gesamte Steuerlogik als openHAB-Regeln implementierte.

Die erste Version war im Sommer 2018 im Einsatz und zeigte einige Schwächen:

  • Die Steuerung der Pumpen ĂĽber 433-MHz-Steckdosenschalter war unzuverlässig — ohne RĂĽckmeldung war der tatsächliche Status unbekannt
  • Die Schaltlogik lebte in openHAB-Regeln, was bei unzuverlässigem WLAN zu Problemen fĂĽhrte
  • MQTT-Nachrichten verwendeten ein proprietäres Format

Aus diesen Erfahrungen entstand die überarbeitete Version des 🏊 Smart Swimming Pools: modular, widerstandsfähig und auf Standards basierend.

Zuletzt aktualisiert am