| title | Frequently Asked Questions (FAQ) |
|---|---|
| summary | Troubleshooting guide for common issues with the Smart Swimming Pool Controller. Structured by category for easy navigation. |
| type | docs |
| weight | 50 |
This FAQ covers common issues and their solutions for the Smart Swimming Pool Controller. If your problem isn't listed here, check the Discussions or open a new issue on GitHub.
No. This project involves 230V AC mains voltage, which can be deadly if mishandled.
- Only proceed if you have basic electronics knowledge (e.g., understanding of voltage, current, and safety precautions).
- Always use a Residual Current Device (RCD/FI circuit breaker) for the pump circuit.
- Disconnect power before working on the circuit.
- If in doubt, consult a qualified electrician.
- This project is NOT certified (no CE/UL mark). For personal use only!
- Use an RCD (FI circuit breaker) for the pump circuit.
- Keep low-voltage (sensor) wiring separate from mains wiring.
- Use insulated tools and wear safety glasses.
- Never work on live circuits.
- Test connections with a multimeter before powering on.
| Cause | Solution | How to Test |
|---|---|---|
| Missing 4.7kΩ pull-up resistor | Add a 4.7kΩ resistor between the DATA line and 3.3V. | Measure resistance between DATA and 3.3V (should be ~4.7kΩ). |
| Wrong GPIO pin | Check PIN_DS_SOLAR (GPIO32) and PIN_DS_POOL (GPIO33) in src/Config.hpp. |
Verify wiring matches the firmware configuration. |
| Sensor not connected to 3.3V | Ensure VDD (red wire) is connected to 3.3V (not 5V!). | Measure voltage between VDD and GND (should be ~3.3V). |
| Sensor not connected to GND | Ensure GND (black wire) is connected to GND. | Measure continuity between sensor GND and ESP32 GND. |
- Check the serial monitor (115200 baud) for sensor initialization messages.
- Test with a single sensor (disconnect one and test the other).
| Cause | Solution | How to Test |
|---|---|---|
| Relay module not powered | Ensure VCC is connected to 5V and GND to GND. | Measure voltage between VCC and GND (should be ~5V). |
| Wrong logic level (active-low) | Ensure the relay module is active-low trigger compatible (firmware output is active-low). | Check whether the relay clicks/energizes when GPIO goes LOW (LED behavior can vary by module). |
| Incorrect GPIO pin | Verify PIN_RELAY_POOL (GPIO25) and PIN_RELAY_SOLAR (GPIO26). |
Check wiring matches firmware configuration. |
- Open Web Dashboard (
http://<controller-ip>/). - Go to Security & Update > OTA Firmware Update.
- Select the
.binfile and click Update.
- Open the
pool-controllerfolder in VS Code with PlatformIO. - Select the
esp32devenvironment. - Run
pio run -e esp32dev -t upload.
-
LED Status Codes:
- Rapid blink (5 Hz): AP mode (no WiFi configured).
- Slow blink (1 Hz): WiFi connecting.
- Solid on: Fully connected.
-
Reconnect via AP Mode:
- Connect to
Pool-Controller-Setup(open network). - Open
http://192.168.4.1and reconfigure WiFi.
- Connect to
-
Verify MQTT Host/IP and Port in Web Dashboard.
-
Test MQTT manually:
mosquitto_sub -h <broker-ip> -t "#" -v
-
Upgrade to v3.3.0+ (Homie support removed).
-
Clear retained MQTT messages:
mosquitto_pub -h <broker> -t "homeassistant" -n -r
-
Enable MQTT Discovery in Home Assistant.
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install mosquitto mosquitto-clients
sudo systemctl start mosquitto
sudo systemctl enable mosquitto-
Install Node-RED:
npm install -g node-red node-red
-
Install MQTT nodes:
- Menu > Manage palette > Install > node-red-node-mqtt
- Go to Configuration tab.
- Select Auto, Manual, Timer, or Boost.
mosquitto_pub -h <broker-ip> -t "homeassistant/select/pool-controller/mode/set" -m "auto"- Hardware Guide
- MQTT Configuration
- Home Assistant Integration
- openHAB Configuration
- Grafana Dashboard
- Search Discussions.
- Open a new issue.
This FAQ is part of the Smart Swimming Pool project, licensed under the MIT License.