Installing HomeGenie 1.4

Select target architecture:

Enter the following commands in a terminal:

wget https://github.com/genielabs/HomeGenie/releases/download/v1.4.0-beta.57/homegenie_1.4.0-beta.57_linux-arm64.zip
unzip homegenie_1.4.0-beta.57_linux-arm64.zip

Running in a terminal

Set the current directory to homegenie and run the ./HomeGenie command:

cd homegenie
./HomeGenie

To stop the application press CTRL + C

The video below shows the installation procedure of HomeGenie on a Raspberry Pi Zero 2 W with SD card prepared using official Raspberry Pi Imager application and configured with Raspberry Pi OS Lite (32 bit), WI-FI connectivity, and SSH enabled.

Running as a system service

HomeGenie can be installed as a service. The procedure is different depending on the hosting operating system.

Recommended procedure for Linux

  1. Add a specific user for the service and copy the content of homegenie folder to the new user home directory:
sudo useradd homegenie
sudo cp -ar ./path-to-extracted-folder/homegenie /home/homegenie
sudo chown -R homegenie:homegenie /home/homegenie
  1. Create the file /etc/systemd/system/homegenie.service with the following content:
[Unit]
Description=HomeGenie

[Service]
Type=notify
User=homegenie
WorkingDirectory=/home/homegenie/
ExecStart=/home/homegenie/HomeGenie
Restart=on-failure

[Install]
WantedBy=multi-user.target
  1. Refresh SystemD configuration
sudo systemctl daemon-reload
  1. Start the service and enable HomeGenie to auto-start on next system boot:
sudo systemctl start homegenie.service
sudo systemctl enable homegenie.service

Other possible commands are status, stop and disable.

See also:

Optional post-installation steps

Depending on the hosting operating system, it might be required to run additional steps in order to allow the service to access the Serial port, USB devices and GPIO hardware.

Enabling audio playback and voice synthesis:

# Audio playback utilities
sudo apt-get install alsa-utils lame
# Embedded speech synthesis engine
sudo apt-get install libttspico-utils

Granting access to the Serial port and/or GPIO to the homegenie user:

sudo gpasswd -a homegenie dialout
sudo gpasswd -a homegenie gpio

Enabling CM15/CM19 USB controller for X10 home automation:

sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev

then, to grant access to CM15/CM19 USB devices to the homegenie user, create a new text file with the name /etc/udev/rules.d/98-cm15_cm19.rules and add the following lines to it:

# CM15 AND CM19 X10 controllers
ATTRS{idVendor}=="0bc7", ATTRS{idProduct}=="0001", MODE="0660", GROUP="homegenie"
ATTRS{idVendor}=="0bc7", ATTRS{idProduct}=="0002", MODE="0660", GROUP="homegenie"

save the file and unplug and plug the device again.

Accessing the UI

HomeGenie user interface can be accessed from any web browser entering the url

     http://<server_ip>:<port>/

Where server_ip is the IP address of the machine where HomeGenie is running and port can be 80 or the first available port starting from 8080. (ex. http://192.168.1.150:8080/)

To find out which port number the service is running on, enter the following command from the homegenie folder:

cat serviceaddress.txt

The port settings can be changed either from the maintenance page or editing the systemconfig.xml file located in the application folder. The service must be stopped when editing the configuration file manually.

 
Next arrow_right 
HomeGenie
Documentation — version 1.4