Making The Most of xPLHal - Part 1

Making the most of xPLHal - Part 2

In the first of a series of articles about xPLHal users, Ian Lowe discusses some of the things he is doing with xPLHal to enhance his home and his business.


Here's what I have in place at the moment...

I have an Aircon unit (a B&Q special, for the UK readers) sitting on an AM12 Appliance module. It's set to blow full cooling into my server area in the office.

I have Motherboard monitor running on my media server (the one that tolerates heat the worst, on account of the large number of drives) - it sends out a nice regular temperature update thanks to John's xPL plugin for the app.

I have xPLHal set to capture this message, and store the Media Server Proc Temperature in a Global variable.

A second determinator watches for this global variable changing - it has three conditions:

1) that the temp global just changed

2) that the global's value is more than 36 degrees and

3) the time is during our normal day (8:30 till 11:00)

If this matches, the determinator:

1) Sends a message to the OSD devices to let us know that the aircon is on

2) switches on the aircon

3) updates another global with the aircon state

When the temp drops to below 30 degrees, the aircon pops off again.. very slick, and fits nicely into the house tasks - our fish tank pump is kinda loud, and the vibration is at just the right level to keep you awake... So events at 7:30am and 11:30pm turn the pump on and off respectively - the fish tank lights on the other hand come on at 8:00 and off at 8:00pm for a nice healthy regular day.

The curtains in the living room and dining room open and close each day, right on cue - the bedroom ones close at night, but don't open till we open them in the morning. If we set the global variable to tell the house that we are on holiday, they open automatically at 10am anyway.

When we sit in the living room to watch TV or movies, we quite often eat dinner there - and don't like sitting in the dark. We have three uplighters in the corners - the one behind us is great for eating with and doesn't muck up the projector's quality too much, whilst the front ones bring the light up to a nice warm level for reading, socialising etc. The rear one is on X10 code L2, the front ones are both on L3.

All of the X10 transmitters in the house send "E" house codes, so xPLHal watches for any "E" On message. I have a global variable in that tracks the light states. 0 is all off, 1 is rear only, 2 is full on. This is done using determinators, and whilst being a little slow (2x X10 round trips!) it works nicely.

We work from home, and love listening to radio and music during the day, but we want to sound professional on the phone - we use ISDN for our phone lines, so we have a wee caller ID app that sends out xPL CID messages. xPLHal stores the last caller number, and the time of that call - again, we use a determinator watching for these values changing to swing into action... And the complexity of xplhal lets us be nice and flexible.

If it's during the business day, a business call will display an OSD message on all devices, switch off the speakers in the Kitchen (on an X10 module) and mute the speakers in the office.

If it's a personal call, we don't mind leaving the music on (it's usually a friend calling, so no problem there) but still display the messages.

All of the PCs in the house run xplVol32, a replacement for the sndvol32 app, so we mute whatever sound is playing, whether it's radio, Mp3 etc.

If it's out of hours, we display the message on OSD, but don't bother with muting the speakers. We use a wee pushbutton app on the desktop to send a preset xPL message to "un"mute the speakers - this also lets us have control over the speakers, so if we make an outbound call, we can mute the speakers first, then turn them back on again when done.

At around 1:30am, the house does a quick once round, turning off stuff that we usually forget, like the subwoofer in the living room, or the projector (it's standby mode keeps the fans spinning, and isn't really "off).

For the future, I'm planning to replace the X10 lamp system in the living room with a faster VIOM type solution. I'm going to add a similar setup to the kitchen, so that I can bring on the under-unit lamps, then the main light as required.

I'll also be adding the central heating control back into the picture - I had an X10 system for controlling the heating, but it started misbehaving and turning the heating etc on all the time. I'm going to replace that with a wee relay board I have on the desk here - integrating back into the system I had in place...

Once a day, the weather script produced by one of the guys on here (John Risby I think?) downloads forecast data from Glasgow Airport - I have a determinator set to watch for that data changing, and if the overnight temperature is expected to be less than 5 degrees, I set a global called "ColdNight" to true - this sets the heating to come on a couple of times during the night for 45 minutes or so - long enough to stop the pipes (and the humans!) from freezing. In the future, I'm going to be adding some dallas 1-wire sensors to the mix, so that this becomes even more efficient.

Making the most of xPLHal - Part 2


This page was last modified 00:10, 22 Nov 2005. This page has been accessed 809 times.

  
MediaWiki

Copyright © The xPL Project 2004-2007