Homebridge & Domoticz installeren op een Raspberry Pi

Door Possible op maandag 28 november 2016 15:16 - Reacties (28)
Categorie: -, Views: 3.270

Inleiding:

De afgelopen weken heb ik mij verdiept in de wereld van Domotica. 1 van de toffe dingen die ik tegenkwam, was het project Homebridge. Met Homebridge is het mogelijk om '''niet ondersteunde apparaten'' toch te laten werken met Apple's Homekit. Voor mij is dit een perfecte toevoeging in mijn woning. Een aantal producten die ik nu met Siri kan bedienen zijn o.a:

-Milight Lampen
-Tado Thermostaat met v2 Bridge.
-Xbox one
-Sony Bravia tv.
-Nest Thermostaat
-En nog veel meer...

Op internet merkte ik dat veel mensen moeite hebben/hadden met het installeren van Homebridge op een Raspberry Pi. Er zal uiteraard veel handleidingen te vinden, maar deze werkte in mijn geval niet goed.

Goed.. Laten we beginnen!

Benodigheden:
-Minimaal een Raspberry Pi 2 of 3. Het eerste model zal ook wel werken, maar is in mijn optiek te traag.
-SDkaartje van minimaal 8gb.
-Putty om verbinding te maken met je Raspberry Pi d.m.v. SSH verbinding.
-Win32Diskmanager om de image te flashen naar het SDkaartje.

Stap 1: Raspbian
Als eerste gaan we Rasbian downloaden. Dit is een OS gebaseerd op Debian. Het betreft hier de versie zonder gui. Deze hebben we toch niet nodig en scheelt weer rekenkracht :)

Als Rasbian eenmaal gedownload is, kan je deze met Win32DiskManager op de SDCardinstalleren.

LET OP: Standaard staat SSH disabled als je de nieuwste image download. Je dient dan een bestandje genaamt ''ssh'' aan te maken op in de /SYSTEM map. Deze map kun je vinden op de SDcard.

Stap 2. Verbinding maken met je Raspberry Pi.
Zorg ervoor dat je het ipadres van de raspberry pi hebt genoteerd. Open Putty en vul het ip adres in. Kies voor SSH en poort 22.

Login met de volgende username en password: pi / raspberry


Vervolgens gaan we de volgende commando's in volgorde uitvoeren:

sudo apt-get update && sudo apt-get upgrade


Hiermee zorg je ervoor dat alle pakketjes worden geupgrade naar een nieuwere versie als deze beschikbaar zijn.

Stap 3: Software installeren: Domoticz
Domoticz is een opensource project waarmee je verschillende producten kan toevoegen. Homebridge kan communiceren met Domoticz en deze vervolgens ''herkennen'' als een Homekit device.

mkdir ~/domoticz
cd ~/domoticz
wget http://releases.domoticz.com/releases/release/domoticz_linux_armv7l.tgz
tar xvfz domoticz_linux_armv7l.tgz
rm domoticz_linux_armv7l.tgz


Als de installatie klaar is, wil je natuurlijk dat Domoticz automatisch opstart als de Pi is vastgelopen of welke reden dan ook:

sudo cp domoticz.sh /etc/init.d
sudo chmod +x /etc/init.d/domoticz.sh
sudo update-rc.d domoticz.sh defaults


sudo nano /etc/init.d/domoticz.sh

USERNAME=pi
DAEMON=/home/$USERNAME/domoticz/$NAME
DAEMON_ARGS="-daemon -www 8080"


Domoticz testen:
cd domoticz
sudo ./domoticz


Als alles goed is gegaan kunnen we het opstart script van Domoticz starten dmv:
sudo service domoticz.sh start


Domoticz is te benaderen via http://ipvanjeraspberry:8080

Stap 4. Installeren Homebridge

We kunnen nu aan de slag met Homebridge! Op het moment van schrijven kun je de volgende commands 1 voor 1 toepassen:

sudo apt-get install git
hash -r
sudo apt-get install nodejs
curl --silent --location https://deb.nodesource.com/setup_0.12 | sudo bash -
sudo apt-get install libkrb5-dev
sudo apt-get install libavahi-compat-libdnssd-dev
sudo apt-get install nodejs (nogmaals indien onderstaand npm commando niet wordt herkend)
sudo npm install -g n
sudo n lts
sudo npm install -g homebridge && sudo npm install -g forever
sudo npm install -g homebridge-edomoticz


Let er op dat dit wel even kan duren. Heb dus geduld :)

Ook homebridge wilen we automatisch laten starten:
sudo pico /lib/systemd/system/homebridge.service


Voeg de volgende tekst toe:
[Unit]
Description=HomeBridge Service
After=multi-user.target

[Service]
User=pi
Type=idle
ExecStart=/usr/local/lib/node_modules/homebridge/bin/homebridge

[Install]
WantedBy=multi-user.target


Met CTRL X kun je het bestand opslaan.

De rechten goed zetten en opnieuw opstarten:
sudo chmod 644 /lib/systemd/system/homebridge.service
sudo systemctl daemon-reload
sudo systemctl enable homebridge.service
sudo reboot


Als alles goed is gegaan zou homebridge nu moeten draaien. Dit kun je checken met het volgende commando:

sudo systemctl status homebridge.service -l


Je zou dan het volgende scherm moeten zien:
https://www.mupload.nl/img/trrpnominm7jm.png

Stap 6: config.json file aanmaken

Om ervoor te zorgen dat Homebridge plugins gaat herkennen en kan communiceren met Domoticz (bijvoorbeeld voor je Nest Thermostaat of je Xbox one, dient er een config.json file aangemaakt te worden:

sudo nano /home/pi/.homebridge/config.json


Zet vervolgens deze config file erin:


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{
    "bridge": {
        "name": "Homebridge",
        "username": "CC:21:3E:E4:DE:33",
        "port": 51826,
        "pin": "031-45-154"
    },
    "description": "Configuration file for (e)xtended Domoticz platform.",
    "platforms": [
        {
            "platform": "eDomoticz",
            "name": "eDomoticz",
            "server": "127.0.0.1",
            "port": "8080",
            "ssl": 0,
            "roomid": 0,
            "mqtt": 0
        }
    ],
    "accessories": []
}




sudo systemctl daemon-reload


Plugins / accersoires kun je heel makkelijk installeren met het volgende commando:
sudo npm install -g ''naamvanplugin''


Voor een overzicht van alle beschikbare plugins die werken met Homekit, zie:

https://www.npmjs.com/browse/keyword/homebridge-plugin

Met de App EVE kan je de plugins inladen en indien nodig, met Siri gaan bedienen.

Ik heb hiervoor het volgende youtube filmpje gebruikt:
https://www.youtube.com/watch?v=-XBaYtWfSk8