Cooling Home Audio with a PLC using X10 and Dallas DS18S20

WARNING : Electricity can be lethal, this work should only be attempted by a licensed electrician

We recently purchased a new TV unit. High on my priorities was ventilation. I own two NAD C272 stereo power amplifiers (one to power inside the house and another to power my shed and garage). I really like these devices, they are serious no nonsense premium power amps and have the same effect on your ears as moving from crop sensor based D-SLR to a full frame. The bad news is earlier revisions of this power amplifier lacked thermal cut out, I found out the hard way. Boom, look at that cap.

Even though this new entertainment unit is quite open, the NAD is 190mm high and only fits in by 17mm, this surely wasn’t going to cut it and with NAD posting a warning on their website I didn’t want to test my warranty, again.
A solution needed to be found.

My solution was to leverage my PLC to drive fans which I have mounted in the back of my cabinet.

Breakdown of parts (for one Power Amplifer)
– 2 : 119mmx119mmx39mm 240V fans (2 per power amp)
– 1 : X10 Lighting module with dimming functionality, I used an LW12
– 1 : Electrical junction box
– 1 : Patch cable
– 1 : Dallas DS18S20
– 1 : Wall plate for RJ45
– 1 : Electrical cord terminated to your countries wall sockets
– 1 : A length of heat shrink
– 1 : Various screws

Tools used
– Soldering Iron
– Pliers
– Screw Driver
– Device to drive X10 modules and read Dallas thermometer, I am using a HVPRO
– Hole-saw to match your fan diameter
– Drill to drive hole-saw
– Compass & Pencil

Step 1: Wire in LW12 to cord
The LW12 will be driving the fans. As high voltage is being used, for safety purposes this is enclosed in an electrical junction box. The electrical donor cord was cut in two. The first segment is used to go from the wall socket to the LW12, the second segment is used from the LW12 to the fans. The connections are as follows.

Cord Segment 1 : Brown (active) –> Red (active input)
Cord Segment 1 : Blue (neutral) –> Black (shared neutral)
Cord Segment 2 : Brown (active) –> Brown (active output)
Cord Segment 2 : Blue (neutral) –> Black (shared neutral)

Step 2: Create the thermometer
In order to deem when we need the fans to turn on and their appropriate speed (more thinking sound) we must first know what the temperature is. I am using a Dallas DS18S20 thermometer to achieve this.
A few things need to occur here, as these thermometers all connect to the same bus we must know the address of the device. Unfortunately this is not provided and the only way to read this 64-bit address with my PLC (Homevision Pro) is to disconnect all other sensors from the bus and just have this unit connected. So that is what we have done. Maybe yours is better?

In the above we can see the address of this device is, save this to a new variable. In this case it is my 4th sensor and given we start counting from 0, this is digital temp sensor number 3 in my system.

Once we have the address we can connect everything back up (dont forget to test if you have broken anything) and solder the DS18S20 to the end of a patch lead. I decided to use brown for negative, orange for 5V DC and blue for data.

Add heat shrink and enclose in container. I used a plastic container from a cutting tool and covered this in heat shrink and slid the DS18S20 and secured with two cable ties. These are really not needed as the fit should be snug

Step 3: Establish the link between the Dallas DS18S20 and HVPRO

I now needed to get the HVPRO talking to the thermometer. For all of my other sensors I use a 4 core multi strand cable but I didn’t think of this earlier and I have a double storey house. My solution was to use the existing Cat 6 cable I left beind my wall. I luckily have 4 ethernet cables behind this wall unit. 2 are used for data, 1 is used for RS232 and the 4th is now used for thermo.

The DS18S20 sensor can now be connected and placed on top of the NAD C272.

We now need to build our X10 driven fans.

Step 4: Link the LW12 to the fans
We need to link the LW12 to the fan. As a test I have connected the LW12 to a fan in my garage to test the variable speeds. Please note I did not insulate connections for this test. This can be very dangerous and extreme caution should be taken during these steps. The LW12 is speed limiting the fans which are an inductive load via a resistive coil.

Step 5: Wire the two fans and LW12 together
After testing in Step 4 it is time to make things a little bit more permanent. I used heatshrink to double insulate the wires, given the voltage / amperage combination is fatal I dont wish to take chances.

Step 6: Putting it all together – mounting the fans
It is now time to mount the fans. I would suggest using a hole saw to get a nice round cut. I had used a 130mm hole saw to mount the fans. Take your time, measure twice. The fans are designed to suck air from behind and push over the power amplifer

Measure twice, cut once. My pants are awesome.

130mm hole saw

First fan mounted

Both fans mounted, a few cable ties used to take load of any of the connections

Both fans mounted, very neat fit

Step 7: Add logic
Everything is connected but the PLC doesn’t know what to do. We better help it so here is some code to turn to the fans on (including a fail safe). It will need modification to log more data. Integer values are in degrees Fahrenheit + 50.

Step 8: Test
After about 15 minutes of hard load on the power amp the temperature has risen from the ambient 16c to 32c, you can see in the graph the fans flick on for around 1 minute, reduce the temperature and then power off. I have found I am unable to get the fans to spin faster than the first defined threshold

Given the data from thermostat is stored in a variable in the PLC we can keep track and model this in our NetIO front end which is displayable on phones / tablets that we use in our family


All in all, this solution has solved my problem and over the last two years I haven’t had any thermal related issues. The fan’s do their job when seldom needed and if I can’t poll the thermostats the fail safe logic cuts the power to the units.

Shane Baldacchino

Leave a Comment