Zum Inhalt springen
Bauanleitung

Bauanleitung

🏊 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)

KomponenteHinweise
ESP32 DevKit V1Mind. 4MB Flash, USB-Kabel inklusive
DS18B20 Temperatursensor (2x, wasserdicht)Edelstahlsonde, 1m Kabel
2-Kanal-Relais-ModulStandard Aktiv-Low-Modul — siehe Hinweise
4,7kΩ Widerstände (2x)Pull-Up-Widerstände für OneWire-Bus
Breadboard + Jumper-KabelFür Prototyp; für Dauerbetrieb Lochrasterplatine
USB-Netzteil (5V / 1A+)Für ESP32 + Relaismodul
Gehäuse (IP54+)Optional, aber empfohlen für Außeneinsatz

Preise und vollständige Teileliste: siehe Stückliste (Controller-Elektronik ~35–55 €, ohne Pumpen und 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 Fehlerbehebung.

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
GPIO26IN2Heizkreispumpe
GPIO25IN1Umwä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.

Wie geht es weiter?

Sobald Ihr Pool Controller läuft:

Zuletzt aktualisiert am