[Andrian] has a boiler stove that heats water and sends it to a radiator. As the fireplace heats the water in a boiler a temperature sensor opens the a valve to send the warm water to the radiator. The radiator sends its cool water back to the boiler to be reheated. The valve is slow, so before the boiler can send all the water to the radiator, it’s getting cool water back causing the valve to close while the heat is built back up. To prevent the valve from working so hard and wasting energy, [Andrian] designed a better thermostat to control the valve operation.
The thermostat uses one LM85 temperature sensor to check the water in the boiler and another one for the ambient temperature. Once the boiler water reaches the desired temperature, the valve is opened via relay. The system waits for half an hour and then checks the boiler temperature again. The brains of this operation is an ATMega168 with a 32.768kHz crystal as the RTC. Code and PCB files are available in his repo.
We love to see these types of hacks that challenge the status quo and increase the efficiency of appliances. We applaud you, [Andrian], for turning your dissatisfaction into a positive plan of action and for sharing your experience with the rest of us!
If you want to up the eco-friendliness of heating water a bit, you could heat the water with a compost heap.
Everything looks top notch in this project from schematic, PCB, soldering, case, rotary encoder and even proper connectors. There are no lazy short cuts like using an external RTC chip that I have seen way too many times here (when the AVR chip could have done it like this project here.)
Only comment is that I would rotate the two relays by 90 degrees to provide more copper to copper isolation between primary/secondary side as well as the signals they are switching. (The EIA232 signals are not isolated, so there is )
Right now the traces for the relay are squished together because of their orientation. I am hoping that it is only switching something like 12V (or 24V?) control signals to the relays at the valve.
Lazy using an external RTC chip? If you think using a RTC is “lazy” you seem to not understand what RTC chips are for or how utterly horrid AVR’s are at keeping time.
If you want accurate time, do calibration and subtract/add clock ticks every once every N clock ticks. There is also temperature compensation curve. All it boils down to is how accurate you want it.
Those crazy guys playing around with Chronos managed to get their watches down to +/- 5 seconds per year with the stock MSP430/cheap watch crystals and no external RTC. It can be done.
the AVR also has a special mode where you can attach a 32khz watch crystal and run one of the timer registers off that, for exactly this reason
I’ve seen similar systems and debated making one for a long time. One with calls to weather based sites to get a rough idea of outside temp to adjust heat accordingly. It doesn’t need to heat to 180* if it’s 60* Fahrenheit outside….
All in all great hack!
My concern here is with the operation of the system. Boilers do not like to going from hot to cold back to hot and back to cold as was his previous issue. His new issue, is actually worse than the one he had, now the system is getting hot, then completely cooling down, and very slowly warming back up. What he needs is some type of mixing valve to get the water in the boiler hot, and slowly feed the hot water into the system so the radiators slowly heat up, while the boiler always remains hot (above 140F). This will prevent two issue related to flue gas condensation. It can and will rust out the boiler, and the tar that forms is extremely dangerous. Once the tar catches fire, it burns VERY HOT and VERY FAST. This is a dangerous hack and will ruin his system if not burn down his house.