ikea domoticz

In het verleden heb ik mijn Trädfri-systeem van Ikea al eens gekoppeld met HomeBridge, zodat ik de Ikea-lampen kon koppelen met HomeKit en dus kon bedienen via mijn iPhone. Sinds enige tijd biedt Ikea ook HomeKit-ondersteuning waardoor deze koppeling niet meer nodig is.

Wanneer je een AppleTV4 of iPad met minimaal iOS10 hebt, kun je ook zaken automatiseren met scenes en dergelijke. Heb je die ApplTV of iPad niet, dan ben je aangewezen op de zeer beperkte functionaliteit van Trädfri, waarbij je bijvoorbeeld lampen kunt schakelen op basis van tijd.

Natuurlijk wil ik lampen ook kunnen schakelen op basis van sensoren, tijd en combinaties hiervan, maar met de mogelijkheden van Trädfri zelf kom je niet heel ver. In Domoticz is het mogelijk om lampen te schakelen op basis van veel verschillende factoren en daarbij ook condities te hanteren. Bijvoorbeeld: schakel een lamp in wanneer een bewegingssensor geactiveerd wordt ná zonsondergang. Dit soort logica hanteer ik al een tijdje met de Zwave-devices in mijn huis, maar helaas nog niet met de Ikea-verlichting. Het wordt dus tijd om Domoticz nu ook eens te koppelen met Trädfri.

Standaard wordt Tradfri niet ondersteund door Domoticz, maar met de installatie van wat (opensource) software wordt het toch mogelijk. Trädfri ondersteunt namelijk het COAP-protocol, waarmee het basisstation een API biedt weer te tegen kunnen praten.

Om te beginnen hebben we het IP-adres van het Trädfri basisstation nodig. Dit basisstation verkrijgt zijn IP-adres via DHCP. Het is niet mogelijk om een vast IP-adres in te stellen. De eenvoudigste manier om achter het IP-adres van het basisstation te komen is door het MAC-adres af te lezen op de achterzijde van het apparaat. Met dit MAC-adres kun je dan in je router het IP-adres van het basisstation opzoeken. Noteer het IP-adres van het basisstation om het later te gebruiken.

Om de koppeling op te bouwen, moeten we een Python plugin installeren. Op het moment dat ik dit artikel schrijf, worden plugins enkel nog in de beta-versie van Domoticz ondersteund. Dat wil zeggen: Domoticz is er in twee versies: stable en beta.

  1. Open Domoticz in je browser door te surfen naar http://<ip_adres_van_domoticz>:8080
  2. Klik vervolgens op Instellingen en daarna weer op Instellingen. De instellingen-pagina wordt nu geopend.
  3. Kies nu onder Software-updates het distributie-kanaal Bèta.
  4. Klik nu rechtsboven weer op Instellingen en vervolgens op Controleer op updates.

Wanneer Domoticz draait op de laatste Beta-versie, kunnen we de plugin voor Ikea’s Trädfri installeren. Voor de plugin is Python versie 3.5 minimaal vereist. Wanneer je Domoticz hebt draaien op een Raspberry Pi (en dus op het RaspBian OS), heb je waarschijnlijk Python versie 2.x nog draaien en zul je dus je Python moeten upgraden.

Als je Python versie 3.5 of hoger hebt draaien, kun je verder gaan met de volgende stappen:

  1. Log in op je Domoticz-machine via SSH.
  2. Installeer pytradfri.
    Dit is een Python library die wordt gebruikt door de Domoticz-plugin die we zometeen gaan installeren. Je installeert deze library met het volgende commando:

    pip3 install pytradfri
  3. Vervolgens installeer je de Twisted library. De Domoticz-plugin maakt ook hier gebruik van:
    pip3 install twisted
  4. Ga nu naar de plugins-directory van je Domoticz installatie (op mijn Raspberry Pi is dat /home/pi/domoticz/plugins) en clone de Ikea Trädfri plugin via Git:
    cd /home/pi/domoticz/plugins
    git clone https://github.com/moroen/IKEA-Tradfri-plugin.git IKEA-Tradfri
  5. Creeer een identiteit en een sleutel. Hiervoor heb je het IP-adres en de beveiligingssleutel van je basisstation nodig. Het IP-adres heb je eerder al opgezocht en de beveiligingssleutel is te vinden op de achterzijde het basisstation. Het volgende commando genereert een sleutel voor de gebruiker DOMOTICZ. Vervang <BEVEILIGINGSSLEUTEL> en <IP_ADRES_VAN_BASISSTATION> door je eigen varianten.
    coap-client -m post -u "Client_identity" -k "<BEVEILIGINGSSLEUTEL>" -e '{"9090":"DOMOTICZ"}' "coaps://<IP_ADRES_VAN_BASISSTATION>:5684/15011/9063"
  6. Wanneer het commando succesvol wordt uitgevoerd, krijg je het onderstaande terug. In dit voorbeeld is de aangemaakte sleutel: 1.2.0042. Jouw sleutel zal natuurlijk een andere waarde bevatten. Noteer deze waarde. Je kunt hem namelijk maar één keer aanmaken en hij is naderhand niet meer op te roepen.
    {"9091":"PSK","9029":"1.2.0042"}
  7. Nu gaan we de COAP-adapter activeren. Hiervoor gebruiken we systemd.
    cd IKEA_tradfri
    sudo cp ikea-tradfri.service /lib/systemd/system/
    sudo systemctl daemon-reload
    sudo systemctl start ikea-tradfri.service
  8. Om er voor te zorgen dat de ikea-tradfri service automatisch wordt opgestart wanneer je de Domoticz-machine herstart, voer je het volgende commando uit:
    sudo systemctl enable ikea-tradfri.service
  9. Ga nu weer naar Domoticz in je browser en klik op Instellingen en vervolgens op Hardware.
  10. We gaan nu nieuwe hardware toevoegen. Kies bij type de optie IKEA Tradfri. Vul het IP-adres van je basisstation in. Bij identity vul je in: DOMOTICZ. Bij PSK vul je de gegenereerde sleutel in. Klik tot slot op Toevoegen.

    tradfri-domoticz-settings

  11. De gekoppelde lampen van Ikea verschijnen nu bij Instellingen->Apparaten. Je kunt ze nu gebruiken zoals alle andere devices in Domoticz.
Reacties