A geek’s thoughts on various stuff
14 Jul
Over a year after it began, the whole-house-audio project is complete. 4 rooms around the house can now be filled with the sound of any of (currently) 4 audio devices thanks to a mixture of hardware and software.
The project had a slightly rocky start, with a prototype not functioning at all and partly destroyed amplifier (which was thankfully fixable by replacing a couple of components). A software alternative was considered at one point, to avoid too much expensive hardware. The hardware solution proved to be less complex and more likely to work.
The living room, dining room, kitchen and master bedroom are host to a pair of speakers each, connected to matching 240W rack-mounted amplifiers housed in my home-made full-height 19″ rack cabinet. The cables that carry the audio signals to the speakers were installed along with 24 runs of CAT5 before moving into the house.
The audio is routed to the amplifiers via an 8×8 VAMS-0808 AV matrix switcher, which allows the 8 outputs to take their inputs from any of the 8 available sources. Only 4 of each are currently in use, so there’s plenty of room for expansion.
4 audio sources are connected via simple custom-altered CAT5 cables, which simply transmit line-level signals over the existing twisted pair infrastructure installed in the house. These sources are currently the DAB radio in the kitchen, the TV in the living room, the computer in the dining room (for playing CDs) and a second DAB radio in the master bedroom.
I’ve written the software to control it all using .Net (C# of course), running on mono on linux. There are four components to this:
There is currently just the one controller front-end, located in the dining room. To listen to the kitchen radio, for example, all that is necessary is to select the ‘Kitchen DAB Radio’ option from the main menu, then select which of the 4 rooms to play it through - or all of them if you are going to be wondering around most of the house.
Thanks to building the web interface with iUi, the system is compatible with the iPod Touch and iPhone, so they can instantly act as frontends for audio control. A second fixed controller may be added in the master bedroom in time, if there’s enough money available. Each front-end costs about £200 in hardware, depending on what bargains can be found on eBay.
The matrix switcher supports both audio and video. Only the audio channels are used at the moment, so there is the very real possibility of using the remaining 4 output zones to connect to TVs around the house and adding some AV sources. This way it’s instantly converted into a whole-house-AV system. The video signals can be carried over the twisted pair CAT5 cables like the audio, but will require a little more hardware to preserve quality. This hardware is relatively expensive, although savings can be made by building the equivalents by hand. Following the tradition of this project, that’s probably what I’ll do. I have done it before while I was at university and it works beautifully.
12 Jul
One thing that has been lacking since the first build of the rack is ventilation. With both sets of doors closed, the inside can get quite warm, especially when iron is turned on. Not any more though, having just completed the installation of 2 active ventilation zones, lighting and a low voltage power supply system complete with rack-mount control panel.
Air is drawn in at the bottom of the rack by 5 quiet 80mm 12v fans, positioned behind a perforated 2U panel inside the front panel of the base. The air is blown vertically into the cabinet from the bottom through a similar 1U perforated panel. Although the draught is barely noticeable, the difference it makes to temperatures at the front of the rack is significant.
With this ‘air curtain’ alone though, the back of the rack still gets very warm. To solve this I’ve installed a relatively huge 200mm ‘Big Boy’ fan into the newly-added top of the cabinet. This sucks out the warm air and dispenses it into the containing room. Together these fans keep the entire cabinet cool.
To power the fans I’ve used an old ATX power supply. In order to make replacement easy when the supply fails, no modifications have been made to it. Instead, I bought a 20-pin molex connector so that I could just plug the ATX connector straight into my system.
The PSU is connected to 4 switches that are mounted on a 1U blanking panel in the front of the rack. I wanted some fancy switches, so I splashed out on some nice chromed illuminated ones from China (via eBay). There’s one green DPDT switch, which switches the PSU on and off, and three blue SPDT switches which control power to the two fan systems and some lighting.
The lighting illuminates the front of the rack, and is there purely for decorative purposes. I had considered using cold-cathode tubes, but the seller that I got the switches from also sells strips of LEDs encased in a flexible transparent rubber-like substance. They are sold in various lengths, but I thought 96cm would be OK for what I wanted (at the time I bought it to experiment with, thinking that it could illuminate the wall behind my desk). This strip is now mounted on the left-hand front door.
15 Jun

One of the things that has been lacking in my bedroom is a TV. I can watch recorded TV programs, DVDs and other videos on my PC, but not at the same time as relaxing on my bed. While I had a week off work I was looking around the Dabs website and ventured across a real bargain of a TV (now discontinued). It supports full 1080p HDTV as well as being a relatively huge 37″ all for just £539. I couldn’t pass this by, so I spent a while doing investigation work and finally decided to take the plunge and buy the thoroughly indulgent item.
When I designed the rack, the idea was that I would eventually get an LCD TV and it would be mounted to the side of the rack. However, it now contains so much equipment that the weight has become a bit of a concern. To avoid problems with the rack castors collapsing under the load - or even the floor of my bedroom doing the same - I decided to mount it in a more traditional location, on the wall at the foot of my bed (though I had to turn my bed around to make it the foot).


Now I needed something decent to connect it to, with the ability to run MythTV and watch video at possibly 1080p resolution. Boron used to live in a HTPC case, but it started getting a little crowded and warm and with the construction of my rack the innards were moved to a 19″ case. That meant that I’ve had a spare high-quality case lying around doing nothing for a while. Now I had the opportunity to bring it back into service.

The Core 2 Duo in my gaming machine has done nothing but impress with its performance and cool running, so I knew what I wanted to base this new machine around. The E7200 2.53GHz was the cheapest Core 2 available on Dabs, so into the basket it went. I wasn’t too bothered about having a high-spec for the rest of the system, and indeed it needs to be farily quiet and cool so for graphics I went with the Asustek Radeon HD3450 256MB and a cheap-but-capable Gigabyte motherboard.

The processor ended up getting swapped for the slightly slower one in aluminium, so I got a small upgrade for gaming at the same time. For the OS I’m currently experimenting with MythBuntu for amd64. I’ve also taken another look at LinuxMCE, which I might give a go some time.

The new machine was named barium, and sits fairly neatly under my bedside table.
6 Apr
For quite a while now I’ve had 2U at the top of the rack consumed by an APW Fire Protection Unit. This clever bit of kit, found by chance on eBay for £15, will extinguish a fire using FM200 gas (with some nitrogen thrown in) when detected by either of it’s two optical smoke detectors.
Until today it hasn’t been plugged in for more than half a second because the alarm appears to be broken inside (or I need to do some sort of configuration which isn’t possible without a manual) and so it was far too noisy to use. The alarm is deafening and certainly does it’s job, but is obviously a little eager to make itself known. Just in case this was an indication that the gas might be released I disconnected the fillament in glass stopper on the end of the canister (later reconnected when I was happy it’s only the alarm that is broken).
To solve the alarm problem I have been forced to snip one of the wires to the sounder so that I can use it. This shouldn’t affect the operation of the unit, though it wont be able to give any audible indication of a fire. There is a visual indicator on the front to back it up. To replace to the audible function I will install a standard household smoke alarm.
I’m just waiting for a backup to complete before I hand over power management to it. In the event of a fire, it will instantly cut power to anything that it feeds, which in this case will be most things that are connected to the UPS. Unfortunately the UPS shutdown functionality isn’t compatible with my UPS since it uses basic status signalling, so if a fire does break out it had best not be in the UPS.
6 Apr
Several months ago I posted some information on the cable to connect a Compaq T2400h to a standard serial port. This weekend I finally got around to trying out the information that I found. I now have the 2.4KVA UPS at the bottom of my rack cabinet talking to my Ubuntu-based fileserver, boron.
The first step was to create the cable. This requires a 9 pin female ‘D’ connector and a matching male connector. For the cable I used an offcut of CAT5, though normally serial cables do not use twisted pair (usually just parallel wires).
The software part is done using NUT, for which there is a package included in the Ubuntu distribution. This software talks to the UPS, monitors it’s status and allows other computers to check the status. The monitoring applications are then responsible for shutting down the computers attached to the UPS should power fail and the battery become critical. So far this is just boron and my Windows machine, aluminium. The latter uses WinNUT to shut down Windows when needed.
There were a few problems getting NUT to work with Ubuntu. First off, the package doesnt put any configuration files in the /etc/nut path, so I had to go hunt for the examples and copy then modify them. The next problem was with permissions for the serial port. For testing purposes I tried running the protocol module as root, but this introduced different permissions problems. The solution was to add the ‘nut’ user to the ‘dialout’ group, which is one group that has access to the serial ports. To my relief this got everything working.
These are the parameters that I can access over the serial connection:
simon@boron:~$ upsc compaq@boron
battery.charge: 97.22
battery.runtime: 1620.000
battery.voltage: 0055.50
battery.voltage.nominal: 0048.00
driver.name: upscode2
driver.parameter.input_timeout: 5
driver.parameter.manufacturer: Compaq
driver.parameter.port: /dev/ttyS0
driver.parameter.use_pre_lf: yes
driver.version: 2.0.5
driver.version.internal: 0.84
input.voltage: 0244.50
input.voltage.maximum: 0276.00
input.voltage.minimim: 0162.00
input.voltage.nominal: 0230.00
output.current: 0001.95
output.frequency: 0050.00
output.voltage: 0215.10
ups.alarm:
ups.delay.reboot: 000
ups.delay.shutdown: 000
ups.load: 21.875
ups.mfr: Compaq
ups.model: UPS 2400 VA FW -0023
ups.power.nominal: 2300.000
ups.serial: E########
ups.status: OL TRIM
These are the resources that I used to get the UPS/NUT combo working:
29 Dec
I received yet more odd looks and comments at work when a few weeks ago I received a delivery of 24 foam tiles. I ordered them from eBay as an experiment in trying to reduce the amount of noise eminating from the rack cabinet. At about £30 it was a bit of a gamble.
9 Dec
Here are some initial interface wireframes for the iPod Touch remote control. I’ve not shown all of the menus because that would be quite a bit of work. These three should give you an idea of what I intend to do though.
Main menu
The main menu summarises the major systems of the house. Clicking on one of the buttons takes you to more controls for that system. The colour of the buttons indicate the overall state of the system - green = OK, yellow = warning, red = error, grey = disabled.

Audio
The audio controls will list the 4 zones, with a drop-down menu next to each button to select the audio source. Clicking the large button switches the zone on or off. Pressing the ‘Use for all’ button copies the settings of the selected zone to all the other zones.

Security
The large buttons display a thumbnail of the live video from the cameras. Clicking on the large button will show the full video feed (resized to fit the iPod’s screen). Cameras can be disabled for privacy.

8 Dec
Whilst pondering over what sensors I could put around the house, I ventured upon the idea of having a ’sensor box’ per room. This would be based upon something like the Netiom xAP, which would connect various sensors to the house’s IP network. Some of the sensors in each room would be different. Here are some examples of the sensors that would be common to all of the rooms:
Room specific sensors could be:
Entrance hall:
Kitchen:
Each of these nodes can then be queried, via the xAP protocol in this case. Temperature could be recorded, although at present our combi-boiler would probably not allow for remote control. Motion detection and door contacts can be used to determine which rooms are occupied, and along with the window sensors could be used as a secondary security system. The light sensors would be used to control the house lights.
Having one single ‘node’ to talk to would do away with having lots of independent sensors that would probably all communicate differently. Thanks to having picture rail throughout most of the house, there won’t be a problem with hiding the wiring. I’m not sure how big the boxes would be, but I dont think they would be massive. I just need to find the money to build a prototype.
8 Dec
Here’s a video I’ve put together about some of my projects. Sorry about the wobblyness and wonkyness - I’m not sure where I’ve put my tripod.
7 Dec
In the same way that the saying “you’ve got to spend money to make money” works, sometimes it’s also necessary to spend energy to save energy. An automated home may have more gadgetry than normal homes, but if set up correctly these little power-consumers can help to save energy. While the debate about whether the apparent global warming trend is the result of our actions, it can’t hurt to try to reduce energy use (or rather, conversion) as much as possible.