Homebridge einrichten
Homebridge einrichten Zusammenfassung
Dieses HOWTO zeigt die Installation und Erstinbetriebnahme von Homebridge. Damit kann Siri benutzt werden, um FHEM-Devices zu steuern. So können Devices angesprochen werden, die offiziell HomeKit nicht unterstützen. (Die Vorgehensweise wurde auf einem Intel NUC mit Ubuntu Server 14.04 LTS und auf einem Raspberry Pi mit Raspian getestet.)
Um Homebridge erfolgreich zu installieren müssen zunächst NPM, NodeJS, Python, g++, MDNS, sowie benötigte Hilfspakete installiert werden:
Der WIKI-Eintrag bezieht sich hauptsächlich auf die Diskussion im FHEM-Forum: http://forum.fhem.de/index.php/topic,32652.0.html Ein riesen Dank gilt vor allem justme1968
NodeJS installieren
In der Konsole folgende Befehle eingeben:
sudo apt-get update sudo apt-get upgrade sudo apt-get install build-essential libssl-dev
UPDATE: Homebridge funktioniert mit einer kleinen Einschränkung nun auch mit node 4.0.0 Laut: https://github.com/cflurin/homebridge-shims/wiki/Minimalist-Homebridge-on-a-Raspberry-Pi
müssen die folgenden Abhängigkeiten (Dependencies) aus der package.json entfernt werden:
"harmonyhubjs-client": "^1.1.4", "harmonyhubjs-discover": "git+https://github.com/swissmanu/harmonyhubjs-discover.git"
Damit es auf einem Raspberry schneller läuft wird darüber hinaus empfohlen auch diese Abhängigkeiten aus der package.json zu entfernen:
"ad2usb": "git+https://github.com/alistairg/node-ad2usb.git#local", "carwingsjs": "0.0.x", "chokidar": "^1.0.5", "eibd": "^0.3.1", "elkington": "kevinohara80/elkington", "harmonyhubjs-client": "^1.1.4", "harmonyhubjs-discover": "git+https://github.com/swissmanu/harmonyhubjs-discover.git", "lifx-api": "^1.0.1", "lifx": "git+https://github.com/magicmonkey/lifxjs.git", "node-hue-api": "^1.0.5", "node-icontrol": "^0.1.4", "node-milight-promise": "0.0.x", "tough-cookie": "^2.0.0", "sonos": "0.8.x", "telldus-live": "0.2.x", "teslams": "1.0.1", "unofficial-nest-api": "git+https://github.com/hachidorii/unofficial_nodejs_nest.git#d8d48edc952b049ff6320ef99afa7b2f04cdee98", "wemo": "0.2.x", "wink-js": "0.0.5", "komponist" : "0.1.0", "yamaha-nodejs": "0.4.x",
Python, g++, MDNS installieren
sudo apt-get install python sudo apt-get install g++ sudo apt-get install libavahi-compat-libdnssd-dev
Homebridge installieren
Dazu im Homeverzeichnis
git clone https://github.com/nfarina/homebridge.git cd homebridge npm install
eingeben.
Eine Anleitung um die Homebridge automatisch zu starten findet sich hier:
[1]
Homebridge konfigurieren
Im Verzeichnis ~/homebridge/ muss nun noch die Config.json erstellt bzw. angepasst werden:
nano config.json
Homebridge muss nicht, kann aber auf dem selben Server laufen wie FHEM. Unter "server" muss die IP des FHEM-Servers und unter "port" der benutzte Port des benutzten FHEMWEBS eingetragen werden.
WICHTIG: Damit nicht alle Devices von Homebridge berücksichtig werden, bietet es sich an die Devices zu filtern. In diesem Beispiel wurden alle Devices, die über Siri steuerbar sein sollen zusätzlich in den ROOM Homekit per FHEM eingerichtet. Der PIN kann beliebig in dem Format xxx-xx-xxx angepasst werden. Dieser muss nur einmal bei der Einrichtung in iOS eingegeben werden.
{ "bridge": { "name": "Homebridge", "username": "CC:22:3D:E3:CE:30", "port": 51826, "pin": "031-45-154" }, "platforms": [ { "platform": "FHEM", "name": "FHEM", "server": "192.168.xxx.xxx", "port": "8083", "filter": "room=Homekit", "auth": {"user": "FhemUser", "pass": "XXX"} } ], "accessories": [] }
Homebridge starten
Wieder im Verzeichnis ~/homebridge/
npm run start
Hombridge sollte nun laufen.
HomeKit in iOS einrichten
Um FHEM über Homebridge in iOS nutzen zu können muss HomeKit eingerichtet werden. Es gibt verschiedene Apps. Im folgenden wird die App EVE von Elgato empfohlen, die aus dem App-Store geladen werden muss. In der App auf:
Gerät hinzufügen
Es sollte ein Gerät mit der Bezeichnung "Homebridge" zur Auswahl erscheinen. Zur Ersteinrichtung auf PIN manuell eingeben gehen und (falls in der config.json nicht geändert):
031-45-154
eingeben.
Im Anschluss können die Devices nach belieben in verschiedene Räume zugeteilt werden, sowie Szenen und Bereiche erstellt werden.
Schalten mit Siri
HolyMoly aus dem FHEM-Forum hat ein paar Beispiele gegeben, wie man Siri dazu bringt Devices zu schalten:
"Schalte alle Lampen im Obergeschoss ein." "Schalte Chloes Licht aus." "Dimme das Licht in der Küche." "Dimme das Licht im Esszimmer auf 50 %." "Stelle das Licht in der Küche am hellsten ein." "Stelle die Temperatur im Tahoe-Haus auf 22 °C ein." "Stelle das Thermostat im Erdgeschoss auf 21 °C ein. "Schalte den Drucker im Büro ein." "Siri, bereite alles für eine Party vor." "Bereite das Ambiente fürs Abendessen vor." "Aktiviere den Nachtruhemodus."
Mittlerweile kann Siri auch noch die Lichtfarbe von LEDs ändern.