Switch Ikea Tradfri LED bulbs with Logitech Harmony Elite \ Ubuntu with HA Bridge \ Athom Homey

Introduction

The Homey is a great device. This device can control an incredible amount of smart home devices of many brands, partly due to the support for different protocols like Z-Wave (Plus) and Zigbee. Including the Ikea TRADFRI LED bulb, and without using the TRADFRI Gateway. Seperate gateways / bridges from different brands are no longer necessary and that makes the Homey extremely powerful.

Before I purchased the Homey, I already owned a Logitech Harmony Elite remote and it was (and is) a good thing to have! But it is a pity that Logitech’s software does not support sending HTTP requests. With these HTTP requests you could operate many smart home devices. Like send a HTTP request to the Homey that turns a light on or off.

In the near future I would very much like to replace the Logitech Harmony Elite with the Neeo Remote, and maybe (just a thought! ) the Neeo Remote can also replace the Homey when combined with Node-Red on a Raspberry Pi!

The Logitech Harmony Elite remote has four smart home buttons, see the screenshot on the right. These buttons work out of the box with the HUE Bridge but do not work with Ikea LED bulbs or the Homey. Fortunately there is HA Bridge. A nice piece of software that pretends to be a HUE Bridge.
When using HA Bridge we have some new possibilities. How it works: press a button on the remote, then a signal is received by HA Bridge and HA Bridge sends an HTTP request to the Homey. And then a workflow from Homey switches the Ikea LED bulb on or off!
This way you can ofcourse operate any other device that is controlled by the Homey or other smart home systems! Or even a flow from Node-Red, since it is just a HTTP request that is being sent from HA Bridge! See below my step by step guide.

–rknl

Ikea TRÅDFRI LED Bulb

With a smart LED bulb you can adapt your lighting to different activities, for example by dimming down the light for a cosy atmosphere –
Source and more information


Logitech Harmony Elite

Advanced home control for entertainment and smart devices – Source and more information


Ubuntu Server

Ubuntu is an open source software operating system that runs from the desktop, to the cloud, to all your internet connected things – Source and more information


HA Bridge

Home automation bridge that emulates a Philips Hue light system and can control other systems such as a Vera, Harmony Hub, Nest, MiLight bulbs or any other system that has an http/https/tcp/udp interface – Source and more information


Athom Homey

Connects all your devices at home, even different brands and technologies. Control your home from one app. Automate your home with Flow, play your favorite Music and save energy with Insights. Homey is the central hub for your smart home – Source and more information

Step 1: Add the Ikea Tradfri LED bulb(s) to Homey

First install the IKEA Tradfri App which allows you to connect the bulb to Homey.

The Homey Tradfri app

Then start pairing the bulb. Make sure to keep the bulb very close (I used a small lamp temporarily) to the Homey when pairing! Else the Homey cannot detect the bulb. After succesfully pairing the bulb with the Homey, you can put the bulb into another (bigger) lamp if needed.
Finally make sure you can switch the bulb on or off with the mobile or desktop app.

Step 2: Create flows on Homey

Install the HTTP request flow cards Homey app. This is NOT NEEDED anymore with Homey firmware v2.0 or higher. Then Homey has built-in support for sending and receiving HTTP requests.

The Homey HTTP request flow cards app

Go to the settings page of the HTTP request flow cards app and configure the authorization and whitelist preferences:

  • Enable the checkbox of the authorization header
  • Add the IP address of the Ubuntu server where HA Bridge will be installed to the whitelist

Then it will look like this (in dutch):

Then create a new flow which will turn the bulb on when an http request is received:

Add the card which receives a HTTP GET request with the value “lamp1-on”

Add the card which checks if the bulb (you added to Homey with step 1) is off

Add the card which will switch on the bulb (you added to Homey with step 1)

Note: I prefer to test flows with the Simple LOG app. With this app you can add cards which add text/results to the log within the app settings!

Then the flow will look like this:

The Homey flow to turn the Ikea TRADFRI LED bulb on

Create the following flow to turn the bulb off:

Add the card which receives a HTTP GET request with the value “lamp1-off”

Add the card which checks if the bulb (you added to Homey with step 1) is on

Add the card which will switch off the bulb (you added to Homey with step 1)

Then the flow will look like this:

The Homey flow to turn the Ikea TRADFRI LED bulb off

Step 3: Install HA Bridge on Ubuntu

