Main Page

From xPL
Revision as of 09:04, 5 November 2014 by Fcorthay (Talk | contribs)

Jump to: navigation, search

The xPL protocol allows different devices to exchange information in a simple manner. The devices broadcast their messages to the others and register to a hub in order to receive the messages sent by others.

The protocol is light enough to run on simple machines such as the BeagleBone. Some setup insructions show how to prepare a BeagleBone to use with xPL. A comparison of different single-board computers gives an idea of speed and power consumption issues.

The hub and the devices can be installed on different platforms. The system shown here bases on Perl, which is part of the Linux and Mac OS operating systems and can easily be installed on Windows.

Install xPL

Hub

The first step to xPL automation is to install a hub.

This has to be done on each machine that participates to the xPL network.

Serial port

Many devices are controlled over an RS-232 serial port.

For this, the xPL serial port device can be instantiated as many times as needed. The xPL infrastructure supports this by the fact that these devices are differentiated by their name.

Audio output

In the same way as your PC, your home wants to alert you from time to time.

For this, the xPL alert device can emit alert sounds. This can fro example be triggered by other xPL messages.

Controlled equipment

The xPL scripts found here allow to control:

Triggered actions

An xPL device sends clock ticks every minute.

A central xPL device monitors all the messages and is configured to trigger specific actions on specific messages. This allows:

RESTful web service

A RESTful web service allows to query and modify the state of the home using HTTP methods.

It works in conjunction with the home state xPL device.

Moving xPL services

Movng services require to stop them on a given device and starting them on another.

Stop a service on a given device:

su
ll /etc/init/xpl-*
initctl list | grep running | grep xpl-
SERVICE='xpl-central'
SERVICE_CONF="/etc/init/$SERVICE"
echo -e "\n$SERVICE_CONF.conf\n"
echo ; cat $SERVICE_CONF.conf ; echo
service $SERVICE stop
echo "manual" >> $SERVICE_CONF.override
reboot

su
SERVICE='xpl-central'
initctl list | grep $SERVICE

On the other machine, install and launch the service as explained in the corresponding page.

MediaWiki editing

Consult the User's Guide for information on using the wiki software.