This project prevents house hold water pipes from freezing during winter. It does this by momentarily releasing the water via a water valve when the outside temperature goes below zero degrees centigrade.
During the winter of 2006, Adelaide had a bad year for rain. In a normal winter, we have a lot of rain. In 2006, there was next to none. This caused Adelaide to to have it's worst frosts in 30 years. Temperatures in Birdwood reached -7 degrees centigrade. This was due to lack of rain. In the Adelaide Hills, when there is no rain clouds and a southerly breeze, the temperatures at night plummet to minus levels. When this happens our copper plumbing freezes and breaks. Australian houses are not normally designed for this sub-zero weather.
In the northern hemisphere, people are used to this. It is common practice (so I am told) to leave a tap dripping. Unfortunately, Australia does not have a lot of water. For homes that have a rain water system (ie a rain water tank), leaving a tape dripping in periods of drought is not practical. After having my water pipes bursting and the house flooding, I decided to make this device.
The system is divided into two sections-- a remote end and a ground end. The remote system records temperature and transmits telemetry data via a 90Mhz FM link. The ground end receives this RF telemetry, demodulates it via an FM radio, and decodes and displays the data.
When the temperature goes below 1 degree, the ground system will activate the water valve for 1 second every 20 minutes. When the temperature goes below 4 degrees, it will activate the water valve every 15 minutes. The diagram below depicts a simple block diagram of the PAF system.
The ground system displays max and min temperature stats and how many times it has activated the pump on an LCD display. It also provides temperature information via a 2400 baud UART socket. This can be sent to a computer for logging. In the event that the FM Radio loses the signal, or the Ground Controller is not able to decode telemetry data (due to poor Signal to Noise ratio), then an alarm is sounded after 5 minutes of no telemetry signal. This will notify sleeping users that the system is not operating. Below are some pictures of the PAF system during it's testing phase:
![]() |
This is the Remote Controller and Remote
Transmitter positioned outside. The Remote Controller measures the
temperature and emits a 40 bit frame at 2000 baud. The frame is encoded
using Manchester encoding. The frame contains a 16 bit temperature
field and an 8 bit error detection field. The FM transmitter then
modulates the signal to a 90Mhz FM Radio signal.
The Manchester encoding keeps the FM Radio happy (ie: In simple terms, it makes the digital data "sound" like music), as FM radios are not designed to transport digital data and hence does not do it very well. |
![]() |
This is the Ground Controller, FM Radio, and water valve rigged up on top of my washing machine for a test run (I have yet to find this device a permanent home in the house). |
![]() |
The is the LCD display of the Ground Controller. |
The Remote Controller uses an Atmel Mega8 (AVR based) Microcontroller. The firmware for the Remote Controller has been developed using gcc, avr binutils, and AVR libc.
The Ground System uses an Atmel AT89C2051 (Intel 8051 based) Microcontroller. The fireware was developed using LA51 assembler and the Burn project (Burn is an unmaintained projected authored by me and Terry Porter, circa 1999-2000).