Solar Water Heater

Solar Water Tank Diagram

Go To Monitoring


In early 2021 I completed an install of a self-designed solar water heater tank system. This is something I had thought about doing for a few years and I was very happy when I got it all working. It has worked well with no problems since I turned it on. In the summer it provides the majority of our hot water needs, and in the winter it helps pre-warm the water before it enters the tankless electric water heater.

The simplified diagram of how it works is above (click to enlarge), and here is an overview of how it works:

  • I purchased six used 45V 285W photovoltaic solar panels off eBay. Because they are used (degraded), and they are not mounted facing south, the expected max performance is well under the specified values.

  • The photovoltaic panels are connected to an off-the-shelf 30 gallon electric water heater by way of an automotive high voltage/current solenoidal relay.

  • The high voltage/current relay is turned on/off by a low voltage/current relay controlled by a Raspberry Pi. The Raspberry Pi GPIO can not put out enough current to activate the high voltage/current relay, which is why there are two relays. The Raspberry Pi turns on/off the low voltage/current relay, and that relay turns on/off a 500 mA (max) 5V external AC->DC power source which powers the high voltage/current relay.

  • Unheated water enters the tank, and exits through a thermostatic mixing valve to a (previously installed) tankless electric hot water heater. The tankless water heater heats the water as needed. There is a water heater expansion tank on the cold side of the tanked water heater (not shown in the diagram).

  • The Raspberry Pi measures the temperature of the water in the tank using a thermocouple attached to the side of the tank.

  • Using a sunrise/sunset calculator, as long as the sun is up and the temperature of the tank is below 65C, the Raspberry Pi turns on the relays that connect the solar panels to the heating element in the tanked water heater. If the main power to the house goes down, all the relays open (disconnect) so there's no way for the solar panels to overheat the water in the tank. And of course, the tank itself has a built-in over-temperature release valve.

  • If the water from the tank is above 50C, the thermostatic mixing valve mixes hot with cold water to prevent sending scalding water down the line. This effectively increases the amount of usable hot water stored in the tank.

  • There are ball valves that allow the unheated water to first pass through the tank, or if needed, go straight to the tankless water heater, bypassing the water tank.

  • The Raspberry Pi also measures the voltage and current (using an inductive current sensor) by way of an analog to digital chip. Temperature, current, voltage, datetime, and the on/off state of the relays are stored in a SQLite database once per minute.


Why did I go with a photovoltaic system rather than a more traditional hydronic solar water heater system? Because I was building this by myself, I decided to keep it simple. A hydronic system works best with a pump and some kind of antifreeze heat-transfer fluid. With hydronic, I'd have to have a purpose-built hot water tank that can transfer the heat from the heat-transfer fluid to the drinkable water.

This system is far simpler. There are really only three moving parts: the two relays and the thermostatic mixer valve, and all three are highly reliable. Instead of antifreeze fluid and piping, I need only two comparatively thin wires from the solar panels to the water tank. The water tank itself is much simpler - it's just a regular 240V AC electric water heater. I disconnected the built-in thermostat and connected the wires from the solar panels directly to the heating element.

It's likely that a professional-grade pumped-fluid solar water heater system would be more efficient. However, it would have cost more, and it's debateable if it would have even fit in our house. I bought a type of tanked water heater designed for mobile homes so it would fit in the crawl space and a heat-exchange water tank may not have fit. Also, I wanted the challenge of designing and installing this system by myself.

Overall my estimate is it cost about $1,000 in materials. This is a moderate amount and will take some time to earn back in saved energy costs. But it's not entirely about the money spent or saved. Doing this project was a kind of a challenge, or hobby, and people spend way more than that on hobbies that never produce any kind of payback. I'm glad that part of our water heating comes from the sun, and it's a good feeling that I was able to complete this project I set out to do. And that's enough for me.


Below are some analytics of the solar water heater. The metrics on this page are updated every 15 minutes.

Updated 2024-04-15 20:15 Mountain Time

2,621 Total kWh

The water heater has converted approximately 2,621 kWh of solar energy into heated water in the last 1,186 days.

Seven-Day Performance

The figure below shows the temperature (C) of the tank and the power (W) of the solar panels over the last seven days. The plot is interactive!

Average Daily Performance by Month

The figure below shows the distribution of temperatures of the tank by time of day in 15 minute chunks (ignoring daylight saving time) by month. It should be clear just how much more hot water is generated in the summer months (for obvious reasons).