Homebridge op RPi via Docker

Homebridge wordt geïnstalleerd op een Raspberry PI en fungeert als interface tussen Apple HomeKit en apparaten die standaard niet door HomeKit ondersteund worden. Bijvoorbeeld het klik-aan-klik-uit systeem, Sonos muziekspelers of de Nest-thermostaat. Met Homebridge zijn deze apparaten vervolgens aan te sturen via Apple HomeKit op de smartphone of tablet.

Ook kan Homebridge gebruikt worden als oefen-project om ‘dummy’ apparaten aan te maken en om dan te kunnen aansturen via HomeKit. Hierdoor leer je hoe de applicaties werken voordat je echte HomeKit-devices gaat aanschaffen.

Hieronder een beschrijving hoe je Homebridge in een Docker-container kunt installeren op een Raspberry PI:

Installatie

Zorg er voor dat de Raspberry PI is voorzien van een recente versie van Raspbian Stretch Lite en dat de Raspberry PI is aangesloten op je thuisnetwerk.

Als eerste gaan we nu de GPG-key voor Docker toevoegen:

curl -fsSL https://download.docker.com/linux/raspbian/gpg | sudo apt-key add -

Vervolgens dient er een repository toegevoegd te worden zodat Docker gevonden kan worden. Zet hiervoor de volgende regel in /etc/apt/sources.list.d/docker.list :

deb [arch=armhf] https://download.docker.com/linux/raspbian stretch stable

Installeer hierna Docker met de volgende commando’s:

sudo apt-get update
sudo apt-get install docker-ce

Voeg vervolgens gebruiker ‘pi’ toe aan de groep ‘docker’ met het commando:

sudo usermod -aG docker pi

Log nu opnieuw in als gebruiker pi en installeer docker-compose met de volgende commando’s:

sudo apt-get -y install python-setuptools
sudo easy_install pip  && sudo pip install docker-compose

Nu kan een bestand met de naam docker-compose.yml gemaakt worden met de volgende inhoud:

version: '2'
services:
  homebridge:
    image: oznu/homebridge:raspberry-pi
    restart: always
    network_mode: host
    volumes:
      - ./config:/homebridge
    environment:
      - PGID=1000
      - PUID=1000
      - HOMEBRIDGE_CONFIG_UI=1
      - HOMEBRIDGE_CONFIG_UI_PORT=8080

Start vervolgens de docker container met het commando:

docker-compose up -d

Waarbij de optie -d gebruikt wordt om de prompt weer terug te krijgen na het starten van de comtainer (d=detached).

Als alles goed is verlopen is Homebridge GUI bereikbaar op je Raspberry PI’s netwerk-naam of het IP-adres en poort 8080, bijvoorbeeld:

http://raspberry.local:8080

Toevoegen aan HomeKit

De Homebridge kan nu als accessoire toegevoegd worden aan HomeKit. Start hiervoor ‘Woning‘ op je iOS device en kies voor ‘Voeg accessoire toe‘ en scan de Q-code die getoond wordt op de Homebridge GUI.

 

Plaats de Homebridge eventueel in een ‘kamer’, bijvoorbeeld in de Meterkast.

Aanmaken dummy schakelaar

In de GUI van Homebridge kun je zien dat de ‘Dummy switches for Homebridge‘ als add-on reeds geïnstalleerd is. Om nu een dummy switch aan te maken dient de Config aangepast te worden. Klik in de GUI op Config en voeg de volgende regels toe aan de ‘acccessoires’, tussen de ‘[‘ en ‘]’ karakters:

 {
 "accessory": "DummySwitch",
 "name": "Schakelaar 1",
 "stateful": true
 }

De optie stateful zorgt ervoor dat de schakelaar op ‘aan’ blijft staan na aanschakelen. De standaard instelling van de dummy-schakelaar is namelijk dat deze ná 1 minuut weer terugspringt en dat willen we niet in dit voorbeeld. Klik op ‘Save‘ om de config file op te slaan.

Start HomeBridge opnieuw op om de aanpassing geldig te maken. Dit kan via de GUI rechtsboven met behulp van de Power-icon en ‘Restart‘.

De schakelaar zal automatisch in HomeKit zichtbaar worden en kan bijvoorbeeld in de ‘Keuken’ geplaatst worden.

Home Sweet Home!

Plugins

Inmiddels heb ik de volgende Plugins geïnstalleerd:

  • MPD plugin for homebridge – Hiermee kan ik de MusicPlayerDaemon aan- en uitzetten. Deze draait op de MusicPlayer

  • Homebridge plugin for KlikAanKlikUit™ – Hiermee kunnen de Klik-Aan-Klik-Uit modules gebruikt worden via een 433MHz zender op de Raspberry PI

  • Homebridge plugin that controls ‘KlikAanKlikUit’ modules via ‘ICS-1000’ – Om de modules te gebruiken via de KAKU-Bridge

  • Denon and Marantz AVR support for Homebridge – Hiermee kan ik mijn Marantz versterker aan/uit zetten, volume beheren en de bron kiezen.