Hey everyone! I wanted to share my recent DIY project which has been a huge success. I built a custom controller for my Pureline 1116 1.5HP Variable Speed Pump using an ESP32 and RS485 communication. The goal was to integrate it seamlessly into Home Assistant for full local control, custom schedules, and flow monitoring.
The Hardware Setup
- MCU: I went with the ESP32 DevKit V1 after facing some issues with the ESP8266, mainly around UART logging conflicts. It’s been much more reliable.
- Transceiver: The MAX3485 was a great choice. It handles the RS485 logic perfectly without needing any level shifters.
- Connection: I wired it directly to the pump’s RS485 port (Pins: A, B, GND). This setup ensures a stable and direct communication link.
Key Features
- On-Device Scheduling: The scheduling logic runs entirely on the ESP32, so even if my Wi-Fi goes down or Home Assistant crashes, the pump continues its scheduled cycles without missing a beat.
- Daisy Chain Timeline: By setting a single start time, the Morning, Noon, and Evening cycles flow automatically. This simplifies scheduling and ensures consistent operation throughout the day.
- Estimated Flow Monitoring: I calculated a virtual flow sensor based on RPM and pipe size (1.5"), allowing me to track gallons per minute without the need for a physical sensor. This has been incredibly useful for monitoring efficiency.
- Safety First: The inclusion of a “Safe Restart” switch and “Fallback to Off” logic has added a layer of protection. It prevents the pump from running dry or spinning indefinitely if a signal is lost, which is a huge safety net.
- Web Interface: As a fallback, there’s a web server running on port 80. This means I can manually control the pump from my phone browser if needed, adding another layer of accessibility.
The Process
I started by researching existing solutions and quickly realized the limitations of the stock keypad. The ESP32 seemed like the perfect upgrade, offering both processing power and wireless capabilities. The MAX3485 was chosen for its compatibility with the pump’s RS485 port without needing additional components.
The most challenging part was getting the scheduling logic right. I wanted it to be as user-friendly as possible, so setting a single start time and having the rest of the schedule flow from there was a priority. Testing each feature incrementally was key, especially ensuring the safety protocols worked as intended.
Results and Satisfaction
Since implementing this setup, my pool maintenance has never been more efficient. The pump runs exactly when it’s needed, and I have real-time monitoring of the flow rate, which helps in maintaining optimal performance. The fact that it all runs locally without relying on external services is a massive plus, especially for someone like me who values independence and reliability.
Looking Ahead
I’m considering creating a retrofit kit for others who might be interested in this project. It would include all the necessary components and a detailed guide, making it easier for anyone to upgrade their pool pump system. If there’s enough interest, I might even look into manufacturing a more polished version.
This project has been a fantastic learning experience and has significantly improved my pool’s efficiency and maintenance routine. I’m thrilled with the results and can’t recommend this approach enough for anyone looking to modernize their pool system. Happy tinkering everyone! ![]()