Topics...

Overview

xAP in a nutshell

xAP is a broadcast-based open  protocol which allows Home Automation devices to interoperate with the minimum of fuss. It bridges multiple networks, potentially allowing devices to  communicate regardless of the physical medium to which they are connected. For example, a serial device such as an alarm system can send status update messages which can be heard by PC's on the LAN.


What are the practical applications of xAP?

xAP is "Home Automation Glue". It's a great way to plumb together devices, systems or software which wouldn't otherwise communicate. As an open standard, any developer or vendor can add xAP support to their systems, and can immediately communicate with a wide variety of xAP capable devices - wherever they are located on the network - with a minimum of effort.

In practical terms, this means that many systems can share the same resources. For example, my heating controller, thermostats, burglar alarm system and weather station are all xAP enabled. So now the heating controller is able to adjust the heating programme based on occupancy, adjust it according to prevailing weather conditions and take account of my own preferences set via the thermostats.

 I also have a number of display devices in the house - LCD's, tablet PC's and so on - and they are able to intercept status messages from these systems, displaying, for example, the current temperature for the thermostat in a specific room. In addition, when someone calls, or an important e-mail arrives, that is also flashed up on the appropriate screen.

 Of course, it's not always convenient to read an LCD, so these displays are also supplemented by a text-to-speech announcement at certain times of the day -- intercepting only those specific display messages that I want announced.

 None of the technology that I use xAP with is particularly revolutionary in Home Automation circles, but systematic integration provides an infinitely more flexible approach than anything that I have come across to date. And because the technology isn't reliant on a single central controller, the system is also considerably more resilient -- the probably of being plunged into darkness is that bit more remote with xAP than with traditional PC software controllers.

What does xAP mean for the developer?

Why develop for xAP

xAP provides a proven, universal, open, means of interconnecting devices. Before xAP, it was necessary to develop a specific connection with each device or system you needed to communicate with. With xAP,  sending and receiving messages only needs one simple API to be mastered, and messages are sent just once, irrespective of the number of recipients. Unlike  other protocols in the same space, it's inherently cross-platform, and very light weight - it will happily run on the most resource constrained device. It  is also designed to operate across networks. This means that it becomes feasible to implement very low cost serial based devices which can still interoperate effectively with sophisticated controllers, PC's and the internet.

Development  platforms

 Embedding xAP support into devices is simple - although the specification appears complex at first sight, developing xAP aware applications is actually very straightforward. There are a number of toolkits available from a variety of sources to get you started - and most of these come with source code so you can see how they work. The xAP automation web site has a definitive list of  resources; on this site you'll find toolkits to support development on Rabbit microcontrollers, PIC microprocessors, Pocker PC PDA's, PC's running Windows - both Visual Basic and gcc environments are supported - as well as Linux,  including a disk-less distribution which can boot from compact flash or CD and  the TiVo Personal Video Recorder.

Not a developer?

If hardware and software development is not your thing,  you can still use xAP! Most of the applications are available as binary downloads, and the documentation is improving all the time. One of the guiding  design principles behind xAP is to aim for plug-and-play simplicity; have a go and tell us what you think! I'm always happy to help with individual queries, time allowing.

Related...

 

Copyright (c) 2002-2006 Patrick Lidstone unless otherwise stated.
All rights reserved.