Gentoo Wiki


This article is part of the HOWTO series.
Installation Kernel & Hardware Networks Portage Software System X Server Gaming Non-x86 Emulators Misc

Please format this article according to the guidelines and Wikification suggestions, then remove this notice {{Wikify}} from the article



This is my First attempt at putting up a Wiki Page so please forgive me if things are out of sorts.

This Wiki is to help you get Heyu version 2, the light Control X10 software up and running on Gentoo.

Check this site for more info and for the most up-to-date release:

Juan C. Mendez is unofficially maintaining an ebuild for heyu, that can be placed in an overlay tree for Gentoo and will make easier the installation. See details at

Another version is unofficially maintained by Sven Schwyn at

Compile and install

Log in as a normal user (Not Root)

Code: Go to yout home directory (~)
# cd ~

Code: Get the tarball for heyu and extract it
# wget
# tar -xzvf heyu-2.1.2.tgz
# rm heyu-2.1.2.tgz
# cd heyu-2.1.2

After you untar the tarball for heyu, you need to build it.

Code: Build heyu
# sh ./Configure
# make

Heyu is now compiled, ready to be installed. In order to install it, we need to become root.

Code: Become root and install heyu
# su
# make install

Look for Option 3? To let the entire system use it by putting the configuration file in /etc/heyu


Pick /dev/ttyS0 for serial port 1.

# cp heyu /usr/bin

You might want to alter your /etc/heyu/x10.conf or /etc/heyu/x10.sched

File: /etc/heyu/x10.conf or /etc/heyu/x10.sched
LOG_DIR /var/log

Ok now you have everything ready you need to upload your schedule and synch up your Unit to the system

# heyu upload
Schedule: /etc/heyu/x10.sched
Expanded timers =   8
Max dawn/dusk error over the 366 day period = 0 minutes.
Interface memory free = 926 bytes ( = 90.4% )
See file ./report.txt for details.
Uploading 64 block memory image to interface.
Setting interface clock to current Standard Time.

Create an init script

Now Build up your Daemon

File: /etc/init.d/heyu
start() {
       ebegin "Starting heyu"
       start-stop-daemon --start --background --quiet --make-pidfile --pidfile /var/run/ --exec /usr/bin/heyu engine
       eend $?
stop() {
       ebegin "Stopping heyu"
       start-stop-daemon --stop --exec /usr/bin/heyu stop
       eend $?
reload() {
       if [ ! -f /var/run/ ] ; then
       ebegin "Starting heyu"
       start-stop-daemon --start --background --quiet --make-pidfile --pidfile /var/run/ --exec /usr/bin/heyu engine
       eend $?
       ebegin "Restarting Heyu"
       start-stop-daemon --stop  --exec /usr/bin/heyu stop
       start-stop-daemon --start --background --quiet --make-pidfile --pidfile /var/run/ --exec /usr/bin/heyu engine
       eend $?

I have to say the reason I am not using the start-stop-daemon to shutdown the heyu process is that durring the start of "heyu engine" it assignes a pid that launches the acutal deamon so that when you go to destroy the daemon it is usally one pid number greater then the one in the current PID file.

Change it to allow it it execute.

# chmod +x /etc/init.d/heyu
# /etc/init.d/heyu start
 * Starting heyu ...                        [ ok ]
# heyu monitor

Go to any X10 button and check to see if the "Monitor" picks it up when you turn on a light.

Hit CTRL-C to stop this action.

You can also look in /var/log/heyu.log.ttyS0

# less /var/log/heyu.log.ttyS0
Code: Adding Heyu to default runlevel
# rc-update add heyu default

This should get you up and running on Heyu.


Retrieved from ""

Last modified: Sun, 30 Sep 2007 09:22:00 +0000 Hits: 9,660