Management of xPL protocol

From eedomus - Documentation

Jump to: navigation, search

Contents

Introduction to xPL protocol

The xPL protocol consists of small text messages that are sent over the network Ethernet to allow two devices to communicate with each other.

This protocol was established in 2003 to create an abstraction of the technology and make it easier to communicate between different systems.

The xPL project website : http://www.xplproject.org.uk

Integration of xPL protocol in eedomus

The eedomus box knows how tocommunicate with two different xPL devices: xPL Actuators and xPL Sensors ( )

XPL actuators are used to send commands over the network to control other devices while xPL sensors can retrieve the values ​​transmitted by xPL devices.

Actuators xPL

The xPL actuators operates two diagrams that are automatically adapted to the selected module configuration protocol.

Schemes are x10.basic (for x10 protocols Domia, rts ) and schema ac.basic (for Chacon / protocol DIO)

All xPL messages generated for an actuator xPL x10.basic kind of will of the form:

 xpl-cmnd
 {
     hop=1
     source=eedomus-rfxcom.xxxxxxxxx
     target=*
 }
 x10.basic
 {
     command=on|off|dim
     device=[A1-P16]
     [level=0-100]
     [protocol=arc|rts]
 }

The level attribute is only specified if the command is dim. The protocol attribute is only specified if it is not x10.

The xPL messages generated for actuator type ac.basic will be like:

 xpl-cmnd
 {
     hop=1
     source=eedomus-rfxcom.xxxxxxxxx
     target=*
 }
 ac.basic
 {
     address=(0x01 - 0x3FFFFFF)
     unit = (1-16)
     command=on|off|preset
     [level=0-15]
 }

The level attribute is only specified if the command is preset .

The drivers of the box xPL eeDomus will automatically manage the field command sent by protocol and the value of the device (100 = on, 0 = off , between 0 and 100 = dim or preset according to the protocol)

Sensors xPL

The eedomus box will automatically decode all received xPL messages with the type sensor.basic.

The message must be formatted as follows :

 xpl-stat
 {
     hop=1
     source=*
     target=[eedomus-rfxcom.xxxxxxxxx | *]
 }
 sensor.basic
 {
     device= id_du_device
     type= type_du_device
     current= valeur_du_device
 }

The adding of a xPL sensor on the eedomus box specifying its parameters in the address (corresponding to id_of_device) and associated type (corresponding to type_of_device ) will be automatically updated at each reception of the corresponding xPL message.

To configure the devices of this type, see the XPL devices