2nd Gen Arduino Hot Water Solar Collector Controller
A second-generation Arduino solar hot water controller using DS18B20 sensors, relay-based pump control, and an Ethernet Shield for remote monitoring and data lo
👤AUTHOR
Debe
A DIY maker passionate about renewable energy, automation, and open-source hardware.
This project reflects hands-on experimentation, iterative improvement, and real-world solar-thermal system optimization.
🔗 Original Project: https://www.instructables.com/2nd-Gen-Arduino-Hot-Water-Solar-Collector-Controll/
📌 BACKGROUND & MOTIVATION
(Condensed and embedded seamlessly into UCC)
After decades of operating this large solar thermal system, the creator understood its biggest challenge: accurate temperature measurement at many points and intelligent pump coordination.
Existing Arduino solar controllers were simple and functional, but lacked:
- IoT monitoring
- multi-sensor compatibility
- advanced pump logic
- web-based control
- high-temperature sensor support
- freeze and overheat safety automation
A modernized controller needed to handle PT1000 RTDs, legacy 10k thermistors, and DS18B20 digital sensors—because the system contained a mix of old and new hardware.
The system also requires control of three separate pump circuits:
- Collector pump (Panel → Storage)
- Domestic hot water extraction pump
- Home heating extraction pump
To upgrade this complex infrastructure, the author defined clear goals:
Required Inputs
- Read PT1000 RTD sensors inside solar panels
- Read 10k thermistors already installed in the tanks
- Read DS18B20 digital sensors for general temperature points
- Allow any sensor to be assigned to any function
Required Outputs & Logic
- Control DHW extraction pump
- Control home heating pump
- Freeze protection & maximum temperature shutoff
- LCD-based UI
- Manual override buttons
- Two-stage lead/lag pump logic for higher solar efficiency
- Publish temperatures & pump status via Ethernet
- Provide full pump control via the webpage
This second-generation controller now achieves nearly all of these goals and operates reliably.
🎯PROJECT DESCRIPTION
This project implements a second-generation Arduino-based solar hot water controller, designed to automatically manage heat collection, temperature sensing, pump activation, data display, and system safety.
It improves upon the first-generation model by adding:
- Measure collector & tank temperatures
- Decide when to run the circulation pump
- Display data on LCD
- Store settings in EEPROM
- Send operating status to a remote dashboard via Ethernet
The Ethernet Shield makes the system significantly more powerful, enabling:
- Home network integration
- Browser-based viewing of system temperature
- Remote pump status monitoring
- Data recording for system optimization
The controller monitors temperature differences between the solar collector and the water storage tank, then activates the circulation pump when heat gain is optimal—maximizing efficiency and preventing overheating or heat loss.
🧩COMPONENTS
🧠 Hardware
- Arduino UNO / Nano
- Arduino Ethernet Shield (W5100 or W5500-based)
- Temperature sensors (Collector + Tank)
- PT1000 RTD (high-temp solar panels)
- 10k thermistors (legacy storage tank sensors)
- DS18B20 digital sensors
- Relay or SSR for pump control
- 20x4 LCD (I²C optional)
- EEPROM (built-in)
- Manual switches / LEDs
- Outdoor-rated wiring and enclosure
🧰 SYSTEM OVERVIEW
Solar Collector Temp ----┐
│
Tank Temp Sensor --------┼--> Arduino Controller
│ │
│ │
Relay Output │ ---> Pump ON/OFF
│
LCD Display │ ---> Status UI
│
Ethernet │ ---> Web Monitoring
ShieldArduino handles control logic, while the Ethernet Shield hosts a simple web interface that:
- Displays all temperatures
- Shows pump statuses
- Allows remote pump activation/deactivation
✔ KEY FEATURES
🔹 Smart Pump Control
- Calculates ΔT (collector–tank difference)
- Activates pump only when energy gain is positive
- Prevents reverse heat flow at night
🔹 Ethernet-Based Monitoring
With the Ethernet Shield, users can:
- View temperatures via web browser
- Check pump status remotely
- Use tools like Excel, Home Assistant, or Grafana for tracking
- Log data for system maintenance and optimization
n
🔹 Clear Local UI
LCD shows:
- Collector temperature
- Tank temperature
- Pump status
- System mode (Auto/Manual)
- Useful for maintenance and direct local control.
🔹 Improved Energy Efficiency
The second-generation design reduces standby loss and optimizes solar gain.
🧪USE CASES
- Residential solar water heating
- Off-grid home automation
- Renewable energy experimentation
- IoT-enabled home energy management
- Long-term performance monitoring
- Thermal system optimization
🧠 ENGINEERING INSIGHTS
- The use of DS18B20 sensors enables stable, waterproof temperature measurement.
- Ethernet Shield integration simplifies IoT functionality without needing Wi-Fi modules.
- Browser-based dashboard enables real-time visualization of solar heat collection efficiency.
- EEPROM-based configuration ensures persistent user settings.
- Relay isolation enhances safety for pump control.
If upgraded with W5500, reliability and network performance improve further.
