Sunday, January 13, 2013

Central heating monitor display unit

Today I upgraded the display unit for my central heating monitoring system.This will give me a good opportunity to show the hardware since I had to dismantle the unit.

The idea is that it should give visible and audible alerts when there is some event that should be attended to. The ones I have identified are:
  1. When there is not enough hot water in the tanks to heat up the house
  2. When the current set of logs in the furnace have burned out and there is space for more heat in the tanks.
Number 1 I've scratched since I found it was a bit nagging. Normally you have plenty of time to act when heat is getting lower and after it runs out the house doesn't go cold within a couple of hours. Number 2 on the other hand is very useful since the furnace can take enough logs to heat up about 2/3 of the tanks. Then I can warm up the tanks to maximum without running to the display and check all the time. The problem is that the audio has not been working.

My initial plan was to use a piezo speaker and let the AVR output the frequency of the sound. By doing that I can even play a small tune depending on what kind of event that triggered the alert. But in the end ran out of timers in the AVR so it could not output any frequency. Instead I purchased an active piezo speaker which outputs 4khz. This I connected to a data pin on the AVR to be able to turn the sound on and off. This is not optimal but better than no sound at all. I started off by connecting the speaker to an arduino to see that it worked. With the Blink sketch i verified that the speaker turned on and off with 1 seconds interval.

Then I dismantled the display unit to get ready to solder the speaker to the stripboard that the unit is built on. As usual when I started the project I began with the stripboard. Then when it is time to find a casing it is a real pain to get one that the board fits in. But I was in luck and found one that both managed to fit the board and that had the fittings for the screws in just the right places. With some spacers I also manged to get the display and buttons to end up flush with the case front. This is how it looks inside:

Here you can see the component side of the board with the speaker soldered in place:

I then updated the coded to be able to turn of sound if needed. Maybe the sound will be a nag or there is some error that makes it beep all the time. The system measures the temperature that the furnace loads the tank. When the furnace is in full action the loading temperature is at about 87 degrees Celsius. When the logs in the furnace is running out the temperature drops, and around 76 degrees it is completely out. So I set the audible alarm to go off when the temperature has been more than 80 and then goes down to 78. That will tell me that it is a good time to fill up with more wood. The time from loading until filling up is around 3.5 hours.

Here are some examples of the different screens I show on the display:

The first picture shows the main screen with a number of temperatures and how much heat is stored in the tank. The second shows the temperatures as a list instead including the sensors mounted on the tank. The third shows a history diagram which can be set for four different values with different sample times. Currently it doesn't show anything because it has been turned off before taking the picture which clears the history. In the future I'm planning to implement storage on a dedicated logger unit which will contain an SD-card. 4th to 6th image shows the menu, the preference setup and the device setup screen.

Here are the schematics and stripboard layout for the display unit:


  1. Cool project. It’s something really worth looking into in terms of easier access to information regarding your heating system. Logging data on an external device would be useful in looking into problems that may come up in the future, as you can look back and check if the certain condition has repeated before and what might have happened that day to trigger it.

    Royal Manuel

  2. I agree. Getting data for when problem arises and finding common occurrences can be helpful when you have to fix something or providing a professional fixing it enough information to go with and make your lives much easier. Too bad about the first point, but I have to agree with you. That could be too much of a nag and could be remedied by checking #2.

  3. Its amazing to see this project and i would like to appreciate for your hard work. I want to know that if there will be a problem arises anytime ,then what will be solution of that.? There is a company named as fepheatcare which these type of services with installation and maintenance also.