Solar Pump Controller
A daughterboard module for the RP2350 Motherboard that manages variable-speed pumps in drainback solar thermal systems. The controller automatically fills collectors, establishes siphon, modulates flow based on temperature differential, and shuts down safely when conditions require it.
How it works
The controller continuously reads panel and tank temperatures from the RS485 network. When the panel is hotter than the tank by more than a configurable threshold (default 5.0 C), the pump starts. Speed ramps linearly from the minimum (30%) to maximum (85%) as the temperature differential increases.
An optical bubble sensor on the pump discharge line monitors flow. When air is detected, the controller purges at full speed until water is confirmed, with temperature-compensated run-on times to ensure dispersed air is cleared before it can coalesce into siphon-breaking Taylor bubbles.
State machine
The pump operates through seven states:
| State | Speed | Description |
|---|---|---|
| Off | 0% | Waiting for sufficient temperature differential and sunlight |
| Filling | 100% | Filling pipes and establishing siphon at full speed |
| Modulating | 30-85% | Normal operation, speed proportional to temperature differential |
| Full speed | 100% | Temperature differential exceeds ramp range |
| Purging | 100% | Clearing air bubbles detected by bubble sensor |
| Calibrating | Variable | Automated minimum-speed calibration sequence |
| Safety shutdown | 0% | Stopped due to overtemperature, freeze risk, or sensor fault |
Drainback hydraulics
The controller design is informed by research into two-phase flow in drainback solar systems. During filling, flow transitions through annular flow (thin water film around an air core), slug flow (large air bubbles), and finally single-phase choking where the siphon establishes. The choking flow velocity is calculated from pipe diameter and type, with adjustments for corrugated pipes and horizontal sections.
Once the siphon is established, the weight of the water in the return column assists the pump, dramatically reducing electrical consumption. This is the basis of the system's approximately 70:1 coefficient of performance — 70 units of thermal energy collected per unit of electrical energy consumed.
Temperature-compensated flow
Water viscosity changes with temperature. The controller adjusts flow rates accordingly, reducing absolute flow by up to 20% at high temperatures (above 60 C) compared to cold water. Purge run-on times are also extended for cold water, which is slower to clear dispersed air bubbles.
Hysteresis
The controller uses time-of-day-aware hysteresis to avoid unnecessary cycling:
- Morning (bright sun, cold panel) — hysteresis increased by 50% to prevent premature starts before the panel has warmed sufficiently
- Evening (fading light, warm panel) — hysteresis halved to extract the last useful heat before sunset
- Normal — standard hysteresis band (default 1.0 C)
Safety features
- Overtemperature lockout — pump stops if tank exceeds 95 C, restarts automatically when it cools to 90 C
- Freeze protection — pump stops if panel drops below 10 C while running
- Sensor fault detection — immediate shutdown if panel or tank temperature readings become invalid or stale (older than 60 seconds)
- Purge timeout — if air cannot be cleared within 120 seconds, the system shuts down (indicates a possible leak or empty system)
- Choking failure — if siphon cannot be established within 300 seconds of filling
Automated calibration
The controller can automatically determine the minimum pump speed that maintains stable siphon:
- Fill the system at full speed
- Reduce speed in 5% steps until air is detected (coarse scan)
- Re-establish siphon, then reduce in 1% steps (fine scan)
- Validate the proposed speed for 3 minutes under continuous monitoring
- Add a 5% safety margin and store the result
The entire process runs unattended and accounts for pipe diameter, pipe type, and water temperature.
Hardware
Each pump channel uses:
- AOD4185 P-channel MOSFET — high-side switch for 24V pump power
- LTV-817S optocoupler — isolated fault input from pump
- SMAJ24A TVS diodes — transient voltage suppression on power and signal lines
- 25 kHz PWM — above audible range
Up to four pumps can be driven in lock-step from a single module, all at the same speed.
Configuration
All parameters are configurable via USB serial menu:
| Parameter | Default | Description |
|---|---|---|
| Delta threshold | 5.0 C | Minimum panel-tank difference to start |
| Ramp | 10.0 C | Differential range for speed modulation |
| Minimum speed | 30% | Lowest modulating speed |
| Maximum speed | 85% | Highest modulating speed |
| Max tank temp | 95 C | Overtemperature lockout |
| Freeze lockout | 10 C | Panel temperature cutoff |
| Pipe diameter | 20 mm | For choking flow calculation |
| Pipe type | Smooth | Smooth or corrugated |
Our products are local-control-only devices. Self-running; no internet connection required. Configurable with any device that can connect via a serial terminal. No application. No operating system. No cloud. No subscription.
Errors and omissions excepted. No reliance can be made upon the accuracy of the information contained herein. Devices are prototypes only and are not for commercial sale. No liability can be accepted for any loss or damage arising from the use of any device or information provided.