This time I did install HA Bridge on my Ubuntu server, but in the near future I will probably use HA Bridge inside a Docker container on Raspbian (Raspberry Pi). I think it is a shame to have my Ubuntu server running 24 hours a day just for some smart home workflow and HA Bridge. The Raspberry Pi consumes much less power, I think it is perfect to use with HA Bridge.

Make sure Oracle JAVA 8 is installed. Then the first step is to create a new directory for HA Bridge within your home:

cd ~
mkdir habridge
cd habridge

Download the latest version of HA Bridge, make sure to replace {VERSION} with the latest version (I did use: wget https://github.com/bwssytems/ha-bridge/releases/download/v5.2.1/ha-bridge-5.2.1.jar)

wget https://github.com/bwssytems/ha-bridge/releases/download/v{VERSION}/ha-bridge-{VERSION}.jar

Now rename the downloaded file to habridge.jar, so the service (see below) will always run, even when HA Bridge is updated to a newer version!

mv ha-bridge-{VERSION}.jar habridge.jar

The following steps are needed to start the HA Bridge service (at boot).
Create the ha-bridge.service unit file:

sudo nano /etc/systemd/system/habridge.service

Copy the text below into the editor and make sure to

  • Replace {IP} with the ip address of your Ubuntu server
  • Replace {PORT} with a port number, for example 7070
  • Replace {USER} with your username

Note: You can check if a port is available with the “sudo netstat -tulpen” command!

[Unit]
Description=HA Bridge
Wants=network.target
After=network.target

[Service]
Type=simple

WorkingDirectory=/home/{USER}/habridge
ExecStart=/usr/bin/java -jar -Dserver.ip={IP} -Dserver.port={PORT} -Dconfig.file=/home/{USER}/habridge/data/habridge.config /home/{USER}/habridge/habridge.jar

[Install]
WantedBy=multi-user.target

Reload the system control config:

sudo systemctl daemon-reload

Start the HA Bridge service and enable the service at boot:

sudo systemctl start habridge.service
sudo systemctl enable habridge.service

Now go to http://<SERVER-IP>:<PORT> and check out HA Bridge!

The HA Bridge opening screen with two dummy lamps added

Step 4: Add dummy lamp(s) to HA Bridge

Now we can add one (or more) dummy lamp to HA Bridge. Each dummy lamp can be assigned to a home control button of the Harmony Elite remote (Step 5).

First click the Add/Edit button:

The HA Bridge Add/Edit button

Give the new device a name, for example: “Dummy lamp 1”

Then scroll to the bottom and add the following after “On Items” :

Choose “HTTP Device” as Type

Add “http://homey.home/api/app/com.internet/whitelist/lamp1-on” to Target Item


Select “Get” as Http Verb


Select “text/plain” as Content Type


Click “Add”

And add the following after “Off Items“:

Choose “HTTP Device” as Type

Add “http://homey.home/api/app/com.internet/whitelist/lamp1-off” to Target Item


Select “Get” as Http Verb


Select “text/plain” as Content Type


Click “Add”

Now it looks like this:

Overview of dummy lamp 1

Finally press the “Add Bridge Device” button to add the dummy device to HA Bridge:

Now you can test if HA Bridge can switch the light on and off. Click “Home” to go to the overview and click the test buttons:

The test buttons of dummy lamp 1

Note: If for some reason the light does not switch on or off, start with checking the logs of HA Bridge

Step 5: Add the emulated HUE Bridge (HA Bridge) to MyHarmony and assign the home control buttons

Unfortunately the mobile Harmony app (Android) could not find the emulated HUE Bridge. So I installed the MyHarmony app for Windows.

  • Connect the Harmony Remote to your pc with an usb cable
  • Make sure the Harmony Hub is close to the remote
  • Start the MyHarmony app

Now we want to add the emulated HUE Bridge:

  • Click on “Devices”
  • Click on “Scan for devices” – Important: adding the emulated HUE Bridge with the “Add device” button did not work!!! So the workaround is to use “Scan for devices”
  • Select the found emulated Philips Hue and click Done
  • The emulated Philips Hue is added to the tab “Home Control”

It looks like this:

Philips Hue is added with the Scan for devices button

Now we need to assign the dummy lamp to a button. Click “Buttons” in the menu on the left and assign the dummy lamp!

Dummy Lamp 1 is added to button 1 of the Harmony Elite

This is it! Enjoy controlling your smart home devices with the Harmony Elite!

Leave a Reply