Heyu
Description
Heyu is a driver and control program for managing Power Line Interface Modules such as those made by X10. This program is only useful if you have such a module connected to your server. Note that while there are alpha level quality drivers for the USB versions (e.g. CM15) the drivers and links below relate to the serial port versions (such as the CM11a).
This How-to describes the installation of heyu only on SME Server. Please refer to Heyu's product and help pages for operation.
Links
Heyu home page
Optional Frontends:
http://heyu.tanj.com/heyu_links.html
Neil Cherry's
Credits
Initiated: Christian - created initial procedure and initiated wiki entry
Obtaining the software
The software is available only in source form from: http://heyu.tanj.com/download/
create and go into a temporary directory to work with the files and download the latest version. For example:
wget http://heyu.tanj.com/download/heyu-2.3.2.tgz
Expand the software:
gunzip heyu-2.3.2.tgz | tar -xvf -
Enter the newly created directory (in this case heyu-2.3.2).
Installation
Heyu needs to be compiled and installed to work thus you will need to temporarily install gcc.
yum install gcc ./Configure make make install
You will be asked for the serial port of your PLC module (e.g. my CM11a is on /dev/ttyS5).
When asked, you should choose to put the x10.conf file into /etc/heyu.
The binary should have the path /usr/local/bin/heyu
man pages will also be installed.
Now let's clean up. you can remove the temporary directory where you created and compiled the heyu program.
You should also remove gcc:
Configuring to start Automatically
Depending on how you plan to use Heyu, you may wish to have it start automatically on reboot. This would be necessary for example if you wish it to run scheduled timers.
Lets make sure it starts if and when we reboot.
db configuration set heyu service status enabled ln -s /etc/rc.d/init.d/e-smith-service /etc/rc.d/rc7.d/S99heyu
You will also need to create a start up script /etc/init.d/heyu:
#! /bin/sh # Start script for Heyu (X10) communication process HEYU_BIN=/usr/local/bin/heyu # Source function library . /etc/rc.d/init.d/functions RETVAL=0 prog=heyu case "$1" in start) echo -n $"Starting $prog: " daemon $HEYU_BIN start touch /var/lock/subsys/heyu echo exit 0 ;; stop) echo -n $"Shutting down $prog: " killproc $HEYU_BIN rm -f /var/lock/subsys/heyu echo ;; reload) echo -n $"Reloading $prog daemon configuration: " $HEYU_BIN restart RETVAL=$? echo ;; restart) $0 stop $0 start ;; status) status $prog ;; *) echo $"Usage: $0 {start|stop|reload|restart|status}" RETVAL=1 esac exit $RETVAL
Initial Launch
Start heyu
/etc/rc.d/rc7.d/S99heyu start
This should be all you need. if you wish to monitor commands going through the X10 interface then in an open terminal window issue the command:
heyu monitor
Documentation
Heyu is very well documented and includes man pages. Start with:
man heyu
Note also the other utilities available in the "SEE ALSO" section of the man page.
Additional Software
There are a number of front end programs which utilize Heyu including those to configure and monitor such as at:
http://heyu.tanj.com/heyu_links.html
And also some that allow things like x10 commands to trigger scripts in your server or integrate with perl scripts. Keep in mind that X10 signals are not secure so any commands you have triggered from an x10 signal may be accessible by others.
http://www.linuxha.com/athome/index.html#Software
User experience
- Tested with SME Server 7.3 and X10's CM11a - Works