meintechblog.de
25Okt/15311

Mit Siri und FHEM das gesamte Smart Home per Stimme steuern

Hey Siri schalte die Deckenlampe in der Kueche an

"Hey Siri, schalte das Licht in der Küche ein."

Wer einmal seine Stimme verwendet hat, um Lampen, Rollos oder auch die Heizung im eigenen Smart Home zu steuern, wird sich ein Schmunzeln kaum verkneifen können (kleiner Vorgeschmack hier). Damit das funktioniert, können entweder offizielle und HomeKit-kompatible Geräte angeschafft oder über einen kleinen Umweg auch die bereits per FHEM angebundenen Devices mit der praktischen Siri-Funktion nachgerüstet werden.

Welche Schritte dafür notwendig sind, um einen FHEM-Server auf Basis eines Raspberry Pi 2 mit dem HomeKit-Feature aufzurüsten, der sich künftig mit iPhone und Co. steuern lässt, wird in nachfolgendem Howto erklärt.

FHEM-Server auf RPI2 als Grundlage

Voraussetzung ist eine FHEM-Installation auf einem Raspberry Pi 2, wie im Artikel FHEM-Server auf dem Raspberry Pi in einer Stunde einrichten beschrieben. Grundsätzlich funktioniert die Einrichtung auch auf anderen Plattformen wie einem Intel NUC und Ubuntu, wie im Artikel Intel NUC als Smart Home-Server - FHEM on steroids erklärt, hierbei können sich jedoch unter Umständen einzelne Konsolenbefehle unterscheiden.

Darüber hinaus ist es natürlich sinnvoll bereits einige Aktoren und Sensoren am FHEM-Server angelernt zu haben, welche künftig über Siri angesteuert werden sollen. Wie man Lampen, Jalousien oder Heizungsadapter einbinden kann, wurde dabei bereits in mehreren Blogposts beschrieben, z.B. im den Artikeln Philips hue - So klappt die Integration in FHEM, Die HUE-Alternative: Preiswert die Lichtstimmung im Smart Home pimpen, HowTo: Elektrische Rolläden per FHEM und HomeMatic automatisieren und FHEM: Heizungssteuerung per Anwesenheitserkennung.

Bevor mit den weiteren Schritten gestartet wird, sollte die vorhandene FHEM-Installation am besten gesichert werden, um im Fall der Fälle auf ein Backup mit den wichtigen Konfigurationsdateien zurückgreifen zu können. Wie das umgesetzt werden kann, wird bspw. im Artikel FHEM HowTo - Automatisches Backup auf externem NAS erklärt. Weiterhin sollte FHEM mit der eingebauten Update-Funktion auf den neuesten Stand gebracht werden, wie im Artikel FHEM-Server updaten beschrieben.

Update vom 22.11.2015: In der Zwischenzeit hat sich viel bei der Entwicklung von FHEM und Homebridge getan. Die unten stehende Anleitung funktioniert deshalb nicht mehr 1:1. Ein Update des HowTo folgt, sobald ich selbst dazu komme die Neuerungen nachzuvollziehen. In der Zwischenzeit war zudem Mike so freundlich eine Anleitung zu schreiben, die zum aktuellen Stand funktioniert. Vielen Dank dafür!

FHEM-Server und Geräte für Anbindung vorbereiten

Damit alle unterstützten Geräte später korrekt in der HomeKit-Datenbank korrekt erkannt werden, wird das bereits existierende "global userattr" in der fhem.cfg um den Eintrag "genericDeviceType:switch,outlet,light,blind,speaker,thermostat" ergänzt.

In meinem Beispiel wird der bisherige Eintrag in der fhem.cfg:

ergänzt und sieht nach der Änderung dann so aus:

Jetzt noch auf "Save fhem.cfg" klicken, um die Änderung dauerhaft zu speichern.

Um klein zu starten, sollten im ersten Schritt nur wenige Devices für die Anbindung mit HomeKit ausgewählt werde, um sich etwas mit der Materie vertraut zu machen und Anfangsfehler zu minieren. Dazu werden die ausgewählten Geräte in den neuen FHEM-Raum namens "Homekit" platziert, um eine Auswahl zu treffen. Nur diese Geräte werden dann berücksichtigt.

In diesem Fall wird der HomeMatic Unterputz-Schaltaktor (Affiliate-Link) ausgewählt, welcher für die Ansteuerung der Deckenbeleuchtung in der Küche zuständig ist und nun mit dem neuen Raum "Homekit" versehen wird.

KU.Deckenlampe hinzufuegen zu room Homekit

Alternativ lässt sich die Raumzuweisung auch direkt über die FHEM-Kommandozeile über den Befehl

bewerkstelligen. Im Anschluss wird die geänderte Konfiguration über den Button "Save config" gespeichert.

RPI2 zum FHEM-HomeKit-Server aufrüsten

Nach diesen vorbereiten Schritten geht es nun ans Eingemachte, da der FHEM-Server mit den notwendigen Softwarebibliotheken ausgestattet werden muss, welche für den Betrieb des HomeKit-Servers namens Homebridge zuständig sind.

Dazu erfolgt der ssh-Login per Terminal (mehrfach in älteren Blogposts erklärt) mit

Die IP-Adresse des Raspberry Pi 2 muss natürlich jeder selbst anpassen. Sofern nicht geändert, lautet das Standardpasswort gewöhnlich "raspberry" (ohne Anführungszeichen).

Jetzt werden die Softwarepaketliste geupdated und die notwendigen Unterpakete installiert, welche für das Kompilieren des im Anschluss installierten node-gyp notwendig sind:

Im Anschluss wird NodeJS heruntergeladen und für den Betrieb vorbereitet:

Sofern die Installation erfolgreich war, wird nach der Eingabe des Befehls

der Output "v0.10.28" in der Konsole angezeigt, welcher Auskunft über die korrekt installierte Versionsnummer gibt.

Die auf github verfügbare Software Homebridge, welche als HomeKit-Server fungiert, wird nun heruntergeladen und installiert:

Der auf NodeJS basierte Homebridge-Server emuliert später das iOS HomeKit API, um eine Brücke zwischen HomeKit und Anwendungen von Drittherstellern (in diesem Fall FHEM) aufzuspannen.

Nach der mehrminütigen Installationszeit von Homebridge kann nun die Konfigurationsdatei des Homebridge-Dienstes gesetzt werden.

Dazu wird der nano-Editor genutzt und die benötigte Config-Datei mit dem Befehl

geöffnet.

Hier wird folgender Inhalt per Copy&Paste hineinkopiert:

Sofern der Homebridge-Server nicht auf dem selben Rechner wie der FHEM-Server betrieben wird, muss die Server-IP "127.0.0.1" (in diesem Fall sozusagen localhost) entsprechend angepasst werden.

Sofern weiterhin der http-Port "8083" von FHEM mit einem Benutzernamen und Passwort abgesichert ist, müssen die Einträge "FHEMUser" und "FHEMPass" angespasst werden. Wer keine Authorisierung nutzt, kann die "auth"-Zeile einfach unverändert lassen oder ganz löschen, muss dann aber das Komma am Ende der vorherigen Zeile aus Syntaxgründen ebenfalls entfernen. Welche Möglichkeiten es hier noch gibt (z.B. ssl-Zugriff), können z.B. in der Datei "~/homebridge/config-sample.json" eingesehen werden.

Sind die Anpassungen vollzogen, wird die Datei mit der Tastenkombination "STRG + o" gespeichert und der Editor wieder mit der Tastenkombination "STRG + x" geschlossen.

Nun ist der eigentlich Service bereits lauffähig und kann für erste Tests genutzt werden. Dazu kann der Konsolenbefehl

zum manuellen Starten des Homebridge-Servers und entsprechend

zum manuellen Stoppen des Dienstes genutzt werden.

Damit der Dienst jedoch automatisch auch nach einem Neustart des RPI2 zur Verfüng steht, sind noch einige weitere Anpassungen notwendig.

Zuerst wird Forever mit dem Befehl

installiert und anschließend das eigentlich Startscript über den nano-Editor mit dem Befehl

erstellt. In der leeren Datei werden per Copy&Paste die Zeilen

eingefügt. Sind die Anpassungen vollzogen, wird die Datei wieder mit der Tastenkombination "STRG + o" gespeichert und der nano-Editor mit der Tastenkombination "STRG + x" geschlossen.

Jetzt erhält die Datei mit dem Befehl

abschließend noch die notwendige Berechtigung verpasst.

Um den Autostart künftig zu aktivieren, wird der Befehl

ausgeführt. Soll der Autostart wieder deaktiviert werden, kann der Befehl "sudo update-rc.d -f homebridge remove" (ohne Anführungszeichen) verwendet werden.

Ab sofort kann der Homebridge-Service auch bequem im laufenden Betrieb zu Testzwecken mit

gestartet und über den Befehl

beendet werden.

Wird Homebridge gestartet, werden alle im FHEM-Raum "Homekit" beheimateten Geräte - in diesem Beispiel der HomeMatic-Aktor KU.Deckenlampe - eingelesen und verfügbaren Services - in diesem Fall schlichtweg "An" und "Aus" - für die künftige Nutzung von HomeKit zur Verfügung gestellt.

Sofern der Dienst ohne Fehlermeldungen gestartet werden konnte, geht es mit der Einrichtung auf dem iOS-Device weiter.

iOS-Device für HomeKit vorbereiten

Damit die vom Homebridge-Server bereitgestellten Geräte und Dienste mit Siri angesprochen werden können, müssen diese am iPhone über eine HomeKit-kompatible App einmalig "angelernt" und in die HomeKit-Datenbank geschrieben werden. Da Apple hierfür (noch) keine eigene native App für HomeKit anbietet, muss eine App eines Drittherstellers zurückgegriffen werden. Hier gibt es grundsätzlich mehrere Möglichkeiten, wobei sich die kostenlose App "Elgato Eve" von Elgato Systems mehr oder weniger als Standardlösung etabliert hat.

Elgato Eve (AppStore Link) Elgato Eve
Hersteller: Elgato Systems GmbH

Freigabe: 4+1
Preis: Gratis Download

Update vom 23.11.2015: In Kürze gibt es die App namens Devices von linkdesk, welche vermutlich auch genutzt werden kann. Praktisch könnte dabei gerade die Unterstützung der Apple Watch sein, welche bald nachgereicht werden soll.

App Elgato Eve im AppStore

Sobald die ca. 12 MB große App heruntergeladen, installiert und gestartet wurde, wird die Option "Gerät hinzufügen" gewählt.

App Elgato Eve Geraet hinzufuegen

Sofern die oben durchgeführte Installation des Homebridge-Services erfolgreich durchlaufen und der Dienst ordnungsgemäß gestartet wurde, sollte in der Eve-App nach kurzer Zeit der Eintrag "Homebridge" zur Auswahl stehen. Nach der Auswahl des Eintrags kann der abgefragte PIN-Code manuell eingegeben werden, welcher - sofern die obige Konfiguration nicht geändert wurde - standardmäßig 031-45-154 lautet.

App Elgato Eve

Ab sofort stehen die Geräte, welche vorher im FHEM-Raum "Homekit" hinterlegt wurden, direkt in der Eve-App zur Verfügung und können in die passenden Räume verschoben und je nach Wunsch umbenannt werden, damit die Siri-Befehle künftig zuverlässig erkannt und den passenden Geräten zugewiesen werden.

Wichtig ist dabei das Gerät auszuwählen (hier: KU.Deckenlampe) und unter dem Reiter "Funktion" den Namen "Küchenlampe" zu setzen. Dieser vergebene Funktionsname ist besonders relevant, da Siri diesen bei den Sprachbefehlen berücksichtigt. Unter "Verwendet für" kann dann bpsw. auch das Symbol für die Deckenlampe ausgewählt werden, wobei diese Einstellung wohl keine besonderen Auswirkungen auf die Spracheingabe zu haben scheint.

App Elgato Eve Funktion Name anpassen

Jetzt sollten bereits die Siri-Befehle

"Schalte die Küche ein/aus"
"Schalte das Licht in der Küche ein/aus"

ordnungsgemäß erkannt und passende Aktionen ausgelöst werden. Dabei kann es jedoch gerade anfangs auch etwas dauern, da die eingetragenen Geräteinformationen auch über iCloud synchronisiert werden. Bei meinen Tests gab es jedoch bisher nie längere Wartezeiten.

So sieht das Ganze dann - recht unspektakulär - per Apple-Watch aus:

Wie man erkennt, reagiert das Ganze ohne größere Verzögerung.

Beispiele für weitere Sprachbefehle und Informationen zu HomeKit können als Anregung auf der Apple-Website eingesehen werden.

Um weitere in FHEM verfügbare Geräte für HomeKit bzw. Homebridge verfügbar zu machen, werden diese - wie bereits oben beschrieben - in den FHEM-Raum "Homekit" gepackt. Anschließend wird der Homebridge-Dienst gestoppt und neugestartet, um die geänderte Konfiguration einzulesen. Sobald die iPhone-App zur Verwaltung der Geräte gestartet wird, sollten die neuen Devices automatisch auftauchen und konfiguriert werden.

Sofern keine neuen Geräte aus FHEM hinzugefügt sondern gelöschte Geräte aus Homebridge entfernt werden sollen, muss dies manuell in den Dateien im Ordner "~/homebridge/persist/" erledigt werden.

Weitere unterstützte Geräte:

-Dimmer
-Temperatur-Luftfeuchtigkeitssensor
-HomeMatic Heizungsthermostat
-Keymatic?!
-Fenster-/Türsensor
-Philips Hue
-Harmony Remote
-Sonos

An dieser Stelle wird der Artikel noch weiter ausgebaut werden, da ich die einzelnen FHEM-Geräte erst nach und nach über die Homebridge einbinden werde.

Aus meinem täglichen Leben

Immer mal wieder gibt es neue Technologien, die das Nutzungsverhalten von Anwendern grundlegend umkrempeln. Im Falle von Apple HomeKit könnte diese Zeit - zumindest für Early Adopter - gekommen sein. Gerade wenn eine wachsende Geräteanzahl berücksichtigt werden soll, wird eine "konventionelle" Steuerung per App zunehmend unhandlich Dabei können einfache Sprachkommandos per Siri einen massiven Mehrwert generieren, um nicht nur schneller, sondern vorallem auch komfortabler einzelne Geräte und Gerätegruppen anzusteuern. Mit der Apple Watch macht es jedenfalls mega Spaß "einfach so" per Sprachbefehl in Interaktion mit dem Smart Home treten zu können.

Hey Siri Smart Home Steuerung per Apple Watch

An dieser Stelle ein großes Lob an alle Entwickler und Beteiligten, die eine Verzahnung der verschiedenen Dienste erst ermöglichen und nun einer breiten Masse zugänglich machen. Auf Seiten von FHEM natürlich die FHEM-Community selbst, welches das Thema bereits seit Monaten intensiv im FHEM-Forum diskutiert und die Unterstützung für immer mehr Geräte erweitert. Daneben natürlich auch ein dickes Lob an einzelne Personen wie Alex Skalozub, welcher das HomeKit-Protokoll reverseengineered hat und KhaosT, der den HomeKit-Hilfsserver HAP-NodeJS daraus entwickeln konnte, welcher nun als Grundlage für die FHEM-Integration dient. Weiterhin an justme1968 (Andre), der maßgeblich für das FHEM.js der Shim-Plattform verantwortlich ist.

Ich hoffe dabei sehr, dass Apple auch künftig keinen Riegel für diesen "Hack" vorschieben wird, wie vor einigen Jahren bei Siri-Proxy, der damals bereits eine rudimetäre Steuerung von Smart-Home-Devices per Spracheingabe möglich machte. Gefühlt stehen die Chancen gut, dass die jetzige Homebridge-Lösung in dem hier vorgestellten Kontext auch weiterhin funktionieren wird, ich drücke jedenfalls alle Daumen, da ich die Sprachsteuerung per Siri nun nicht mehr missen möchte.

FHEM-Einsteiger? Unser E-Book hilft dir weiter.

Verpasse keine Inhalte mehr! Trag dich in unseren Newsletter ein und folge meintechblog auf Facebook oder Twitter.

Share Button
Jörg

Jörg

hat meintechblog.de ins Leben gerufen, um seine Technikbegeisterung und Erkenntnisse zu teilen. Er veröffentlicht regelmäßig Howtos in den Bereichen Smart Home und Home Entertainment. Mehr Infos
Jörg
Kommentare (311)
  1. Und bitte justme1968 (Andre) aus dem FHEM Forum nicht vergessen! Er ist maßgeblich für das FHEM.js Plattform Shim verantwortlich!

    Läuft bei mir auch schon seit Wochen sehr gut!

  2. Hi Jörg super Anleitung wie immer.
    funktioniert das auch mit Android ?

    • Hi Eugen,
      vielen Dank!
      Mit Android funktioniert das in dieser Form mit Siri natürlich nicht. Ob es andere Möglichkeiten gibt, ist mir leider nicht bekannt, sorry.

      Grüße
      Jörg

  3. Auf diesen Post habe ich so gehofft. Vielen Dank. Das wird noch diese Woche umgesetzt!
    ?

    Gruß
    Frank

  4. Hey super Anleitung.
    Läuft das ganze auch auf einem Raspberry B+ mit den install befehlen für den Raspberry 2, wie hier beschrieben?
    Grüße Marcel

  5. Kleiner Schreibfehler:

    sudo update-rc.d hobebridge defaults

    Das muss doch sicher "homebridge" heißen?

    Ich hoffe, Google zieht bald mit Nest und Konsorten nach. Ich würde nämlich wirklich gerne auf Apple am Handgelenk verzichten. Wie sieht es eigentlich mit Amazon Echo aus?

  6. Unter Android geht das gleiche mit der App Alicoid, die FHEM über andFHEM unterstützt.

  7. Hi,
    vielen Dank für die Anleitung, ich habe nur leider einige Probleme.
    Bei der Installation der Homebridge bekomm ich mehrmals die Warnung:

    gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/0.10.28"
    gyp WARN EACCES attempting to reinstall using temporary dev dir "/home/pi/homebridge/node_modules/node-xmpp-client/node_modules/node-xmpp-core/node_modules/ltx/node_modules/node-expat/.node-gyp"

    und die Fehlermeldung:

    gyp ERR! build error
    gyp ERR! stack Error: make failed with exit code: 2
    gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:267:23)
    gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:98:17)
    gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:807:12)
    gyp ERR! System Linux 4.1.7-v7+
    gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
    gyp ERR! cwd /home/pi/homebridge/node_modules/teslams/node_modules/mongodb/node_modules/mongodb-core/node_modules/kerberos
    gyp ERR! node -v v0.10.28
    gyp ERR! node-gyp -v v0.13.0
    gyp ERR! not ok

    Das anschließende testen der Homebridge wird wiefolgt quitiert:

    pi@raspberrypi ~/homebridge $ sudo ~/homebridge/ && npm run start
    sudo: /home/pi/homebridge/: command not found

    Er hat also die Installation nicht richtig durchgeführt. Eine Idee warum?

    Vielen Dank für den Support ;)

    Gruß Daniel

    • Hi,
      hab das Problem gelöst.
      Die Warnungen ruhig ignorieren. Beim starten von npm hatte ich den Fehler, dass ich mich noch im /homebridge Ordner befand. Durch die ~ suchte er nun innerhalb dieses Ordners nach einem weiteren Ordner homebridge. Also entweder den Pfad anpassen oder wenn man sich schon im Ordner homebridge befindet einfach nur sudo npm run start.

      Gruß
      Daniel

  8. Hi Daniel,

    ich habe das gleiche Problem.

    Gruss
    Dennis

  9. Hallo, es hat alles so weit geklappt, habe auch Passwort in die config.json angepasst. Der Start mit "cd ~/homebridge/ && npm run start" klappt nicht. "npm run start" liefert folgendes Ergbnis:

    starting longpoll: http://127.0.0.1:8083/fhem.pl?XHR=1&inform=type=status;filter=.*;since=null;fmt=JSON&timestamp=1445809448406
    longpoll error: Error: read ECONNRESET, retry in: 30000msec

    Hat jemand eine Idee? Das FHEM-Passwort habe ich verschlüsselt, wie schon mal hier im Blog angeleitet.

    LG

    Bernd

    • Denk mal Du hast eine SSL-Verschlüsselung für FHEM. Das gleich Problem hatte ich auch. Hier findest Du Abhilfe http://www.fhemwiki.de/wiki/Homebridge_einrichten

    • Hallo Thorsten,

      besten Dank. Wie gehe ich vor. Mache ich die komplette Installation wie in dem Link und mache dann an der gleichen Stelle mit npm run start weiter?

      LG

      Bernd

    • Hallo Bernd,

      Du machst die Installation sowie es hier beschrieben ist.
      Der einzigste Punkt der abweicht ist die Config.json die nimmst Du aus dem Link unter dem Punkt "Achtung: Für ein FHEM Web Interface mit SSL Zertifikat muss die config wo folgt aussehen: ". Danach hat es bei mir funktioniert und ich kann die Geräte über Siri steuern.

      Gruß
      Thorsten

  10. Hi, ich wäre daran interessiert den Dienst über 2 Raspis zu verteilen. Grund: FHEM läuft bei mir auf einem B (weniger Ressourcen) und ich möchte dort kein update / upgrade machen um die zusätzlich angeschlossene Hardware nicht "abzuschiessen" z.B. durch neuen Kernel.
    Jörg, Du hast es ja schon geschrieben. Evtl. gibt es schon weitere Erfahrungen von Benutzern oder von Dir.
    Gruß Axel

    • Dürfte doch kein Problem sein, einfach die Homebridge auf den zweiten Pi installieren und in der Config die IP-Adresse vom FHEM-Pi angeben.

  11. Erstmal besten Dank für diesen Blog :-) Das wäre toll wenn es mit Siri läuft *freu !!!

    Allerdings habe ich wohl schon jetzt ein Problem :-(
    Ich nutze Fhem auf einem NUC ,versuche es trotzdem mal 1:1 nach dieser Anleitung umzusetzen :

    Um zu prüfen ob die Installation erfolgreich war, wird nach der Eingabe des Befehls

    /usr/bin/env node --version

    leider folgendes im Terminal ausgegeben :

    /usr/local/bin/node: 18: /usr/local/bin/node: Syntax error: word unexpected (expecting ")")

    Also es kommt eine Versionsanzeige :-( Heißt dies nun für mich .... es geht nicht weiter ?

    gruss

    René

    • OK ,dachte ich ignoriere das einfach mal :-) und mache weiter :

      cd /home/pi && git clone https://github.com/nfarina/homebridge.git && cd homebridge && sudo nam install

      hmmm,den Ordner /home/pi gibt es bei mir auf dem NUC natürlich auch nicht ,also hab ich den Pfad einfach angepasst ....leider kann mein NUC wohl nix mit git anfangen *grummel

      -bash: git: command not found

    • Also muss ich wohl meinem NUC erstmal git beibringen :
      sudo apt-get install git

    • *Grrrr, und schon hänge ich wieder bei der ersten Fehlermeldung :-( mit der Versionsanzeige ...

      Cloning into 'homebridge'...
      remote: Counting objects: 2326, done.
      remote: Total 2326 (delta 0), reused 0 (delta 0), pack-reused 2326
      Receiving objects: 100% (2326/2326), 1.22 MiB | 1.09 MiB/s, done.
      Resolving deltas: 100% (1422/1422), done.
      Checking connectivity... done.
      /usr/local/bin/node: 18: /usr/local/bin/node: Syntax error: word unexpected (expecting ")")

  12. Hallo Jörg,

    cooler Beitrag wird in den kommenden Tagen in Angriff genommen.

    Eine frage hab ich noch was hat es mit dem iCloud sync auf sich, heisst das ich bin auch in der Lage von ausserhalb meines Netzwerkes/Unterwegs per Siri Schaltungen vorzunehmen wegen CLoud anbindung oder missverstehe ich da was?

  13. Leider funktioniert das Tutorial absolut nicht für einen NUC, das fhem-Wiki weist hier leider auch mal wieder Lücken auf.
    Nach einer Stunde gebe ich (vorerst) auf....

    • Den Schritt habe ich mit dem passenden File für Intel 64 Bit abgeändert :
      wget http://nodejs.org/dist/v0.10.28/node-v0.10.28-linux-x64.tar.gz -P /tmp && cd /usr/local && sudo tar xzvf /tmp/node-v0.10.28-linux-x64.tar.gz --strip=1

      Nun wird der Versionscheck richtig angezeigt :-)

    • Wollte es gerade schreiben ;)
      Mit dem passenden x64 File hat der allerletzte Versuch dann funktioniert und jetzt kommt Siri schon fast ins schwitzen so sehr texte ich sie zu :D

  14. Hi,
    bei mir klappt nun alles ? nur eine Sache bekomme ich nicht hin. Einbinden der 1-Wire Temperatursensoren. In der Eve-App sind die Sensoren mit ihrem aktuellen Temp-Wert drinne. Aber ich bekomme Siri einfach nicht dazu diesen Wert auszugehen.
    Hatte jemand schon mehr Erfolg?

    Gruß
    Daniel

    • Einen LaCrosse Tempsensor habe ich erfolgreich eingebunden.

      Der Sensor heißt "Wohnzimmer Temperatur" und wenn ich Siri frage "Wie warm ist es im Wohnzimmer" bekomme ich den Wert angesagt.

      Wenn ich frage "Wie hoch ist die Luftfeuchtigkeit im Wohnzimmer" bekomme ich auch hier die korrekte Antwort.

  15. Hmmmm, den Schritt bekomme ich nicht hin :

    home/pi && git clone https://github.com/nfarina/homebridge.git && cd homebridge

    Bekomme irgendwann nur noch Fehlermedungen :-(
    Schubst mich doch mal in die richtige Richtung :-)

    • /home/pi
      Den Ordner musst du ändern wenn du keinen Pi hast.

      /home/username und es sollte klappen.

    • Hi,
      ich habe den Pfad auf dem raspberry angepasst, aber bekomme trotzdem diesen Fehler:

      error: Error restarting process: /home/pi/homebridge/app.js
      error: Cannot find forever process: /home/pi/homebridge/app.js

      Fehlt da noch was im Pfad, irgendwie stelle ich mich da zu blöd an :-/

  16. Danke ! Ja das hatte ich auch gemacht :-)

    Welche Version von nodejs hast du genau genommen ?

    • Ich bekomme immer noch folgende Fehlermeldungen bzw Warnings :

      npm WARN optional dep failed, continuing fsevents@1.0.2
      npm WARN engine hawk@3.1.0: wanted: {"node":">=0.10.32"} (current: {"node":"v0.10.28","npm":"1.4.9"})
      gyp ERR! build error
      gyp ERR! stack Error: make failed with exit code: 2
      gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:267:23)
      gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:98:17)
      gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:807:12)
      gyp ERR! System Linux 3.13.0-62-generic
      gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
      gyp ERR! cwd /home/aladin212/homebridge/node_modules/harmonyhubjs-client/node_modules/node-stringprep
      gyp ERR! node -v v0.10.28
      gyp ERR! node-gyp -v v0.13.0
      gyp ERR! not ok

      gyp ERR! build error
      gyp ERR! stack Error: make failed with exit code: 2
      gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:267:23)
      gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:98:17)
      gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:807:12)
      gyp ERR! System Linux 3.13.0-62-generic
      gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
      gyp ERR! cwd /home/aladin212/homebridge/node_modules/mdns
      gyp ERR! node -v v0.10.28
      gyp ERR! node-gyp -v v0.13.0
      gyp ERR! not ok

      usw.... :-(

  17. SO !
    Sorry das ich hier alles voll spame :-( bitte an die Admins , die anderen Beiträge können nun gerne gelöscht werden !!!
    Denke ich bin nun einen guten Schritt weiter :-)
    Der NUC konnte g++ nicht ,grins, also mit apt-get g++ nachinstalliert und schon sieht alles viel besser aus *freu

    • Hey, könntest du vielleicht die Anleitung für den NUC in einem Beitrag zusammen fasssen bzw angeben was im Gegensatz zu oben anders gemacht werden muss? Denke das wollen noch mehr wissen :)

  18. Hallo Jörg,

    mal wieder ein Spitzenbeitrag. Ratzfatz ließen sich die Wohnzimmerlampen ein- und ausschalten und die Wohnungstür auf- und abschließen. Lieder klappt das öffnen nicht. Die Fibaro-Steckdosen lassen sich übrigens auch ansteuern.
    Allerdings tauchen bei mir die Homematic-Heizungsthermostate nicht auf. Muss man da noch etwas einstellen oder klappt es nur mit bestimmten Modellen?
    Außerdem versuche ich noch Dummyschalter unterzubringen. Das klappt leider auch nicht. Kann man irgendwie eine Homematicsteckdose als Dummy erzeugen?

    mfg
    Tom

    • Hi, ich habe auch grade versucht einen Dummy einzubinden um meine Lichtszenen in Loxone zu steuern, der taucht leider auch nicht auf

      Gruss

    • Habs! einfach im Dummy attr genericDeviceType
      switch und es klappt!

      Gruss

    • Nur leider klappt das Schalten nicht wirklich! Bin grade etwas ratlos!

    • So es muss noch Setlist on:off mit rein dann klappt es bei mir

    • So es muss noch Setlist on off mit rein dann klappt es bei mir

    • Hallo Marco,

      hat geklappt. Danke für den Tipp. Alternativ zu setList klappt auch webCmd.

      mfg
      Tom

    • Hallo Marco,

      habe mich leider doch zu früh gefreut. Der Dummyschalter taucht auf, aber beim Schalten erfolgt keine Reaktion (Weder mit SetList, noch mit webCmd). Kannst Du bitte mal Deine komplette Dummy-Konfig posten?
      Mit dem Heizungsthermostat bin ich Dank Deines Tipps jetzt auch weitergekommen. Dort musste noch der genericDeviceType auf Thermostat gesetzt werden. Das Ändern der Temperatur hat da auch gleich geklappt.

      mfg
      Tom

    • 1. attr genericDeviceType switch
      2. attr webcmd on:off
      3. attr setlist on off

      So ging es bei mir! Nur jetzt geht garnix mehr! Habe es kaputtgespielt xD

    • Hallo Marco,

      hat jetzt geklappt. Ich hatte Deinen ersten Eintrag einfach kopiert und nicht gesehen, dass da noch ein Doppelpunkt zuviel war.
      Hat bei Dir eigentlich die Sprachsteuerung geklappt? Ich habe als Funktionsname Fernseher eingegeben, wenn ich aber sage "schalte den Fernsehre ein" klappt es nicht. Bei den normalen Schaltern klappt es mit den Sprachkommandos.

      mfg
      Tom

    • Hallo,

      ich kann
      attr genericDeviceType switch
      beim dummy nicht setzen. Könnt ihr mir da nen Tipp geben ?

  19. Hmmm, auf dem iPad funktioniert es !
    Auf dem iPhone leider nicht *grummel es werden alle Räume und Geräte angezeigt , aber als nicht verfügbar :-(

    • Das Problem hatte ich auch. Ein Neustart des iPhones hat geholfen.

      Gruß Daniel

  20. Hi Jörg,

    kannst du das script noch um ein Restart erweitern?
    Dazu könnte man doch auch noch einen Dummy in FHEM anlegen, damit man nicht immer auf die Konsole muss um Homebridge neu zu starten?

    Gruß Robert

    • Das Script habe ich schon mal angepasst, nun mit restart.
      Normal finde ich es besser erst ein stop zu machen, dann den status, anschließend den start und wieder den status auszugeben.

      Aber die restart funktion von forever ist garnicht so schlecht.

      #!/bin/sh
      ### BEGIN INIT INFO
      # Provides: homebridge
      # Required-Start: $network $remote_fs $syslog
      # Required-Stop: $remote_fs $syslog
      # Default-Start: 2 3 4 5
      # Default-Stop: 0 1 6
      # Short-Description: Start daemon at boot time for homebridge
      # Description: Enable service provided by daemon.
      ### END INIT INFO
      export PATH=$PATH:/usr/local/bin
      export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules
      case "$1" in
      start)
      exec forever --sourceDir=/home/hs-server-admin/homebridge start app.js
      ;;
      stop)
      exec forever stop /home/hs-server-admin/homebridge/app.js
      ;;

      status)
      exec forever list
      ;;

      restart)
      exec forever restart /home/hs-server-admin/homebridge/app.js
      ;;

      *)
      echo "Usage: /etc/init.d/homebridge {start|stop|status|restart}"
      exit 1
      ;;
      esac
      exit 0

    • Hi Robert,
      danke für die Erweiterung mit Restart. Habe das Script im Blogpost entsprechend ergänzt.

      Grüße
      Jörg

  21. Hallo Jörg,

    erstmal natürlich herzlichen Dank für das tolle Tutorial.
    Nachdem ich den Thread im FHEM Forum mehrfach gelesen hatte
    und mit dem TUT aus dem FHEM WIKI nicht wirklich klar kam
    (die Infos sind etwas spärlich gehalten und für einen
    Nicht-Programmierer und manchmal schwer nachzuvollziehen),
    war ich von Deiner Anleitung schwer begeistert.
    Trotzdem natürlich auch Danke an die Entwickler aus dem
    FHEM Forum. Ohne das hat man einfach nicht das Hintergrundwissen.

    Bei mir lief alles bis zum Punkt "Testen des Service" reibungslos.
    Es erschienen zwar auch Fehlermeldungen, wie in den vorherigen
    Posts beschrieben, jedoch konnte man diese ja ignorieren.

    Danach hatte ich jedoch noch eine kleine Hürde.
    Der Dienst hap-nodejs, konnte nicht gefunden werden.
    mit "npm install hap-nodejs" konnte ich diesen nachinstallieren.

    Danach ließ Homebridge sich starten und EVE als APP auf dem
    IPAD fand auch problemlos die Bridge.
    Ach ja, das erste einschalten über SIRI....mein Grinsen war
    unbezahlbar.Jetzt werde ich natürlich nach und nach Devices
    einfügen und schauen was so passiert.

    Was mich natürlich noch brennend interessiert, ist die
    Möglichkeit das ganze von außerhalb genauso zu steuern.
    Ich vermute das dafür die Apple TV erforderlich wird, oder?

    Trotzdem auf jeden Fall noch mal Danke für die tolle Anleitung.

  22. WOW! Vielen vielen vielen Dank für das Tutorial. musste es etwas umschreiben für Ubuntu. Hatte schon vor drei Wochen mal probiert das zum laufen zu bringen, hat nicht geklappt. Dank deiner tollen Anleitung läuft es jetzt. Wenn noch jemand das ganze mit SSL laufen hat gibt es hier ein Beispiel mit SSL: https://gist.github.com/jmtatsch/9b190617183d71c48727

  23. Hi ,
    Prima !
    Allerdings verliere ich öfters mal die Verbindung zu Eve ?

    Da an der Git ja weiter entwickelt wird , meine blöde Frage ,wie mach ich da ein Update ?

    • Hi Peter,
      das Update der Homebridge sollte so funktionieren (noch nicht selbst getestet):

      cd /home/pi/homebridge
      git pull
      sudo npm update
      #oder
      sudo npm install

      Würde mich über Feedback freuen.

      Grüße und viel Erfolg
      Jörg

  24. hey

    das sieht ja schon alles sehr gut aus. So könnte ich mir das auch in meinen eigenen vier Wänden vorstellen. Nur stellt sich mir die Frage wie du das verkabelt hast, Hast du alle Leitungen zu Unterverteilung gezogen oder steuerst du das per UP Aktor? Wenn ja welchen?
    Lässt sich das Licht auch schalten wenn du es schon per Siri eingeschaltet hast?

    mfg

    • Hi MaBa,
      ich selbst setzte aktuell viele verschiedene Aktoren ein bzw. teste fleissig kabelgebunden und kabellos. Unter anderem HomeMatic, Philips Hue, Loxone Air, Z-Wave, DMX, KNX, etc. Für das Beispiel im Blogpost verwende ich einen HomeMatic UP-Aktor, dieser ist im Text auch verlinkt.
      Im Grunde sollte alles funktionieren, solange das Device über FHEM erreichbar ist.
      Künftig werde ich wohl beim anstehenden Neubau alles kabelgebunden mit zentraler Steuerung im Unterverteiler machen, aber das ist ein eher ausuferndes Thema, welches wohl viele Blogposts füllen wird. :)
      Das Licht lässt sich auch schalten wenn es schon per Siri eingeschaltet ist, klar. FHEM bekommt in jedem Fall den aktuellen Schaltzustand mit, egal ob per Siri, über FHEM oder direkt am Aktor (solange man einen bidirektionalen Funkaktor verwendet) geschaltet wird.

      Grüße
      Jörg

  25. Ein super Tutorial. Die Installation hat bei mir wunderbar geklappt. Ich konnte somit recht schnell meine Intertechno-Funksteckdosen sowie ein Dummydevice in die EVE App einbinden und auch per Siri bedienen.

    Ich habe jedoch ein Problem mit der Anzeige des Schaltstatus meiner Geräte:
    Nach dem Start des Homebridge-Service kann ich mit EVE eine Verbindung herstellen und alle Geräte und deren Stati werden korrekt aktualisiert. Schalte ich nun ein Gerät (egal ob mit Siri oder in der App), reagiert dieses korrekt. Für die Steckdosen wird jedoch der Anzeigestatus in der App nicht aktualisiert, sondern stellt sich nach dem Wechsel in einen anderen Raum bzw. einem Reload wieder auf den vorhergehenden Wert.
    Bsp: Lampe hat den Status EIN --> ich schalte aus --> nach Ansichtswechsel in App wird wieder Status EIN angezeigt (obwohl die Lampe aus ist)
    Wenn ich Homebridge auf dem Rpi2 stoppe und wieder starte wird der Status korrekt angezeigt, ändert sich nach der nächsten Schaltaktion aber wieder nicht.

    Bei meinem Dummydevice ("einfacher Switch") funktioniert komischerweise alles wie gewünscht.

    Hat jemand ähnliche Probleme oder kann mir helfen???

    • Hi,

      kannst Du mir bitte verraten wie die Intertechno eingebunden sind damit diese per Siri funktionieren?

      Herkömmliche KNX und Hue werden bei mir in der Eve App erkannt und können per Sprache gesteuert werden.

      Gruss
      Chris

  26. Hi,

    danke erstmal für die Anleitung!
    Ich hab leider bei:
    cd ~/homebridge/ && npm run start
    folgende Meldung:
    Loading 1 platforms...
    [FHEM] Initializing FHEM platform...
    starting longpoll: http://127.0.0.1:8083/fhem.pl?XHR=1&inform=type=status;filter=.*;since=null;fmt=JSON&timestamp=1445980402344
    [FHEM] Fetching FHEM switchable devices...
    [FHEM] fetching: http://127.0.0.1:8083/fhem?cmd=jsonlist2%20room=Wohnzimmer&XHR=1
    Loading 0 accessories...
    Server listening on: http://:8081
    longpoll error: Error: read ECONNRESET, retry in: 5000msec
    [FHEM] There was a problem connecting to FHEM (1).
    starting longpoll: http://127.0.0.1:8083/fhem.pl?XHR=1&inform=type=status;filter=.*;since=null;fmt=JSON&timestamp=1445980407469
    longpoll error: Error: read ECONNRESET, retry in: 10000msec
    Einer ne Idee?

    • ah habs in den Kommentaren gefunden... SSL in der config.js aktiviern ;)

  27. Mittlerweile kann ich mich nicht mehr zu Homebridge verbinden! Nachdem ich mehrere Geräte hinzugefügt habe, auch das löschen der persist* und das löschen der Homekit einstellungen im IOS funktionieren nicht mehr!
    Schade. Da bleibt nur beim Activator+ zu bleiben

    • Hallo Marco,

      ich weiß nicht ob es bei Dir ein ähnliches Problem wie bei mir ist. Nach jedem Neustart des Raspi ist die Verbindung futsch. Wenn ich dann in den Geräten die Homebridge entferne und wieder hinzufüge, geht es wieder. Aber dann sind natürlich alle Einstellungen futsch.

      mfg
      Tom

    • Guten Morgen
      Ich habe alles zurückgesetzt, auf dem Server und im IOS! Die Homebridge taucht auch im Eve App auf, aber wenn ich mich verbinden möchte, dann kommt keine Verbindung zum Gerät möglich!
      Gruss

    • So es läuft wieder!
      Ich versuche das ganze grade mit Loxone umzusetzen! Lichtszenen schalten klappt schon, aber bei der Temperatur hänge ich grade fest!
      Ich hoffe, dass von Jörg noch etwas Input dazu kommt!
      Gruss

    • Hi Marco,
      würde gerne helfen, da ich aber die nächsten Wochen nicht Zuhause bin und selbst testen kann, wird das dauern. Hoffe du und die anderen kommen in der Zwischenzeit auch mit gegenseitiger Hilfe weiter.

      Grüße aus Florida :)
      Jörg

    • @Jörg

      Schöne Ferien und geniesse das schöne Wetter dort!

      Gruss

    • Servus,

      wie hast du es denn wieder hinbekommen? Habe das selbe Problem, allerdings bringt das löschen der persist und HomeKit Einstellungen am iPhone nix.

      Beste Grüße

    • Ich habe allen Devices im Raum Homekit, genericDeviceType light oder switch zugewiesen! Eins stand auf blind, das war es wohl!
      Unter welchen genericDeviceType kann man die Temperatur abfragen??

    • Danke, jetzt gehts wieder ;)
      Mein EnOcean Temperatursensor lässt sich über devicetyp "Thermostat" abfragen

  28. Hallo,
    erstmal Danke für dieses einfach erklärte Tutorial!

    Noch zwei Fragen:
    1. Brauch ich unbedingt Icloud? (Habe es auf meinem Iphone deaktiviert)

    2. Kann ich es so einstellen, dass ich es auch von draußen steuern kann? Also mit dem mobilem Internet ohne meinem W-Lan?

    Danke schoneinmal!

    Mfg, William

    • Ich glaube iCloud ist erforderlich. Hat EVE jedenfalls beim Einrichten angemahnt und wenn Du Deiner Frau auch Siri Access geben möchtest, mußt Du sie auf diese Weise sowieso freigeben. Korrigiert mich, wenn das so nicht stimmt.
      Aber die Frage mit dem Steuern von außerhalb interessiert mich auch brennend.

  29. Hi,
    ich hab homematic thermostate, aber kann sie nicht über die App regeln? was muss ich da genau machen? irgendwie seh ich nur ein Gerät sonst nichts. Das Gerät zeigt nur die Raumtemperatur an.

    • Hallo cwinko,

      bei mir hat es geholfen bei den Thermostaten genericDeviceType auf Thermostat zu setzen.

      mfg
      Tom

  30. Erstmal ein dickes Lob für die Mühe, das alles so zusammenzuschreiben. Nach kurzen Anlaufschwierigkeiten funktioniert es erstaunlich gut! Mein Dank gilt schonmal allen, die sich aktiv an diesem tollen Projekt beteiligen.

    Dann noch ein Hinweis, falls es Euch auch betrifft. Ich habe mein Fhem auf dem RasperryPi (Model B+) per SSL abgesichert. Somit funktioniert die homebridge-Config aus der Anleitung nicht. Nach einiger Suche fand ich heraus, dass man die Zeile

    "ssl": "true",

    einfügen muss. Danach flutschte es. Vielleicht kannst Du das in die Anleitung mit aufnehmen.

    Und dann gibt die homebridge beim Start im Terminal aus:
    "...The program 'node' uses the Apple Bonjour compatibility layer of Avahi..."

    Was heißt das? Funktioniert trotzdem alles?

    Nochmal danke,
    Michael

  31. Guten Abend,
    habe es erfolgreich installiert.

    Nur findet Eve mein Homematic Thermostat nicht..
    Philipps Hue findet es schon und ich kann es auch steuern.

    Habe schon probiert das Thermosat in Fhem bei genericDeviceType auf Thermostat zu stellen, hat aber leider auch nichts gebracht.

    Wisst ihr eine Möglichkeit es lauffähig zu machen?

    Bei allen bei denen es funktioniert, wie seid ihr vorgegangen?

    Mit freundlichen Grüßen, William

  32. Eine bitte hätte ich noch. Weiß jemand, wie ich im Terminal den EventMonitor der Homebridge anzeigen lassen kann, wenn ich mich nach einem Neustart des RaspPi einlogge? Man sieht und hört ja nicht, ob das gute Teil läuft.

    Hintergrund... ab und an erscheint die Homebridge in Elagto Eve als abwesend. Nun würde ich gerne sehen, ob sie läuft oder eben nicht :-/

    Danke
    Michael

  33. Hallo,

    durch den Blog habe ich FHEM entdeckt und der Traum vom Smarthome verwirklicht sich Stück für Stück. Die Anleitung ist super dafür vielen Dank, natürlich auch an das FHEM Forum.
    Das erste einrichten klappte ohne Probleme. As ich weitere Geräte zufügen wollte, bekam ich ein disconnect. Wenn ich Homebridge mit: "cd ~/homebridge/ && npm run start" erhalte ich folgenden Error:
    events.js:72
    throw er; // Unhandled 'error' event
    ^
    Error: listen EADDRINUSE
    at errnoException (net.js:904:11)
    at Server._listen2 (net.js:1042:14)
    at listen (net.js:1064:10)
    at Server.listen (net.js:1138:5)
    at EventedHTTPServer.listen (/home/pi/homebridge/node_modules/hap-nodejs/lib/util/eventedhttp.js:58:19)
    at HAPServer.listen (/home/pi/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:132:20)
    at Bridge.Accessory.publish (/home/pi/homebridge/node_modules/hap-nodejs/lib/Accessory.js:347:16)
    at publish (/home/pi/homebridge/app.js:215:10)
    at /home/pi/homebridge/app.js:140:9
    at /home/pi/homebridge/node_modules/hap-nodejs/lib/util/once.js:15:19

    Den Fehler finde ich leider nicht… :-(

    • Du musst die laufende version anhalten.... Ich habs so gemacht, dass ich /etc/init.d/homebridge nach /etc/init.d/homebridge.temp gemoved habe, und dann den RPI 2 neu gestartet (reboot) habe. Ich hatte den Prozess den ich killen muss nicht gefunden, deswegen der reboot.

    • Hallo Chris, also ich wollte sagen: Du muss den einen schon laufenden Homebridge Prozess erst anhalten / killen. Danach gehts wieder.
      Gruss Ingolf

    • Moin,
      da ich noch recht unerfahren mit dem Rasperry bin, würde mir bitte wer erklären, wie man den Prozess findet und dann beendet?

      Falls überhaupt möglich, wie komme ich zu einem späteren Zeitpunkt an den Eventmonitor der Homebridge, welcher sonst alles im Terminal anzeigt, wenn man die Homebridge manuell startet?

      Danke
      Michael

    • Hallo Ingolf, danke für die Tips hat leider nichts gebracht. Mir ist noch aufgefallen, dass bei der IP in der config die vom Pi eingestellt war, obwohl homebridge und fhem auf einem Pi laufen. Habe es auf 127.0.0.1 (localhost mal wieder was dazu gelernt) gestellt. Dann habe ich den Prozess app.js gekilled. Siehe da es läuft wieder. Leider hatte ich aber nach ein paar sek. wieder ein disconnect.
      Habe alles gelöscht und fang von vorne neu an.
      Ich hoffe es liegt nicht an meinem Router oder am Raspi B+…. :-(

      @ Michael, Prozess killen
      1. ps -ax | less
      2. Liste mit Pfeil nach unten durchsuchen
      3. Zahl vom Prozess merken und Q
      4. kill

    • So Homebridge läuft… Nur keine Verbindung zu Eve kann ich herstellen.
      Folgende Events kann ich auf dem Homebridge Server sehen wenn ich mein Licht schalte:

      EventedHTTPServer Server listening on port 51826 +0ms
      2015-11-01 20:52:59 caching: Licht_Couch-state: 1 as number
      2015-11-01 20:53:01 caching: Licht_Couch-state: 0 as number

      Hat jemand noch eine Idee warum Eve nicht die Homebridge findet?
      Access Points hab eich abgeschaltet, feste IP für IPhone vergeben….

  34. Moin Chris, das Teil läuft noch oder der Port ist in use. Das stoppen mit dem Script funktionierte bei mir nicht (anderer Pfad und auf nem Gigabyte brix) deshalb kommt mir die Meldung so bekannt vor. Reboot und prüfen ob's läuft, dann Script anpassen.

  35. Klasse Tutorial, danke!
    Wenn ich Homebridge mit "cd ~/homebridge/ && npm run start" starte, klappt auch alles wunderbar.
    Aber die Autostart-Geschichte läuft nicht.
    Nach der Installation von Forever, dem editieren des Startscripts, dem Setzen der Rechte etc. möchte ich mit "sudo service homebridge start" den Autostart testen, bekomme aber die Meldung:

    sudo service homebridge start
    warn: --minUptime not set. Defaulting to: 1000ms
    warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
    info: Forever processing file: app.js
    error: Cannot start forever
    error: script /home/hs-server-admin/homebridge/app.js does not exist.

    Ein Reboot und Neustart bringt auch nichts, die Homebridge läuft nicht im Autostart.
    Habt ihr einen Tipp, wo der Fehler liegt?

    Grüße michbeck

    • habe leider genau den gleichen Fehler..

    • Hallo michbeck & blackluzie,
      Ihr müsst den Pfad in /etc/init.d/homebridge anpassen, und in den Pfadangaben wahrscheinlich "hs-server-admin" durch "pi" ersetzen.

      Gruss Ingolf

    • Danke Ingolf!
      Ich musste nur "hs-server-admin" durch "pi" ersetzen.

    • Hi
      habe den gleichen Fehler wie Blackluzie und michbeck. konnte aber weder mit Pi oder Pfadänderung einen Erfolg erzielen. Beim Installieren hatte ich den Fehler, dass forever in den tmp Ordner installiert wurde - liegt es daran? Was müsste ich noch einstellen.

  36. Hallo,

    super sachen mit Siri bin gerade beim einbauen :-)

    Jörg: kannst du vielleicht bei Änderungen in der fhem.cfg die Anleitung nicht mit dem benutzen des Editors sondern mit den definierten Device erklären. Ich möchte ungerne direkt in der fhem.cfg arbeiten und rate es anderen auch nicht.

    Beispiel:
    es gibt das Device "global" und dort das Attribute "userattr" so kann man auch den 1. Teil deiner Anleitung vornehmen.

    Viele Spaß

    • Hi Frederic,
      da mein System täglich ein Backup zieht, habe ich eigentlich kein Problem die fhem.cfg direkt zu manipulieren. Aber du hast schon Recht, ich werde bei künftigen Inhalten versuchen darauf zu achten. :)

      Grüße und danke für den Hinweis
      Jörg

  37. Tja, leider währt die erste Freude nicht lange. Homebridge auf dem Pi scheint sich ständig aufzuhängen und verliert dann die Verbindung. Hm, mal sehen, ob man das noch abgestellt bekommt.

    • Das Problem scheint eher Elgato oder iOS zu sein. Ich hatte erst gedacht das Problem tritt nur beim Neustart des Raspi auf. Aber auch wenn die WLAN-Verbindung einmal weg war, ist Schluß. Wenn man dann die Homebridge aus der App entfernt und wieder hinzufügt, geht es wieder. Da auf Homebridge-Seite nichts getan werden muss, glaube ich daher nicht, dass das Problem daher kommt.

      mfg
      Tom

  38. Hallo,
    ich bekomme leider beim Start folgende Fehlermeldungen:

    pi@raspberrypi ~/homebridge $ sudo npm run start

    > homebridge@0.1.1 start /home/pi/homebridge
    > DEBUG=* node app.js || true

    module.js:340
    throw err;
    ^
    Error: Cannot find module '../build/Release/dns_sd_bindings'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object. (/home/pi/homebridge/node_modules/mdns/lib/dns_sd.js:32:22)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

    was läuft hier falsch?

    Besten Dank für Eure Hilfe...

  39. Keymatic wird unterstützt. Nur das öffnen muss über eine Szene derzeit gemacht werden. Habe bei mir "Sesam öffne Dich" definiert.
    Abschließen und aufschließen geht über "Schließe die Tür zu/auf"

    • kannst das vllt bisschen genauer erklären ? Welches device hast in dem raum ? und musste man die global erweitern um den typ ? wie sieht so ein Szenario aus ?

    • wichtig ist das man diese fhem.js version benutzt.

      Ein genericdevicetype ist nicht notwendig wenn man eine Keymatic besitzt. Dies wird dank der FHEM.js erkannt. Wie gesagt, zuschließen und aufschließen geht out of the box. Über eine Szene kann man auch öffnen.

  40. HI zusammen,

    bei mir läuft auch alles einwandfrei... eine Frage hätte ich trotzdem noch..

    weiss einer wie das mit der Harmony funktioniert ?
    Welche devices werden in homekit raum verlinkt und wie startet man Szenarien wie TV an oder DVD schauen, Musik hören.. hat das jemand raus gefunden ?

    • Hi Dom,

      hast Du das Problem mit den Harmony Szenen mittlerweile gelöst bekommen? Ich finde dazu irgendwie nichts bzw. stelle mich wohl zu blöd an ?

      Gruß
      Michael

  41. Hey, wer Interesse hat kann hier seine Konfiguration eintragen.

    Ich möchte hier sammeln, welche Einstellungen für die einzelnen devices nötig sind.
    Grüße Marcel

  42. Hallo Jörg,

    ich hab mal einen Dummy zum Homebridge start stop restart angelegt.

    Funktioniert soweit auch, nur wollte ich nocht Status usw. an den Dummy übertragen, was ich nicht hin bekomme.

    define FHEM.Homebridge dummy
    attr FHEM.Homebridge event-on-change-reading state
    attr FHEM.Homebridge room 9.03_Tech
    attr FHEM.Homebridge webCmd on:restart:off

    define FHEM.Homebridge.DOIF DOIF ([FHEM.Homebridge] eq "on") ({system ("sudo /etc/init.d/homebridge start")})\
    DOELSEIF ([FHEM.Homebridge] eq "off") ({system ("sudo /etc/init.d/homebridge stop")})\
    DOELSEIF ([FHEM.Homebridge] eq "restart") ({system ("sudo /etc/init.d/homebridge restart")})
    attr FHEM.Homebridge.DOIF room 9.03_Tech

    Wichtig auf das setzten das FHEM das init.d Script von homebridge starten darf
    /etc/sudoers
    fhem ALL=(ALL) NOPASSWD:/opt/fhem/FHEM/backup.sh, /etc/init.d/homebridge

    Kannst du mir da weiterhelfen?
    Gerne kannst du das mit dem Dummy auch oben aufnehmen.

    Gruß Robert

    • Hier noch das init.d script mit meiner Anpassung:

      #!/bin/sh
      ### BEGIN INIT INFO
      # Provides: homebridge
      # Required-Start: $network $remote_fs $syslog
      # Required-Stop: $remote_fs $syslog
      # Default-Start: 2 3 4 5
      # Default-Stop: 0 1 6
      # Short-Description: Start daemon at boot time for homebridge
      # Description: Enable service provided by daemon.
      ### END INIT INFO
      export PATH=$PATH:/usr/local/bin
      export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules
      case "$1" in
      start)
      exec forever --sourceDir=/home/hs-server-admin/homebridge start app.js
      perl /opt/fhem/fhem.pl 7072 "setreading FHEM.Homebridge info process started"
      ;;
      stop)
      exec forever stop /home/hs-server-admin/homebridge/app.js
      perl /opt/fhem/fhem.pl 7072 "setreading FHEM.Homebridge info process stopped"
      ;;
      status)
      exec forever list
      ;;
      restart)
      exec forever restart /home/hs-server-admin/homebridge/app.js
      perl /opt/fhem/fhem.pl 7072 "setreading FHEM.Homebridge info process restarted"
      ;;

      *)
      echo "Usage: /etc/init.d/homebridge {start|stop|status|restart}"
      exit 1
      ;;
      esac
      exit 0

  43. Kann mir bitte einer erklären, wie man die Homematic Thermostate mit Siri ansteuern kann?
    Eve findet das Gerät nicht. Andere Geräte findet es schon.

    • Du musst bei FHEM noch den Subtype definieren.
      subtype ist thermostat
      Speichern in FHEM und Homeride neu starten.
      Eventuell bei Eve noch von oben nach unten wischen, damit nach neuen Geräten gesucht wird.

  44. Hallo, ich bekomme nach dem dem Befehl
    sudo service homebridge start
    folgende Meldung

    pi@raspberrypi ~ $ sudo service homebridge start
    warn: --minUptime not set. Defaulting to: 1000ms
    warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
    info: Forever processing file: app.js
    error: Cannot start forever
    error: script /home/hs-server-admin/homebridge/app.js does not exist.
    pi@raspberrypi ~ $

    und der server startet nicht.Ich habe alles nach Anleitung nach gemacht. Kann mir jemand weiter helfen?

    danke

    • Folgendes Szenario:
      Ich hatte Homebridge das erste mal mit ~/homebridge/ && npm run start gestartet. Der Server fuhr hoch und ich sah die Devices aus dem FHEM Homekit Raum in der Eve App.

      Weil das so toll funktioniert hatte dachte ich mir super, dann fügste doch direkt noch mehr Gerät in dem Homekit Raum hinzu.

      Dann startete ich Homebridge per Dienst und der Server fuhr nicht hoch. Scheinbar ist es so, dass man beim Start per Dienst keine Fehlermeldungen sieht. Daher habe ich den Server nochmals per ~/homebridge/ && npm run start gestartet und folgende Fehlermeldung bekommen:

      Error: Cannot add a bridged Accessory with the same UUID as another bridged Accessory: 80b1d194-7d45-4c33-a5b0-62d045511c90
      at Bridge.Accessory.addBridgedAccessory (/home/pi/homebridge/node_modules/hap-nodejs/lib/Accessory.js:164:13)
      at /home/pi/homebridge/app.js:135:18
      at /home/pi/homebridge/node_modules/hap-nodejs/lib/util/once.js:15:19
      at Object. (/home/pi/homebridge/platforms/FHEM.js:623:22)
      at Request.self.callback (/home/pi/homebridge/node_modules/request/request.js:373:22)
      at Request.EventEmitter.emit (events.js:98:17)
      at Request. (/home/pi/homebridge/node_modules/request/request.js:1318:14)
      at Request.EventEmitter.emit (events.js:117:20)
      at Gunzip. (/home/pi/homebridge/node_modules/request/request.js:1266:12)
      at Gunzip.EventEmitter.emit (events.js:117:20)

      Es scheint so als wolle Homebridge die Geräte bei jedem Start neu hinzufügen ohne zu prüfen, ob das jeweilige Gerät bereits integriert ist.

      Sieht nach einem Bug aus..

  45. Hey Markus, sieh mal was Ingolf Omanek am 29. Oktober 2015 hier schrieb, das sollte es sein.

  46. Hallo,
    super Anleitung und toller Blog.
    Meine Frage: Ist es auch möglich damit direkt vom PI über die GPIOs zu schalten?
    Ich möchte gerne einige Lampen kabelgebunden über eine Relaiskarte schalten.
    Danke für jede Antwort und LG,
    Byllyy

  47. Hallo,

    ich bin am verzweifeln, ich habe das ganze Prozedere jetzt schon 3 mal gemacht und es funktioniert einfach nicht. Der Server startet, in der APP wird die Homebridge kurz gefunden, aber beim 1. Verbinden meldet er einen Fehler und dann springt er immer wieder auf den Starbildschirm der APP zurück.
    Kann es sein dass das auf einem Raspberry b+ nicht funktioniert ?? braucht man einen Raspberry 2
    Ich hoffe zumindest dass der server richtig startet ... kann das einer beurteilen ??

    > homebridge@0.1.1 start /home/pi/homebridge
    > DEBUG=* node app.js || true

    *** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
    *** WARNING *** Please fix your application to use the native API of Avahi!
    *** WARNING *** For more information see
    *** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
    *** WARNING *** Please fix your application to use the native API of Avahi!
    *** WARNING *** For more information see
    Starting HomeBridge server...
    _____________________________________________________________________
    IMPORTANT: Homebridge is in the middle of some big changes.
    Read more about it here:
    https://github.com/nfarina/homebridge/wiki/Migration-Guide
    _____________________________________________________________________

    Loading 1 platforms...
    [FHEM] Initializing FHEM platform...
    starting longpoll: http://127.0.0.1:8083/fhem.pl?XHR=1&inform=type=status;filter=.*;since=null;fmt=JSON&timestamp=1446312888363
    [FHEM] Fetching FHEM switchable devices...
    [FHEM] fetching: http://127.0.0.1:8083/fhem?cmd=jsonlist2%20room=Homekit&XHR=1
    Loading 0 accessories...
    Server error: Error: listen EADDRINUSE
    [FHEM] got: 1 results
    [FHEM] auf_burorollo is switchable
    [FHEM] auf_burorollo has onOff [state;on,off]
    [FHEM] Initializing platform accessory 'auf_burorollo'...
    [FHEM] creating services for auf_burorollo
    [FHEM] information service for auf_burorollo
    [FHEM] switch service for auf_burorollo (undefined)
    [FHEM] on characteristic for auf_burorollo
    Scan this code with your HomeKit App on your iOS device:

    ┌────────────┐
    │ 031-45-154 │
    └────────────┘

    Accessory [Homebridge] Creating new AccessoryInfo for our HAP server +0ms
    Accessory [Homebridge] Creating new IdentifierCache +147ms

    events.js:72
    throw er; // Unhandled 'error' event
    ^
    Error: listen EADDRINUSE
    at errnoException (net.js:904:11)
    at Server._listen2 (net.js:1042:14)
    at listen (net.js:1064:10)
    at Server.listen (net.js:1138:5)
    at EventedHTTPServer.listen (/home/pi/homebridge/node_modules/hap-nodejs/lib/util/eventedhttp.js:58:19)
    at HAPServer.listen (/home/pi/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:132:20)
    at Bridge.Accessory.publish (/home/pi/homebridge/node_modules/hap-nodejs/lib/Accessory.js:347:16)
    at publish (/home/pi/homebridge/app.js:215:10)
    at /home/pi/homebridge/app.js:140:9
    at /home/pi/homebridge/node_modules/hap-nodejs/lib/util/once.js:15:19

    Danke lg
    Christoph

  48. Hallo! Danke für den tollen Artikel.
    Bei mir lief die Homebridge zuerst nicht (auf cubietruck), Fehlermeldung war
    Error: dns service error: unknown at new Advertisement (/root/homebridge/node_modules/mdns/lib/advertisement.js:56:10)

    nach einigem suchen hab ich festgestellt, dass avahi-daemon nicht installiert war, den hab ich nachinstalliert und nun läuft es, vielleicht hilft das ja jemandem,
    Gruß
    Sven

  49. Vielen Dank! Läuft wunderbar. Zum Glück gibt es diesen genialen Blog!

    Es hat zwar Stunden gebraucht, hat aber Spass gemacht. /hs-server-admin/ hat mich aufgehalten. Hab dann doch jeden Post gelesen und die Lösung dann gefunden.

  50. Habe leider das selbe Problem wie Michael (29.10.):

    pi@raspberrypi ~ $ sudo service homebridge restart
    error: Error restarting process: /home/pi/homebridge/app.js
    error: Cannot find forever process: /home/pi/homebridge/app.js

    Kann mir jemand helfen? Am Anfang lief es. Nachdem ich neue Geräte hinzufügen wollte, funktioniert nichts mehr. :-( Bei stop sieht es so aus:

    pi@raspberrypi ~ $ sudo service homebridge stop
    error: Forever cannot find process with id: /home/pi/homebridge/app.js

  51. Hi zusammen,

    ich spiel jetzt ne ganze weile damit rum..soweit läuft auch alles...
    die folgenden Befehle funktionieren prima

    „Siri schalte Licht [RAUM] ein/aus“
    „Siri schalte Licht Esstisch/Sofa ein/aus“
    „Siri ist das [RAUM] Licht an?“ Antwort Status1: offen , Status2: geschlossen

    das passt das sind die jeweiligen Statie der Fenster(ohne Name halt)...

    wenn mir hier jemand Rat weis wäre ich sehr dankbar!

    Grüße
    Dom

    P.S: Leider kann man keinen Fake Raum machen und dort alle rein stecken sonst hätte ich das probiert :)

    • aus dem Post oben hast die hälfte weg geschnitten..*grml*

      es ging darum eine Möglichkeit zu finden den Status aller Fenster zu erhalten

      mit dem Licht geht das... "Siri ist das Licht an" .. bekommt man nen summary..
      bei "Siri ist das Fenster offen" oder "Siri sind die Fenster offen/geschlossen" will sie im Web suchen...

      hat da jemand rat ? Wie gesagt der einzel Befehl funktioniert
      "Siri ist das Fenster in der Küche geschlossen" bekomm ich sauber Antwort
      .. Auch in einem Raum wo 2 Fenster drin sind bekomme ich beide Statie zurück..
      aber eben ohne Raum geht das anscheinend nicht .. und ich würd sonst ein Fakeraum erstellen aber man kann Geräte ja nur in einen Raum stecken ;/...

  52. Hallo Jörg,

    wie immer ein super Artikel, habe vor ner Weile schonmal mit der Homebridge experimentiert, aber habs leider nicht hinbekommen. Mein deiner Anleitung hats wunderbar geklappt.
    Habe aber einen Fehler beim Starten des Dienstes
    error: Cannot start forever
    error: script /home/hs-server-admin/homebridge/app.js does not exist.

    Habe im Startscipt die 3 Pfade angepasst:
    exec forever --sourceDir=/home/pi/homebridge start app.js
    exec forever stop /home/pi/homebridge/app.js
    exec forever restart /home/pi/homebridge/app.js

    Damit läuft es auf meinem RPi2 (Raspbian GNU/Linux 8.0 (jessie))

    Gruß Andi

    • Hi Andi,
      freut mich, dass dir der Artikel weitergeholfen hat! Danke für den Hinweis bzgl. der Anpassung unter Jessie. Das hilft sicher auch dem ein oder anderen weiter.

      Grüße
      Jörg

    • Hallo,
      vielen Dank für den Tipp.
      Leider hilft das bei mir nicht, im Verzeichnis finde ich auch keine app.js.
      Hast du noch andere Ideen?
      Gruß Christof

  53. Hallo, super Anleitung. Klappt eigentlich ganz gut, nur mit dem Dienst klemmt' noch ein wenig.

    Frage an anderer Stelle: wenn ich zu eve neue Geräte hinzufügen möchte, wie ist vorzugehen?
    Hab folgendes gemacht:
    - der HomeKit-Gruppe zugewiesen
    - generics vergeben
    - neu gestartet
    - in eve zeigt sich noch nix neues, auch nicht unter neue Geräte suchen (der Throbber dreht ewig)

    Jemand einen Tipp für mich?

    Grüße

  54. Hab ich, hatte den RasPi neu gestartet. Noch eine Idee?

    • Wenn du iOS hast starte das iPhone neu ... Es gibt ein Problem dass iOS die Verbindungen ewig auf hält... Ich hab nach nem Neustart der Homebridge immer das Problem dass die App mir anzeigt das alle Geräte nicht erreichbar bzw verfügbar sind.,, ist zwar lästig aber restarte mal dein phone

  55. Genau das finde ich auch sehr lästig. Tgl ist die Verbindung weg. Hoffe das wird man irgendwie in den Griff bekommen.

  56. Ok. Aber reicht es dann eve neu zu starten nach dem Neustart des iPhones oder muss ich da noch irgendwo was suchen?

    • Also bei mir war es so:
      Ich hab Devices neu zugeordnet , alles wie es sich gehört.. hab danach homebridge neugestartet(auch hier das startscript scheint nicht immer alle processe sauber zu killen, war noch einer da den ich von hand eliminiert habe).. dann habe ich eve neugestartet und alle geräte waren "nicht erreichbar"... ich hab den fehel rgemacht und alles aus eve rausgelöscht, um festzustellen dass es ein Problem mit der connection ist... IOS hält die connection zu dem Server unendlich offen...also noch mal alles eingerichtet ... danach das selbe als ich wieder neue geräte hinzugefügt hatte und homebridge neugestartet hab..
      -> danach Iphone restart -> tada geht und so funktioniert es seidher bei mir wunderbar..

  57. Ich habe gestern festgestellt, das das offene Terminalfenster irgendeinen Port blockiert. Wenn ich das Terminal schließe und dann EVE starte, sind alle Devices wieder erreichbar. Werde das heute nochmal beobachten.

    • Weißt Du zufällig, wie man auf dem Pi wieder an die Statusanzeige der Homebridge kommt, nachdem man das Terminalfenster geschlossen hatte?

  58. Nein, da such ich auch noch nach. Fände ich auch sehr interessant.

  59. Also es scheint doch nicht das Terminalfenster zu sein. EVE ist wohl doch der Auslöser. Muß mal schauen, wie man das lösen kann.

  60. Na toll, jetzt geht erst mal gar nix mehr, verdammt ...

    • Das Startskript sieht jetzt so aus, wieder wie oben, nur mit anderem User (pi):

      #!/bin/sh
      ### BEGIN INIT INFO
      # Provides: homebridge
      # Required-Start: $network $remote_fs $syslog
      # Required-Stop: $remote_fs $syslog
      # Default-Start: 2 3 4 5
      # Default-Stop: 0 1 6
      # Short-Description: Start daemon at boot time for homebridge
      # Description: Enable service provided by daemon.
      ### END INIT INFO
      export PATH=$PATH:/usr/local/bin
      export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules
      case "$1" in
      start)
      exec forever --sourceDir=/home/pi/homebridge start app.js
      ;;
      stop)
      exec forever stop /home/pi/homebridge/app.js
      ;;
      status)
      exec forever list
      ;;
      restart)
      exec forever restart /home/pi/homebridge/app.js
      ;;
      *)
      echo "Usage: /etc/init.d/homebridge {start|stop|status|restart}"
      exit 1
      ;;
      esac
      exit 0

    • Der Dienst scheint zu laufen (start stop klappt), die App startet (neu installiert) und liest auch noch die homekit-daten aus. Nur, wenn ich den aktuellen Status der Geräte abholen möchte kommt nix. Kann auch nichts senden oder so. Es passiert leider nichts.

  61. Hallo, ich bekomme leider folgende Fehler:

    cd ~/homebridge/ && npm run start

    > homebridge@0.1.1 start /home/pi/homebridge
    > DEBUG=* node app.js || true

    /home/pi/homebridge/node_modules/node-persist/node_modules/q/q.js:794
    });
    ^
    SyntaxError: Unexpected token )
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object. (/home/pi/homebridge/node_modules/node-persist/local-storage.js:9:14)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)

  62. Hallo Dom,

    Danke für den Tipp. Ich teste das mal. Kannst du mir noch sagen, wie du den Zombieprozess gefunden hast?

    Wie könnte denn wohl das Startscript optimiert werden?

  63. Hallo,
    kann mir jemand helfen?
    Ich bekomme den Fehler
    pi@raspberrypi ~ $ sudo service homebridge start
    /etc/init.d/homebridge: 8: /etc/init.d/homebridge: Syntax error: "in" unexpected

    • Hi Ronny, du hast wahrscheinlich beim Kopieren einen Fehler gehabt. Hatte das bei VI als ich verpennt hatte den Insert-Mode mit "i" zu aktivieren. Wenn du dann einfügst aktiviert er sich beim ersten i.
      Check mal Dein Script, wahrscheinlich sind nur die ersten drei Zeilen falsch.

    • jetzt habe ich das Problem

      pi@raspberrypi ~ $ sudo service homebridge start
      warn: --minUptime not set. Defaulting to: 1000ms
      warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
      info: Forever processing file: app.js

  64. Dafür müßte man sehen, wie die Datei aussieht. Da ist wohl irgendein Fehler drin....

  65. jetzt habe ich das Problem

    pi@raspberrypi ~ $ sudo service homebridge start
    warn: --minUptime not set. Defaulting to: 1000ms
    warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
    info: Forever processing file: app.js

    gehe mal mit cd homebridge ins Verzeichnis und Starte mit npm run start den Dienst.

    Der Dienst startet zwar, bekomme aber dann folgende Fehlermeldung:

    Error: listen EADDRINUSE
    at errnoException (net.js:904:11)
    at Server._listen2 (net.js:1042:14)
    at listen (net.js:1064:10)
    at Server.listen (net.js:1138:5)
    at EventedHTTPServer.listen (/home/pi/homebridge/node_modules/hap-nodejs/lib/util/eventedhttp.js:58:19)
    at HAPServer.listen (/home/pi/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:132:20)
    at Bridge.Accessory.publish (/home/pi/homebridge/node_modules/hap-nodejs/lib/Accessory.js:347:16)
    at publish (/home/pi/homebridge/app.js:215:10)
    at /home/pi/homebridge/app.js:140:9
    at /home/pi/homebridge/node_modules/hap-nodejs/lib/util/once.js:15:19

  66. Hallo und vielen Dank für die ausfühliche Anleitung!

    Mit homebride habe ich allerdings Probleme und habe den Eindruck, als ob es vielleicht ein Update davon gab?
    /home/pi/homebridge/app.js gibt es bei mir nach der Installation nicht, weswegen auch das Startskript mit forever nicht funktioniert.

    mit /home/pi/homebridge/bin/homebridge kann ich homebridge starten, erhalte allerdings dann den Fehler:

    Loaded config.json with 0 accessories and 1 platforms.
    ---
    Loading 1 platforms...

    /home/pi/homebridge/lib/api.js:84
    throw new Error("The requested platform '" + name + "' was not registere
    ^
    Error: The requested platform 'FHEM' was not registered by any plugin.
    at API.platform (/home/pi/homebridge/lib/api.js:84:13)
    at Server._loadPlatforms (/home/pi/homebridge/lib/server.js:185:45)
    at Server.run (/home/pi/homebridge/lib/server.js:35:36)
    at module.exports (/home/pi/homebridge/lib/cli.js:23:16)
    at Object. (/home/pi/homebridge/bin/homebridge:17:22)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)

    Hat jemand ähnliche Erfahrungen gemacht?

    Viele Grüße, Peter

    • Hab derzeit das gleiche Problem und bisher keine Lösung.

    • Schau bitte was ich weiter unten am November 6th, 2015 geschrieben habe. Dann sollte es gehen

    • Danke, werde ich demnächst testen. Viele Grüße, Peter

  67. Hallo zusammen,
    ich bekommen nach dem Befehl: "sudo service homebridge start"
    die Fehlermeldung :

    Job for homebridge.service failed. See 'systemctl status homebridge.service' and 'journalctl -xn' for details.

    Woran könnte das liegen?
    Vielen Dank und LG

    • Diesen Fehler bekomme ich ebenfalls. Wäre sehr an einer Lösung interessiert.

    • Die Lösung steht hier:

      https://www.npmjs.com/package/homebridge
      und
      https://www.npmjs.com/package/homebridge-fhem

      1) sudo npm install -g homebridge-fhem <- Muss mit sudo laufen sonst gibts Fehler

      2) der config.json muss von /home/pi/homebridge/ nach /home/pi/.homebridge/ verschoben werden

      3) in dem config.json muss "platform": "FHEM", durch "platform": "homebridge-fhem.fhem", ersetzt werden (oder anders ausgedrückt FHEM durch homebridge-fhem.fhem)

      4) Folgenden Pfad anlegen /home/pi/.homebridge/plugins/homebridge-fhem
      Dort dann den config-fhem.json wie in https://www.npmjs.com/package/homebridge-fhem beschrieben, neu anlegen

      5) Homebridge mit dem befehl "/home/pi/homebridge/bin/homebridge" starten, wie von Peter am 4 November beschrieben

      Gruss, Ingolf

    • Danke Ingolf für die schnelle Antwort,
      habe versucht Deiner Anleitung zu folgen und bekomme jetzt folgende Fehlermeldung:

      pi@raspberrypi ~ $ /home/pi/homebridge/bin/homebridge
      *** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
      *** WARNING *** Please fix your application to use the native API of Avahi!
      *** WARNING *** For more information see
      *** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
      *** WARNING *** Please fix your application to use the native API of Avahi!
      *** WARNING *** For more information see
      Loaded plugin: homebridge-fhem
      Registering platform 'homebridge-fhem.fhem'
      ---
      There was a problem reading your config.json file.
      Please try pasting your config.json file here to validate it: http://jsonlint.com

      /home/pi/homebridge/lib/server.js:124
      throw err;
      ^
      SyntaxError: Unexpected token
      at Object.parse (native)
      at Server._loadConfig (/home/pi/homebridge/lib/server.js:118:19)
      at new Server (/home/pi/homebridge/lib/server.js:25:23)
      at module.exports (/home/pi/homebridge/lib/cli.js:23:3)
      at Object. (/home/pi/homebridge/bin/homebridge:17:22)
      at Module._compile (module.js:456:26)
      at Object.Module._extensions..js (module.js:474:10)
      at Module.load (module.js:356:32)
      at Function.Module._load (module.js:312:12)
      at Function.Module.runMain (module.js:497:10)

      Hast Du dazu noch eine Idee woran es liegt?

    • Hallo Ingolf,
      danke für deine schnelle Antwort!
      Wenn ich nach der Anleitung vorgehe:
      sudo npm install -g homebridge-fhem
      Wird leider nirgends ein Ordner .homebridge erstellt. Oder muss ich das Directory selber erstellen?
      Viele Grüße, Kohlibrie

  68. Geht mir genauso. Hatte die Homebridge zuerst laufen mit der Eve App. Nachdem ich Gerätenamen geändert hatte, lief Eve nicht mehr. Alles komplett platt gemacht, wheezy neu geflasht und Fhem und Homeride neu installiert. (Vorher hem config im Editor gespeichert ;-))
    App.js existiert nicht mehr, wurde scheinbar beim nm install nicht mitinstalliert.
    Somit läuft es erstmal nicht. Ich hoffe es wird ein update von nm geben.

    Grüße
    DaZi

    • Der Trick:

      den Namen der Homebridge im Config-File anpassen sowie die Mac-Adresse.
      Aus der EVE-App die alten Homebridge ändern.
      homebrigde neu ausführen und schon klappt es wieder :-)
      Ich bin schon bei homebrige12 :-)

  69. habe noch ein Problem mit meinen Jalousien. Werden nun zwar erkannt, jedoch wenn ich sie schließen möchte, gibt es nur einen kurzen Impuls und dann ist schon wieder Feierabend. Hat jemand vielleicht das gleiche Problem?

  70. Hey Alle,
    vielen Dank Ingolf!

    Der Server läuft nun wieder. Allerdings tauchen bei mir jetzt nur noch die default Geräte auf - also "alarm_control" usw. Wie funktioniert nun das auslesen der Geräte von fhem ?

    Habe vieles versucht, stehe aber irgendwie auf dem Schlauch...

    Hier mein "Log"

    oaded config.json with 0 accessories and 1 platforms.
    ---
    Loading 1 platforms...
    [fhem] Initializing fhem platform...
    [fhem] Plugin homebridge-fhem, Version 0.1.12
    [fhem] Reading 5 Accessories
    [fhem] Initializing platform accessory 'alarm_control'...
    [fhem] Initializing platform accessory 'temp_control'...
    [fhem] Initializing platform accessory 'flex_lamp'...
    [fhem] Initializing platform accessory 'led_bulb'...
    [fhem] Initializing platform accessory 'bathroom_blind'...
    Loading 0 accessories...
    Scan this code with your HomeKit App on your iOS device to pair with Homebridge:

    ┌────────────┐
    │ 122-23-811 │
    └────────────┘

    Homebridge is running on port 51826.

    Hat jemand eine Idee ?

    Vielen Dank !

  71. Ok - denke ich habs.

    Ich muss die devices mit Name und Funktion jetzt direkt in der "config-fhm.json" angeben - dann funktionierts.

    Ist das der Richtige Weg ? Oder gibts eine Alternative ?

    • Hey fluppez,

      kannst du mir verraten, wie genau du dort die Geräte definierst? Ich bekomme immer die Fehlermeldung:

      [fhem] null
      [fhem] statusCode: 401 Message: undefined

      Danke

  72. Hallo,

    das forever Script:

    exec forever stop /home/hs-server-admin/homebridge/app.js

    habe ich angepasst auf
    exec forever stop /home/pi/homebridge/app.js

    leider kommt immer der Fehler:
    pi@raspberrypi ~/homebridge $ sudo service homebridge start
    warn: --minUptime not set. Defaulting to: 1000ms
    warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
    info: Forever processing file: app.js
    error: Cannot start forever
    error: script /home/pi/homebridge/app.js does not exist.

    Was ja stimmt, weil ich in dem Ordner "/home/pi/homebridge" keine app.js finde. Wenn ich Homebridge Clone ist sie auch nicht dabei. Woher bekomme ich diese Datei?

    Danke schon mal im vor raus!

    • Hallo,
      schau Dir mal meinen Beitrag vom 4.11. und Ingolf Omaneks Antwort darauf vom 6.11. an. Damit müsstest Du weiter kommen. Konnte es selbst leider noch nicht testen.
      Viele Grüße, Peter

  73. Erst einmal vielen Dank für den super Beitrag und den vielen sehr wertvollen Kommentaren.

    Ich habe nun alles gemäß der unterschiedlichen Anleitungen durchgeführt.
    Homebridge läuft, die definierten Geräte werden in der eve App angezeigt.

    Leider reagieren die Geräte nicht bei Schalten.

    Ich habe die identische Meldung, wie Dennis erhalten und kann damit leider nicht viel anfangen. Für einen Tipp wäre ich dankbar.

    /home/pi/homebridge/bin/homebridge
    Loaded plugin: homebridge-fhem
    Registering platform 'homebridge-fhem.fhem'
    ---
    Loaded config.json with 0 accessories and 1 platforms.
    ---
    Loading 1 platforms...
    [FHEM] Initializing homebridge-fhem.fhem platform...
    [FHEM] Plugin homebridge-fhem, Version 0.1.13
    [FHEM] Reading 2 Accessories
    [FHEM] Initializing platform accessory 'KZ_Babyphone'...
    [FHEM] Initializing platform accessory 'WZ_Lampen'...
    Loading 0 accessories...
    Scan this code with your HomeKit App on your iOS device to pair with Homebridge:

    ┌────────────┐
    │ xxx-xx-xxx │
    └────────────┘

    Homebridge is running on port 51826.
    [FHEM] null
    [FHEM] statusCode: 401 Message: undefined
    [FHEM] null
    [FHEM] statusCode: 401 Message: undefined

    Was hat es mit den 401 Message: undefined auf sich?

  74. Ich habe auch noch die Warnings, die ich nicht loswerde

    *** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
    *** WARNING *** Please fix your application to use the native API of Avahi!
    *** WARNING *** For more information see
    *** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
    *** WARNING *** Please fix your application to use the native API of Avahi!
    *** WARNING *** For more information see

  75. Hey Dennis,

    einfach in die config-fhem.json

    z.B.

    "name": "HUEDEVICE1",
    "service": "Lightbulb"

    Die "homebridge" scheint FHEM einfach nach dem definierten Namen zu durchsuchen.

    • Hallo fluppez,

      meine config-fhem.json sieht wie folgt aus:

      {
      "gateway": {
      "name": "fhem",
      "url": "127.0.0.1",
      "port": "8083",
      "auth": {"user": "xxxxx", "password": "xxxxxxx"},
      "longpoll": true
      },

      "accessories": [

      {
      "name": "KZ_Babyphone",
      "service": "Switch"
      },

      {
      "name": "WZ_Lampen",
      "service": "Switch"
      }

      ]
      }

      Die Namen entsprechen der FHEM Weboberfläche der Geräte und der Property "NAME"

      Irgendwas falsch gemacht?

    • Hi fluppez,

      jup, so habe ich es auch gemacht. Dennoch erhalte ich den Fehler. Die Geräte werden auch eingelesen und in der App Eve angezeigt. Will ich dann auf der App heraus manuell schalten, dann sehe ich via SSH das ein neuer immer wieder der Fehlercode erscheint.

      [fhem] null
      [fhem] statusCode: 401 Message: undefined

      Gibt es vielleicht bei der allgemeinen Installation noch etwas zu beachten? Das was Ingolf Omanek geschrieben hat, habe ich durch. Seitdem erkennt er wenigstens wieder die Homebridge und kann auch die Geräte einlesen, sofern ich diese manuell eintrage. Ein automatisches einlesen findet bei mir nicht statt, wie es scheinbar bei anderen der Fall ist. Muss vielleicht noch irgendwas bei der Rechtevergabe beachtet werden?

    • Hallo Dennis,

      es hilft dir zwar nicht, aber ich habe die identische Situation und hoffe, dass uns jemand ein Tipp geben kann.

  76. Hallo Peter,

    danke für deine schnelle Antwort!
    Wenn ich nach der Anleitung vorgehe:
    sudo npm install -g homebridge-fhem
    Wird leider nirgends ein Ordner .homebridge erstellt. Oder muss ich das Directory selber erstellen?

    Viele Grüße, Kohlibrie

    • Hallo Kohlibrie,
      bei mir wurde das Verzeichnis beim ersten Start von Homebridge erstellt. Natürlich bekam ich dann eine Fehlermeldung, dass er die Config nicht findet.
      Es spricht aber nichts dagegen, das Verzeichnis selbst anzulegen.
      Viele Grüße, Peter

  77. Mike
    Die accessories braucht man nicht. Zumindest nutze ich die nicht und alles läuft bestens.
    Vielleicht sind es diese die 401 verursachen.
    Lösch die mal raus und Versuchs erneut.
    Die Geräte holt er sich aus der fhem. Man brauch sie in homebridge nicht angeben.

    • Hallo Jakob,

      vielen Dank für deine Nachricht.
      Wenn ich die Geräte nicht definieren, findet die App Eve zwar die Bridge, aber es werden keine Geräte gefunden. Irgendeine Idee?

      /home/pi/homebridge/bin/homebridge
      *** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
      *** WARNING *** Please fix your application to use the native API of Avahi!
      *** WARNING *** For more information see
      *** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
      *** WARNING *** Please fix your application to use the native API of Avahi!
      *** WARNING *** For more information see
      Loaded plugin: homebridge-fhem
      Registering platform 'homebridge-fhem.fhem'
      ---
      Loaded config.json with 0 accessories and 1 platforms.
      ---
      Loading 1 platforms...
      [FHEM] Initializing homebridge-fhem.fhem platform...
      [FHEM] Plugin homebridge-fhem, Version 0.1.13
      [FHEM] Reading 0 Accessories
      Loading 0 accessories...
      Scan this code with your HomeKit App on your iOS device to pair with Homebridge:

      ┌────────────┐
      │ xxx-xx-xxx │
      └────────────┘

      Homebridge is running on port 51826.

  78. Hey Mike,
    Hey Jaakob,

    also bei mir wird auch nichts mehr "automatisch" aus FHEM ausgelesen. Allerdings kann ich die Geräte - wie bereits erwähnt - manuell in der Config anlegen.

    Diese funktionierten dann auch und lassen sich steuern. Prinzipiell finde ich es so auch etwas "Handfester".

    Scheinbar ist das Ganze aber ja irgendwie fehlerhaft,
    wenn bei einigen das Auslesen funktioniert und bei anderen nicht. Leider kann ich nur nicht nachvollziehen woran das genau liegt.

    Woher die 401 ? Keine Ahnung. Nur eine Idee...

    Hat du vielleicht ein AUTH Problem ? Vielleicht SSL und / oder LOGIN aktiviert ?

    Wenn ja, würde ich einfach mal versuchen, diese Optionen temporär zu deaktivieren - nur um auf Nummer sicher zu gehen.

    • Hallo Fluppez,

      vielen Dank für deine Antwort.

      Das Problem ist nun gelöst!!!!

      Was habe ich gemacht

      1) in der fhem.cfg die auth aaskommentiert:
      # attr WEB basicAuth XXXXXXXXXXXXXX

      2) in der config-fhem.json die bestehende auth ersetzt gegen:
      "auth": {"user": "foo", "password": "bar"},

      3) unter Accessories mein Gerät explizit angegeben:
      {
      "name": "WZ_Lampen",
      "service": "Switch"
      }

      WZ_Lampen ist der name aus dem fhem.cfg unter name

      Jetzt klappt es.
      Die Eve App erkennt WZ_Lampe und ich kann sie schalte :-)

      Jetzt muss ich nur noch herausfinden, warum die Auth nicht klappt.
      Vielleicht ist ja mein Pass zu lang? 45 Zeichnen?
      Ich gehe dem mal auf den Grund.

      Vielem Dank für eure Hilfe

    • Hallo nochmal.

      Bei mir ists in der fhem.cfg so eingetragen:
      attr WEB basicAuth { "$user:$password" eq "Benutzername:Passwort" }
      damit gehts. zusätzlich habe ich SSL aktiv und auch in Homebridge angegeben

      "platforms": [
      {
      "platform": "FHEM",
      "name": "FHEM",
      "server": "127.0.0.1",
      "port": "8083",
      "filter": "room=Homekit",
      "ssl": "true",
      "auth": {"user": "Benutzername", "pass": "Passwort"}

      es werden natürlich dann nur die Geräte angezeigt die in FHEM im raum "Homekit" drin sind. man muss keine geräte in homebridge per hand eingeben

      401 ist ein auth problem.

    • Hallo Jacob,

      meiner Erfahrung nach löst die Homebridge nicht mit Pass.

      Tipp:
      Entferne das Pass aus der fhem.cfg sowie die Zeile in der json dabei für Homebridge. Danach sollte es gehen.

      Wenn nicht, Homebridge aus der Eve-App entfernen.
      Name der Homebridge im json-file anpassen z. B. hombridge1 und die Mac-Adresse anpassen.

      Danach wird die Homebridge sofort wieder in Eve gefunden.

    • Warum sollte es mit Pass nicht gehen ?

      Mit Pass ist es bei mir eingerichtet. Außerdem steht oben und in der wiki auch so.....
      http://www.fhemwiki.de/wiki/Homebridge_einrichten

  79. Hey Leute bin jetz schon 2 Tage am ausprobieren ... bekomme immer den selben Fehler..

    pi@raspberrypi ~ $ npm run start

    > homebridge@0.1.1 start /home/pi
    > DEBUG=* node app.js || true

    module.js:339
    throw err;
    ^

    Error: Cannot find module '/home/pi/app.js'
    at Function.Module._resolveFilename (module.js:337:15)
    at Function.Module._load (module.js:287:25)
    at Function.Module.runMain (module.js:467:10)
    at startup (node.js:134:18)
    at node.js:961:3

    woran kann das liegen?
    wäre schön wenn ihr mir helfen könntet.

  80. Moin,

    ich hab nun folgende Fehlermeldung:

    Error: Cannot find module './build/Release/bignum'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at new require (module.js:380:17)
    at Object. (/home/pi/homebridge/node_modules/hap-nodejs/node_modules/srp/node_modules/bignum/index.js:4:14)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

    Wie kann man Module nachinstallieren? Bzw. node.js neuinstallieren?

    Vielen Dank & Beste Grüße

  81. Hallo Jungs,
    erstmal vielen Dank für die tolle Anleitung und die vielen hilfreichen Tipps...
    Ich bin jetzt so weit gekommen, dass homebridge zunächst startet und mir den Block mit dem code anzeigt. Am Ende steigt er jedoch mit folgendem Fehler aus:

    TypeError: Cannot call method 'get' of undefined
    at Gateway. (/usr/local/lib/node_modules/homebridge-fhem/gateway.js:197:18)
    at Timer.listOnTimeout [as ontimeout] (timers.js:110:15)

    Hat jemand eine Idee wie man dieses Problem lösen kann? Beziehungsweise in welche Richtung ich suchen muss...

    Schönen Sonntag,
    Matthias

    • Hey,
      habe es nun schon selber geschafft...
      Sollte jemand das gleiche Problem haben:
      - Ich habe alle Accessories in /home/pi/.homebride/config.json gelöscht.
      - Außerdem in /home/pi/.hombridge/plugins/hombridge-fhem/config-fhem.json auch die Accessories raus genommen.

  82. Hallo zusammen,

    mit der ursprünglichen Anleitung hat alles direkt auf Anhieb funktioniert, in der jetzigen Konstellation bekomme ich es leider, trotz mehrerer Versuche nicht hin. Wäre klasse wenn es nochmal eine aktualisierte Anleitung geben würde.

    Gruss
    Martin

    • Versuch es mal hiermit (so habe ich es Stand 08.11.2015 zum Laufen bekommen):

      1)
      Eintrag aus fhem.cfg
      attr global userattr alarmDevice alarmSettings cmdIcon devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride

      erweitern durch
      attr global userattr alarmDevice alarmSettings cmdIcon devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride genericDeviceType:switch,outlet,light,blind,speaker,thermostat

      2)
      ssh pi@192.168.3.86
      Passwort, wenn nicht geändert: raspberry

      3)
      sudo apt-get update

      4)
      sudo apt-get upgrade

      5)
      Holt die aktuelle Version 4.2.2.
      wget https://nodejs.org/dist/latest-v4.x/node-v4.2.2-linux-armv6l.tar.gz

      6)
      Entpacken
      tar -xvf node-v4.2.2-linux-armv6l.tar.gz

      7)
      cd node-v4.2.2-linux-armv6l.tar.gz

      8)
      sudo cp -R * /usr/local/

      9)
      sudo rm -r node-v4.2.2-linux-armv6l

      10)
      sudo rm -r node-v4.2.2-linux-armv6l.tar.gz

      11)
      sudo apt-get install libavahi-compat-libdnssd-dev

      12)
      sudo apt-get install libkrb5-dev

      13)
      sudo npm install -g homebridge

      14)
      sudo npm install -g homebridge-fhem

      15)
      nano /home/pi/.homebridge/config.json

      {
      "bridge": {
      "name": "Homebridge",
      "username": "CC:22:3D:E3:CE:35",
      "port": 51826,
      "pin": "031-45-154"
      },

      "platforms": [
      {
      "platform": "homebridge-fhem.fhem",
      "name": "FHEM"
      }
      ],

      "accessories": [
      ]

      }

      16)
      nano /home/pi/.homebridge/plugins/homebridge-fhem/config-fhem.json

      Unter Accessories die Geräte angeben, die ihr schalten möchtet.
      Der Namen ist identisch mit den Attrbute "NAME" unter FHEM (Weböberfläche)

      {
      "gateway": {
      "name": "fhem",
      "url": "127.0.0.1",
      "port": "8083",
      "auth": {"user": "foo", "password": "bar"},
      "longpoll": true
      },

      "accessories":[

      {
      "name": "WZ_Lampen",
      "service": "Switch"
      },

      {
      "name": "KZ_Babyphone",
      "service": "Switch"
      }

      ]

      }

      18)
      Hiermit startet ihr den Service
      "homebridge"

    • Hey, Mike!
      Danke für die Anleitung. Auf welchem System läuft das Ganze denn bei Dir. Habe es auf einem RPI Modell B mit Raspbian probiert. Bis zum Punkt 12 funktioniert alles. Die Installation von Homebridge liefert mir dann jedoch tausend Fehlermeldungen.
      Das angebliche Fehlerlog
      npm ERR! Please include the following file with any support request:
      npm ERR! /home/pi/npm-debug.log
      ist gar nicht vorhanden. Ich beiße mir schon seit Tagen die Zähne aus. Keine der diversen Anleitungen, egal ob im FHEM-Forum, im Wiki oder hier im Blog funktionieren bei mir auch nur annähernd.

      Oli

    • Hallo Mike,

      Danke für die Mühe mit der Anleitung. Habe leider auch das Problem, das sich Homebridge nicht installieren läßt. Der Ordner wird gar nicht erstellt.
      Trotzdem Danke. Ich werde jetzt mal mit nem ganz frischen System neuanfangen. Muß doch zu rocken sein....

    • Hallo Oli, hallo Carsten,

      postet mal gerne 1-2 Fehler. Vielleicht können wir auchhelfen.

      Mir hatte auch keine Anleitung geholfen, so bin ich selbst aus Summe von etlichen Anleitungen zu den 18 Punkten gekommen.

      Grüße, Mike

    • Hallo Mike,
      also nach einer kompletten Neuinstallation des PI mit allem drum und dran habe ich Punkt 13 im Pfad home/pi "sudo npm install -g homebridge" ausgeführt.

      Das war erneut das Ergebnis:

      build error
      gyp ERR! stack Error: make failed with exit code: 2
      gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)
      gyp ERR! stack at emitTwo (events.js:87:13)
      gyp ERR! stack at ChildProcess.emit (events.js:172:7)
      gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
      gyp ERR! System Linux 4.1.7+
      gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
      gyp ERR! cwd /usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/mdns
      gyp ERR! node -v v4.0.0
      gyp ERR! node-gyp -v v3.0.1
      gyp ERR! not ok
      npm ERR! Linux 4.1.7+
      npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "homebridge"
      npm ERR! node v4.0.0
      npm ERR! npm v2.14.2
      npm ERR! code ELIFECYCLE

      npm ERR! curve25519@1.1.0 install: node-gyp rebuild
      npm ERR! Exit status 1
      npm ERR!
      npm ERR! Failed at the curve25519@1.1.0 install script 'node-gyp rebuild'.
      npm ERR! This is most likely a problem with the curve25519 package,
      npm ERR! not with npm itself.
      npm ERR! Tell the author that this fails on your system:
      npm ERR! node-gyp rebuild
      npm ERR! You can get their info via:
      npm ERR! npm owner ls curve25519
      npm ERR! There is likely additional logging output above.

      npm ERR! Please include the following file with any support request:
      npm ERR! /home/pi/npm-debug.log

      Der Ordner kann einfach nicht erstellt werden. :-(

    • Hallo, Carsten!
      Nachdem ich auf einem RPI B+ gescheitert bin, habe ich das ganze auf einem RPI2 probiert. Auch da... keine Chance. Ich erhalte dieselbe Fehlermeldung wie Du.
      Vielleicht muss man einfach noch ein paar Wochen warten. Das Ganze scheint wohl noch nicht Plug'n'Play ;)

      PS: Was sagt denn der "Blog-Vater" dazu?

    • Hi Oli,
      die Entwicklung ist derzeitig permanent in Bewegung und infolgedessen kann sich theoretisch täglich etwas ändern. Die Installation scheint - zumindest aktuell - auch noch recht fragil zu sein, entsprechend gibt es auch schon über 100 Kommentare in kürzester Zeit. Support kann ich leider keinen bieten, da ich gerade im Urlaub und damit fern vom eigenen Smart Home bin.

      Grüße aus Florida :)
      Jörg

    • Hallo Ihr alle,

      Was ich ja so komisch finde....
      Ich habe sowohl die Anleitung von Mike beherzigt, als auch die Anleitung von nfarina. Jedoch bleiben meine Fehlermeldungen. Was auch irritierend ist...

      Punkt 7 cd node-v4.2.2-linux-armv6l.tar.gz

      das ist ja kein Verzeichnis. Also habe ich nur den Weg ins Verzeichnis

      cd node-v4.2.2-linux-armv6l

      genommen und mit Punkt 8 weiterzumachen. Es scheint mir irgendein Rechteproblem zu sein. Ich selbst bin kein Kenner der Materie, aber durch TryandError fummelt man sich ja durch. Ich habe auch schon diverse Stunden investiert und auch viel gelernt, was ja durchaus positiv ist. Nur wenn man vor so einer "Kleinigkeit" sitzt und den entscheidenden Kniff nicht findet, verzweifelt man.
      Vermutlich sitzt irgendwo ein Profi und grinst sich eins...:-)
      Im Ernst, Hochachtung vor Allen die uns Amateuren helfen.
      Eins noch. Statt die node Version 4.2.2 habe ich die 4.0.0, jedoch gabs bei der anderen Version die gleichen Fehlermeldungen. Deshalb schließe ich das als Fehlerquelle aus.
      Ein Ehrlich gemeintes "Haltet durch" an alle die noch lernen.

    • Hi Jörg,
      Genieß Deinen Urlaub. Hab schon soviel Deiner Anleitungen genutzt und bin schwer begeistert.

    • Ich kann soweit alle Punkte durchmachen, jedoch bekomme ich beim Start dann folgende Fehlermeldung. (getestet auf RP2, wobei FHEM auf einem anderen Gerät läuft!).
      pi@raspberrypi2:~ $ homebridge
      *** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
      *** WARNING *** Please fix your application to use the native API of Avahi!
      *** WARNING *** For more information see
      *** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in th e Apple Bonjour compatibility layer of Avahi.
      *** WARNING *** Please fix your application to use the native API of Avahi!
      *** WARNING *** For more information see
      /usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/node-persist/node_modules/mkdirp/index.js:74
      throw err0;
      ^

      Error: EACCES: permission denied, mkdir '/home/pi/.homebridge/persist'
      at Error (native)
      at Object.fs.mkdirSync (fs.js:794:18)
      at Function.sync (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/node-persist/node_modules /mkdirp/index.js:55:12)
      at parseDirSync (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/node-persist/node-persist. js:686:16)
      at parseDataDirSync (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/node-persist/node-pers ist.js:617:12)
      at Object.exports.initSync (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/node-persist/no de-persist.js:114:5)
      at Object.init (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/index.js:25:13)
      at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:21:7)
      at Object. (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
      at Module._compile (module.js:435:26)

  83. Hallo,
    Bei mir findet er die Datei app.js nicht obwohl der Installationsprozess normal durchgelaufen ist. Weißt du woran das liegen kann?

  84. Hallo nochmal,

    kann mir jemand sagen, wie nun Geräte wie Schalter oder eine Lampe in Elgato Eve hinein bekommt? Die Verbindung vom iPhone zum homebridge Server funktioniert.
    Wie muss ich meine Geräte in FHEM definieren damit der homebridge Server dies erkennt?

    Danke und Liebe Grüße
    Matthias

    • Hallo Matthias,

      habe ich oben unter Punkt 16) beschrieben

      Grüße, Mike

    • Hey Mike,
      diesen Eintrag habe ich mir bereits angeschaut.
      Egal welche Steckdose ich über Accessories hinzufüge, ich bekomme immer folgende Fehlermeldung:
      undefined:1
      Stehlampe<<off<<<a onClick="FW_cmd('/fhem?XH
      Meine config-fhem.json schaut wie folgt aus (nur der Accessories Teil):
      "accessories":[
      {
      "name": "Stehlampe",
      "service": "Switch"
      }
      ]
      }
      Meine fhem Einstellung für die besagte Stehleuchte sieht wie folgt aus:
      define Stehlampe IT 000FFFF0FF FF F0
      attr Stehlampe IODev nanoCUL
      attr Stehlampe fm_type offbutton,onbutton,lamp
      attr Stehlampe group Steckdosen
      attr Stehlampe model itswitch
      attr Stehlampe room Wohnzimmer
      Danke schonmal für deine Hilfe
      Matthias

    • Hallo Matthias,

      hast du user & pass beim FHEM vergeben.
      Wenn ja, damit klappt es nicht.

      Grüße, Mike

  85. Hey Matthias,

    Schau dir dazu bitte den letzten Post von Mike an. Hier hat er unter Punkt 16) prima beschrieben, wie man die Geräte definiert.

    Noch ne Frage an Dich, Mike:

    Hast du zufällig HUE Lampen bei dir im Einsatz ? Falls ja, kannst du diese dimmen oder die Farbe ändern ? Funktioniert bei mir nämlich leider nicht. Habe diese als lightbulb in der config angelegt.

    • Hallo Fluppez,

      leider habe ich noch keine HUE Lampen im Betrieb.
      Kommt aber bald.

      Grüße, Mike

    • Hallo fluppez,
      diesen Eintrag habe ich mir bereits angeschaut.
      Egal welche Steckdose ich über Accessories hinzufüge, ich bekomme immer folgende Fehlermeldung:
      undefined:1
      Stehlampe<<off<<<a onClick="FW_cmd('/fhem?XH

      Meine config-fhem.json schaut wie folgt aus (nur der Accessories Teil):
      "accessories":[
      {
      "name": "Stehlampe",
      "service": "Switch"
      }
      ]
      }

      Meine fhem Einstellung für die besagte Stehleuchte sieht wie folgt aus:
      define Stehlampe IT 000FFFF0FF FF F0
      attr Stehlampe IODev nanoCUL
      attr Stehlampe fm_type offbutton,onbutton,lamp
      attr Stehlampe group Steckdosen
      attr Stehlampe model itswitch
      attr Stehlampe room Wohnzimmer

      Danke schonmal für deine Hilfe

      Matthias

    • Hallo Matthias,

      nutzt du eine Auth unter FHEM.
      Steht in der fhem.cfg ein username und password.

      Nach meiner Erfahrung ist das derzeit ein weiteres Problem.
      Ich hatte ein user / pass vergeben und habe andauernd die Fehlermeldung error 401 undefined erhalten.

      Nachdem user / pass abgeschaltet hatte, lief es.

      Weitere Frage: hast du auch den Punkt 1) in der fhem.cfg angepasst?
      Sprich die Erweiterung: genericDeviceType:switch,outlet,light,blind,speaker,thermostat
      vorgenommen?

  86. Hallo zusammen und Danke für Eure Hilfe, habe Siri jetzt ans laufen gebracht.
    Einen Punkt habe ich aber noch.

    1. Ich starte wie beschrieben mit "/home/pi/homebridge/bin/homebridge". Jedoch läuft das ganze nur solange das Terminalfenster geöffnet ist.

    Muss/kann ich die Datei von "forever" ändern damit der Pi nach neustart automatisch alles startet, wenn ja wie?

    Hier meine Datei:

    "#!/bin/sh
    ### BEGIN INIT INFO
    # Provides: homebridge
    # Required-Start: $network $remote_fs $syslog
    # Required-Stop: $remote_fs $syslog
    # Default-Start: 2 3 4 5
    # Default-Stop: 0 1 6
    # Short-Description: Start daemon at boot time for homebridge
    # Description: Enable service provided by daemon.
    ### END INIT INFO
    export PATH=$PATH:/usr/local/bin
    export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules
    case "$1" in
    start)
    exec forever --sourceDir=/home/hs-server-admin/homebridge start app.js
    ;;
    stop)
    exec forever stop /home/hs-server-admin/homebridge/app.js
    ;;
    status)
    exec forever list
    ;;
    restart)
    exec forever restart /home/hs-server-admin/homebridge/app.js
    ;;
    *)
    echo "Usage: /etc/init.d/homebridge {start|stop|status|restart}"
    exit 1
    ;;
    esac
    exit 0

    Vielen Dank

    • Hallo,

      Du musst die drei Startpfade anpassen:
      hs-server-admin -> pi

      mfg
      Tom

    • Hallo TomTom,
      danke für die schnelle Hilfe. Habe die Startpfade angepasst, jedoch ohne Erfolg. In dem Pfad /home/pi/homebridge/ ist bei mir leider keine Datei app.js
      Auch in keinem anderen Verzeichniss ist die zu finden.
      Gibt es da noch eine Lösungsidee?
      Danke und LG

    • Ich vermute mal, dass bei der Installation irgendwas mit den Zielpfaden schiefgelaufen ist. Ich habe unter hombridge nicht noch die Unterverzeichnisse bin/homebridge. Evtl. musst Du in der Datei die drei Pfade noch um bin/homebridge erweitern.

      mfg
      Tom

  87. Hi Leute,

    ich brauch mal eure Hilfe... weis jemand ob es möglichist, bzw an was es liegen kann, dass wenn ich ein dummy mit setstate DUMMY on in fhem setze wieso der in homebridge bzw in der APP(EVE) immer noch auf aus steht ?..

    ich kann nicht mit set oder setreadings arbeiten da ich sonst in ne endlos schleife komme...

    zum verständnis- ich hab ein dummy überden ich szenarien schalte mit der harmony, aber gleichzeitig muss ich den status natürlich auch updaten falls ich über die Fernbedienung schalte...

    ### TV dummy ###
    define FernseherWZ dummy
    attr FernseherWZ alias TV
    attr FernseherWZ cmdIcon on:general_an@green off:general_aus@red
    attr FernseherWZ devStateIcon on:it_television@green off:it_television@red set_off:it_television@red set_on:it_television@green
    attr FernseherWZ genericDeviceType switch
    attr FernseherWZ group Multimedia
    attr FernseherWZ icon it_television
    attr FernseherWZ room Dashboard,Homekit,Wohnzimmer
    attr FernseherWZ setList off on
    attr FernseherWZ sortby 01
    attr RadioWZ event-on-change-reading .*
    define FernseherWZAn notify FernseherWZ:on set HarmonyWZ activity 15717656
    define FernseherWZAus notify FernseherWZ:off set HarmonyWZ activity -1

    # update dummy state
    define FernseherWZNotify notify HarmonyWZ:currentActivity.* { if (ReadingsVal("HarmonyWZ","currentActivity","") eq "Fernsehen") { fhem("setstate FernseherWZ on") } else { fhem("setstate FernseherWZ off") } }
    <-- wenn ich hier jetzt set oder setreading verwende lande ich in einer endlesslop da oben ja wieder das activity getriggert werden würde...

    Frage also.. gibts ne möglichkeit nach nem setstate auch ein trigger so das fhem das blickt... das webfrontend muss auch reloaded werden damit der richtige status angezeigt wird... ich denke das ist ein und das selbe problem, nur das homebridge den status nicht reloaded sondern auf ein event wartet....

    kann da jemand helfen ? oder hat vllt nen anderen Ansatz?

    Danke
    Grüße
    Dom

  88. hi!

    bin wohl zu dämlich! trotz eurer hilfreichen Kommentare bekomme ich immer wieder den gleichen Fehler.

    Job for homebridge.service failed. See 'systemctl status homebridge.service' and 'journalctl -xn' for details.

    steige einfach nicht dahinter. warum kann es nicht einfach nach Beschreibung funktionieren? könnt ihr bitte den Artikel entsprechend anpassen?

    Gruss

  89. Hi Leute,

    vorerst mal vielen vielen Dank für die Tollen Artikel die ihr auf der Seite immer schreibt. Ihr habt mich zu FHEM gebracht :-)

    Ich spiele jetzt schon den 2. Tag mit der Installation herum und hab auch die Kommentare von oben bis unten durchgelesen. Ich bekomme die app.js einfach nicht auf meinen Raspberry.

    Grundsätzlich funktioniert der Befehl cd ~/homebridge/ && npm run start, zumindest bekomme ich keine Fehlermeldung ;-)

    Wenn ich Homebridge dann mit service homebridge start anwerfen möchte dann sagt er mir wieder das die app.js fehlt, was ja definitiv so ist.

    root@raspberrypi:/# service homebridge start
    warn: --minUptime not set. Defaulting to: 1000ms
    warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
    info: Forever processing file: app.js
    error: Cannot start forever
    error: script /home/pi/homebridge/app.js does not exist.

    Wo bekomme ich die app.js her ?

    Danke schonmal.

    • Ist ja wirklich eine beeindruckend detaillierte Anleitung! Hat auch alles super funktioniert, auf die Anpassung des Pfades mit 'pi' bin ich auch noch selber gekommen. Allerdings bleibt bei mir das gleiche Problem wie bei Thomas:
      Im Verzeichnis /home/pi/homebridge/ ist kein Script apps.js !
      Danke für einen Hinweis!

  90. Das Modul homebridge-fhem gibt es wohl nicht mehr im rep. So wie ich das sehe wurde es durch

    https://www.npmjs.com/package/homebridge-punt

    Werde es die Tage mal testen. Würde mich über Erfahrungsberichte freuen!

  91. Hallo zusammen,

    wie Mike es geschrieben hat, funktioniert es nun bei mir. Ich habe die Abfrage von Benutzername und Passwort in Fhem deaktiviert. Anschließend erhielt ich keine Fehlermeldung mehr und das schalten der einzelnen Geräte funktioniert nun.

    Vielen Dank an Mike, fluppez und dem Rest dieser spitzen Community.

    Zu meinem Leidwesen werde ich wohl die Installation des Plugins "homebridge-punt" demnächst testen und ich ahne schon jetzt, was passieren wird, ;)

  92. Nach einer aktuellen Anleitung im FHEM-Forum habe ich das Ganze jetzt endlich auf einem PI B zum Laufen bekommen. Lest mal ab Seite 96.

    http://forum.fhem.de/index.php/topic,32652.msg357173.html#msg357173

  93. Hallo, ich habe alles nach der Anleitung installiert. Leider habe ich das Problem das ich folgende Fehlermeldung erhalte :
    pi@raspberrypi ~/homebridge $ sudo service homebridge start
    warn: --minUptime not set. Defaulting to: 1000ms
    warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
    info: Forever processing file: app.js
    error: Cannot start forever
    error: script /home/hs-server-admin/homebridge/app.js does not exist.

    Wo könnte der Fehler liegen?

    OliverW

  94. Danke!

    Läuft! Aber ich sehe keine Geräte. Trotz Zuordnung in den Raum Homekit.

    Woran liegt es?

    • Versuch mal folgendes:

      Homebridge aus der Eve-App entfernen.
      Name der Homebridge im json-file anpassen z. B. hombridge1 und die Mac-Adresse anpassen.
      Danach wird die Homebridge sofort wieder in Eve gefunden inkl. der Geräte.

  95. Ich hab dasselbe Problem wie OliverW. Die Ausgabe ist identisch:
    pi@fhem ~/homebridge $ sudo service homebridge start
    warn: --minUptime not set. Defaulting to: 1000ms
    warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
    info: Forever processing file: app.js
    error: Cannot start forever
    error: script /home/pi/homebridge/app.js does not exist.

    Hat jemand hierfür eine Lösung?

  96. Hallo nochmal,
    Könnte bitte irgendjemand die app.js zum Download anbieten? Es haben hier schon einige gemeldet das sie dieses File nicht haben bzw nirgendwo bekommen?

    Lg

  97. Hi, erst mal herzlichsten Dank an Jörg für das Tut!! Ich habe mich gestern daran versucht und festgestellt, das wohl ein paar Sachen nicht mehr so laufen, wie sie sollen. Anbei mal meine Doku, mit der ich jetzt laut console eine funktionierende Homebridge habe.

    Denkt bitte daran ein Backup anzulegen. Ich möchte lediglich meinen Weg teilen:

    Voraussetzung:
    RPi 2 Model B
    laufende fhem- Installation

    6.5 HomeBridge Installation
    6.5.1 Fhem.cfg anpassen
    Damit alle unterstützten Geräte später korrekt in der HomeKit-Datenbank korrekt erkannt werden, wird das bereits existierende "global userattr" in der fhem.cfg um den Eintrag "genericDeviceType:switch,outlet,light,blind,speaker,thermostat" ergänzt.
    In meinem Beispiel wird der bisherige Eintrag in der fhem.cfg:

    z.B. sieht das dann so aus: attr global userattr alarmDevice alarmSettings cmdIcon devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride genericDeviceType:switch,outlet,light,blind,speaker,thermostat

    6.5.2 Install software
    Jetzt werden die Softwarepaketliste geupdated und die notwendigen Unterpakete installiert, welche für das Kompilieren des im Anschluss installierten node-gyp notwendig sind:

    sudo apt-get update && sudo apt-get -y install libavahi-compat-libdnssd-dev

    6.5.3 Node-gyp
    Im Anschluss wird NodeJS heruntergeladen und für den Betrieb vorbereitet:

    wget http://nodejs.org/dist/v0.10.28/node-v0.10.28-linux-arm-pi.tar.gz -P /tmp && cd /usr/local && sudo tar xzvf /tmp/node-v0.10.28-linux-arm-pi.tar.gz --strip=1

    Sofern die Installation erfolgreich war, wird nach der Eingabe des Befehls
    /usr/bin/env node --version

    der Output "v0.10.28" in der Konsole angezeigt, welcher Auskunft über die korrekt installierte Versionsnummer gibt.

    6.5.4 Installation homebridge und punt
    Anmerkung: npm ist ein nodejs packet manager

    sudo npm install –g homebridge
    sudo npm install –g homebridge-punt

    Beispielconfigs: https://www.npmjs.com/package/homebridge-punt

    6.5.5 Homebridge-config
    Verzeichnis anlegen und config erstellen:

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

    Hier wird folgender Inhalt per Copy&Paste hineinkopiert:
    {
    "bridge": {
    "name": "Homebridge",
    "username": "CC:22:3D:E3:CE:30",
    "port": 51826,
    "pin": "031-45-154"
    },

    "platforms": [
    {
    "platform": "punt",
    "name": "punt"
    }
    ],

    "accessories": []
    }

    Sind die Anpassungen vollzogen, wird die Datei mit der Tastenkombination "STRG + o" gespeichert und der Editor wieder mit der Tastenkombination "STRG + x" geschlossen.

    !Nutzt bei Fehlern http://jsonlint.com/ um die config zu validieren!

    6.5.6 Homebridge-punt config

    sudo mkdir /home/pi/.homebridge/plugins
    sudo mkdir /home/pi/.homebridge/plugins/homebridge-punt
    sudo nano /home/pi/.homebridge/plugins/homebridge-punt/config-punt.json

    Hier wird folgender Inhalt per Copy&Paste hineinkopiert:
    {
    "gateway": {
    "name": "fhem",
    "url": "127.0.0.1",
    "port": "8086",
    #"auth": {"user": "fhemUSER", "password": "fhemPASS"},
    "longpoll": true
    },

    "monitor": {
    "port": "8081",
    "run": true
    },

    "accessories": [
    {
    "name": "Licht_WZ",
    "service": "Switch"
    }

    ]
    }

    Sind die Anpassungen vollzogen, wird die Datei mit der Tastenkombination "STRG + o" gespeichert und der Editor wieder mit der Tastenkombination "STRG + x" geschlossen.

    6.5.7 Start homebridge
    Über die Befehlszeile kann homebridge nun gestartet werden:
    homebridge

    Ich habe auf port 8086 eine internes WEB ohne Authentifizierung. Wenn ich einen Port mit Auth nehme bekomme ich
    [punt] null
    [punt] statusCode: 401 Message: undefined

    6.5.8 autostart
    Zuerst wird Forever mit dem Befehl

    sudo npm install forever -g

    installiert und anschließend das eigentlich Startscript über den nano-Editor mit dem Befehl

    sudo nano /etc/init.d/homebridge

    erstellt. In der leeren Datei werden per Copy&Paste die Zeilen

    #!/bin/sh
    ### BEGIN INIT INFO
    # Provides: homebridge
    # Required-Start: $network $remote_fs $syslog
    # Required-Stop: $remote_fs $syslog
    # Default-Start: 2 3 4 5
    # Default-Stop: 0 1 6
    # Short-Description: Start daemon at boot time for homebridge
    # Description: Enable service provided by daemon.
    ### END INIT INFO
    export PATH=$PATH:/usr/local/bin
    export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules
    case "$1" in
    start)
    exec forever --sourceDir=/usr/local/bin start homebridge
    ;;
    stop)
    exec forever stop /usr/local/bin/homebridge
    ;;
    status)
    exec forever list
    ;;
    restart)
    exec forever restart /usr/local/bin/homebridge
    ;;
    *)
    echo "Usage: /etc/init.d/homebridge {start|stop|status|restart}"
    exit 1
    ;;
    esac
    exit 0

    eingefügt. Sind die Anpassungen vollzogen, wird die Datei wieder mit der Tastenkombination "STRG + o" gespeichert und der nano-Editor mit der Tastenkombination "STRG + x" geschlossen.

    Jetzt erhält die Datei mit dem Befehl

    sudo chmod 755 /etc/init.d/homebridge

    abschließend noch die notwendige Berechtigung verpasst.

    Um den Autostart künftig zu aktivieren, wird der Befehl

    sudo update-rc.d homebridge defaults

    ausgeführt. Soll der Autostart wieder deaktiviert werden, kann der Befehl "sudo update-rc.d -f homebridge remove" (ohne Anführungszeichen) verwendet werden.

    Ab sofort kann der Homebridge-Service auch bequem im laufenden Betrieb zu Testzwecken mit

    sudo service homebridge start

    gestartet und über den Befehl

    sudo service homebridge stop

    beendet werden.

    So läuft HomeBridge bei mir jetzt erst mal. Bin leider nicht zu Hause und könnte testen ;) Aber vielleicht hilft es erstmal irgend jemandem weiter.

    Zum Schluß noch 2 Sachen, die jetzt stehengeblieben sind:

    Problem 1: startet nicht automatisch @reboot, obwohl eingetragen (auch über rcconf ersichtlich)
    Problem 2: Ich habe auf port 8086 eine internes WEB ohne Authentifizierung. Wenn ich einen Port mit Auth nehme bekomme ich
    1 [punt] null
    1 [punt] statusCode: 401 Message: undefined

    Habe hier bereits die verschlüsselten Anmeldedaten in der fhem.cfg in Klartext gewandelt, mit gleichem Ergebnis.

    Grüße Nilven

    • Hallo Nilven,

      danke für deine super Anleitung! Mein homebridge-server läuft nun, nur leider finde ich ihn in keiner Homekit App. (Server und Handy befinden sich beide im gleichen Netzwerk). Hast du eine Idee woran das liegen könnte?

      Gruß

  98. Hallo,
    ich habe dasselbe Problem (derselbe Wortlaut) wie OliverW. Bei mir fehlt auch lediglich die app.js. Habe homebridge hier strikt nach der tollen Anleitung von Jörg ohne Probleme umgesetzt. Lediglich die Pfade in der /etc/init.d/homebridge hab ich von /home/hs-server-admin/ auf /home/pi/ geändert.

    Hat hier irgend jemand eine Lösung?
    Besten Dank im Voraus.

    • Hi,

      habe das selbe Problem mit der app.js
      Wollte dann dem Post vom 6.11. folgen (https://www.npmjs.com/package/homebridge-fhem).

      Leider steht dieses Package nicht zur Verfügung. Erhalte da lediglich einen 404-Fehler.

      Kann wer helfen, oder gibt es eine alternative Quelle?

      LG
      Spliddorama

  99. habe heute das tutorial durchgearbeitet. In meinem homebridge-Verzeichnis gibt es auch keine app.js.
    Kann jemand helfen?

  100. Kleiner Tipp!

    Da man keine Namen wie "Deckenlampe" doppelt vergeben kann, sollte man bei EVE den Namen unter Funktionen gleich mitsamt dem Raum angeben.
    Also "Wohnzimmer Deckenlampe"
    Siri scheint das auch in der Form am Besten zu verstehen! Wichtig ist das Leerzeichen, damit auch zwei Wörter erkannt werden.

  101. Hier nochmal für alle, die verzweifelt die app.js suchen:

    Es gab ein Update für homebridge, das umfangreiche Änderungen mit sich gebracht hat. Dadurch existiert die app.js schlicht und ergreifend nicht mehr und wird auch nicht mehr benötigt. Zwischenzeitlich gab es dann ein homebridge-fhem Plugin, das aber gestern oder vorgestern auch wieder verschwunden ist.

    Jetzt ist das homebridge-punt Plugin "state of the art"... und bleibt es hoffentlich ein wenig. ;-) Dazu könnt ihr jetzt der Anleitung weiter oben von Nilven (11. November) folgen. Achtet aber darauf, dass ihr ggf. die Pfade im Skript für den Autostart anpassen müsst, wenn homebridge bei euch in /home/pi und nicht in /usr/local/bin liegt.

    Bei mir gab es da nur ein Problem, dass ich nicht auf einen Port ohne Authentifizierung verbinden konnte, sofern longpoll aktiv war. Den Fehler habe ich gefunden und an den Autor weitergegeben, die neuste Version von homebridge-punt funktioniert jetzt bei mir.

    Natürlich ärgerlich für Jörgs tolle Anleitung, dass sich so kurzfristig soviele Dinge verändert haben. Aber ohne seine Anleitung wäre ich vermutlich gar nicht soweit gekommen.

    Ich schalte jetzt mal ein wenig per Sprache... viel Erfolg euch allen! ;-)

    • Danke für die Info, ich hatte mir nach intensivem Forenstöbern schon sowas gedacht!
      Trotzdem Vielen Dank an Jörg. Ohne die gute Anleitung hätte ich es gar nicht erst versucht! Wer hätte vermutet, dass sich das ganze Setup so schnell ändert.

      Nochmal an alle: Die im Tut gezeigte Variante mit der app.js funktioniert nicht mehr.
      Ich werde mich jetzt mal an der homebridge-punt Variante von Niven versuchen!

  102. hi Jörg,

    da sich in den letzten Tage in Sachen Homebridge so einiges getan hat und vieles nicht mehr aktuell ist, wäre es vllt. sinnvoll das Tutorial auf die aktuellen Gegebenheit anzupassen?!

    http://forum.fhem.de/index.php/topic,32652.msg357929.html#msg357929

    http://forum.fhem.de/index.php/topic,32652.msg358063.html#msg358063

    • Halte ich auch (bedingt) für sinnvoll.
      Es ist alles aber natürlich voll in der Entwicklung, bevor es dann meiner Meinung nach dann Massentauglich wird, wird es noch einige Zeit dauern.

  103. Weiss jemand wie man Siri/Homebridge andere Kommandos beibringen kann, z.B. Rollladen aufwärts/abwärts?

  104. Hallo,

    kann nochmal jemand die homebridge inkl. app.js
    Dropboxen und den link hier teilen?

    Danke dafür

  105. Moin,
    Hat es zufällig schon jemand geschafft Milight devices in Homeridge einzubinden?
    Es gibt ein Node-milight-promise Modul, nur weiß ich leider nicht was ich damit machen muß.
    Vielleicht hat ja jemand einen Tipp für mich.
    Gruß, Oliver

  106. Also, bei mir läuft alles nach diesem Tut! Jetzt, gut zwei Wochen. Kann die Heizung steuern sowie das Licht. Ich musste nur den Pfad, mit Pi ändern.

  107. Hallo ich habe seit gestern den Raspberry Pi2 und wollte diese Tutorial anwenden wenn ich den Befehl

    sudo service homebridge start

    eingebe bekomme ich immer diese Fehlermeldung

    Job for homebridge.service failed. See 'systemctl status homebridge.service' and 'journalctl -xn' for details.

    Kann mit bitte jemand dabei helfen was ich tun muss?

  108. Ich habe Probleme die Homebridge zu starten. Folgende Fehlermeldung wird mir angezeigt:

    > homebridge@0.1.1 start /home/pi/homebridge
    > DEBUG=* node app.js || true

    module.js:339
    throw err;
    ^

    Error: Cannot find module '/home/pi/homebridge/app.js'
    at Function.Module._resolveFilename (module.js:337:15)
    at Function.Module._load (module.js:287:25)
    at Function.Module.runMain (module.js:457:10)
    at startup (node.js:136:18)
    at node.js:972:3

    Neuinstallation aller Komponenten brachte kein Ergebnis. Hat jemand eine Idee?

  109. Hi, habe ein kleines Problem vielleicht könnt ihr mir helfen. Ich habe folgendes Config:

    config.json:
    {
    "bridge": {
    "name": "Homebridge",
    "username": "CC:22:3D:E3:CE:30",
    "port": 51826,
    "pin": "031-45-154"
    },
    "platforms": [
    {
    "platform": "punt",
    "name": "punt"
    }
    ],
    "accessories": []
    }

    config-punt.json:
    {
    "gateway": {
    "name": "fhem",
    "url": "192.168.100.137",
    "port": "8083",
    "auth": {"user": "fhemUSER", "password": "fhemPASS"},
    "longpoll": true
    },
    "monitor": {
    "port": "8081",
    "run": true
    },
    "accessories": [
    {
    "name": "Licht_Stehlampe",
    "service": "Switch"
    }
    ]
    }

    Wenn ich in der App Eve die Lampe ein oder ausschalte stürzt das Homebridge Script folgender Fehlermeldung ab:

    loaded plugin: homebridge-punt
    Registering platform 'homebridge-punt.punt'
    ---
    Loaded config.json with 0 accessories and 1 platforms.
    ---
    Loading 1 platforms...
    [punt] Initializing punt platform...
    [punt] homebridge-punt v0.1.7
    [punt] Reading 1 Accessories
    [punt] Initializing platform accessory 'Licht_Stehlampe'...
    Loading 0 accessories...
    Scan this code with your HomeKit App on your iOS device to pair with Homebridge:

    ┌────────────┐
    │ 031-45-154 │
    └────────────┘

    Homebridge is running on port 51826.
    [punt] Monitor is running on port 8081
    [punt] homebridge-punt a new version 0.1.7
    is avaiable
    [punt] longpoll: Licht_Stehlampe ended

    undefined:1
    Licht_Stehlampe<<on<<<a onClick="FW_cm
    ^
    SyntaxError: Unexpected token L
    at Object.parse (native)
    at Gateway.request.get.on.on.longpoll_running (/usr/local/lib/node_modules/homebridge-punt/gateway.js:235:28)
    at Request.EventEmitter.emit (events.js:95:17)
    at IncomingMessage. (/usr/local/lib/node_modules/homebridge-punt/node_modules/request/request.js:1006:12)
    at IncomingMessage.EventEmitter.emit (events.js:95:17)
    at IncomingMessage. (_stream_readable.js:745:14)
    at IncomingMessage.EventEmitter.emit (events.js:92:17)
    at emitReadable_ (_stream_readable.js:407:10)
    at emitReadable (_stream_readable.js:403:5)
    at readableAddChunk (_stream_readable.js:165:9)

    Die Lampe wir vorher erfolgreich aus bzw. eingeschaltet.

    Vielleicht könnt ihr mir helfen!!!

    Grüße
    Martin

  110. Vielen Dank für die Klasse Anleitung. Anscheinend wird Homebrigde gerade umgebaut (Plug-In-Struktur).

    Ich habe es mit den folgenden Befehlen installieren können:
    > sudo npm install -g homebridge
    # FHEM Plugin installieren
    > sudo npm install -g git+https://github.com/justme-1968/homebridge-fhem.git

    Funktionieren bei einem von Euch die Rolläden? Ich kann sie zwar über die EVE App steuern - mit Siri klappt es leider nicht.

    Beste Grüße

    Michael

  111. error: script /home/pi/homebridge/app.js does not exist.

    Was mach ich falsch?

  112. Stundenlang mit der Anleitung verbracht, nur um am Schluss festzustellen, dass sie nicht mehr funktioniert. Yai...
    Kann man das nicht oben einfach erwähnen?

    • Hi Stefan,
      habe die Info jetzt oben im Blogpost vermerkt. Sorry, dass ich nicht früher dazu gekommen bin.

      Cheers
      Jörg

    • Wow, so schnell hätte ich dann doch nicht mit einer Antwort gerechnet ;)
      Danke für deine Mühe, Jörg!

    • Da ich jetzt aus dem Urlaub zurück bin, werden die Antwortzeiten wieder etwas kürzer sein als die letzten Wochen. :)

      Grüße
      Jörg

  113. Die von mir gepostete Anleitung funktioniert weiterhin.

    • Hi Mike,

      Dein Tut ist wirklich supoer auch für DAUs wie mich ;-) Was hast due denn für eine Plattform? Auf meinem Raspi 2 unter weezy zickt bei mir die Installation von v4.2.2-linux-armv6l.tar.gz. Evtl hilft es, Plattform und OS Version mitzuposten? Am weitersten bin ich bei meinem System noch mit node.js v0.10.28 gekommen...

    • Hi Mike,
      vielen Dank für deine Anleitung! Habe sie auch nochmal am Anfang des Blogpost verlinkt.

      Viele Grüße
      Jörg

    • Bei allem Respekt für Deine prima Anleitung: Das kann ich mir nur schwer vorstellen. Bei mir erscheint die Fehlermeldung:

      npm ERR! 404 Registry returned 404 for GET on https://registry.npmjs.org/homebridge-fhem
      npm ERR! 404
      npm ERR! 404 'homebridge-fhem' is not in the npm registry.

      Das homebridge-fhem-package ist anscheinend nicht mehr Bestandteil von npm. Irgendwo habe ich gelesen, dass jetzt homebridge-punt das aktuelle Modul sein soll.

  114. Hi,
    Zufällig bin ich auf diesen Beitrag gestossen. Das hier zitierte Plugin homebridge-punt entwickle ich nebenbei aber es gibt immer wieder Verbesserungen und Erweiterungen. Gestern habe ich die neuste Version 0.1.15 auf npm hochgeladen. Aktuell enthält homebridge-punt auch einen Simulator, der mit oder ohne Verbindung zum Fhem-Server funktioniert. Soweit möglich werde ich auch Fragen beantworten. Viel Erfolg.

    Gruss
    flurin

    • Hi flurin,
      einen großen Dank an dich und alle anderen, die sich bei der Entwicklung und Probemlösung aktiv beteiligen!

      Grüße
      Jörg

  115. Hallo,

    danke für die tolle Anleitung!
    Der Server läuft und alle Plugins werden erkannt. Leider finde ich mit keinem IOS Gerät den Homebridge server. Ich habe dem Server auch schon eine neue Mac-Adresse, ein neuen Namen und den Order persists gelöscht. Leider ohne Erfolg.

    Hat noch jemand eine Idee?
    (Server und IOS Device befinden sich natürlich im selben WLAN)

    Danke!

    • Hi Steffan,
      ich bin leider raus, was top-aktuelle Anpassungen/Änderungen bei Homebridge anbelangt. Hoffe dir kann jemand anderes weiterhelfen!

      Grüße
      Jörg

    • Hallo Steffan,
      Du musst mal im Logfile schauen, das alle deine accessories korrekt/fehlerfrei erkannt werden, ich konnte bei mir die Homebridge auch immer erst in Eve finden, wenn alles total clean war. Selbst wenn da steht "ignoring Device" oder "ignoring accessory" gehts in die Hose. Oder sobald es eine andere Fehlermeldung gibt. Dann erkenne Eve nichts.

      Einfach mal den Text vor den folgenden "Scan this code ..." Zeilen genau durchschauen, das muss alles fehlerfrei sein. Ansonsten würde ich mal nur mit einem accessory anfangen.

      Scan this code with your HomeKit App on your iOS device to pair with Homebridge:
      ┌────────────┐
      │ 031-45-154 │
      └────────────┘

  116. @Steffan,
    Falls du homebridge-punt verwendest, siehe:
    https://github.com/cflurin/homebridge-punt/wiki/Running-Homebridge-on-a-Raspberry-Pi

    Gruss
    flurin

  117. Hallo,
    ich suche schon seit anfang an, eine Möglichkeit die MiLight Bulbs in der EVE App oder via Siri auf weiß zu bekommen, leider ohne Erfolg.
    Hat jemand vielleicht einen Tipp für mich?

    Gruß,
    Oliver

  118. Hallo zusammen,
    ist echt eine super Anleitung. Ich komme leider nur bei einem Schritt nicht weiter un zwar da wo ich den Homebridge Server starte, habe ich zuvor ja den Quelltext implementiert. Komischerweise war der Ordner homebridge auch noch nicht vorhanden, sodass ich ihn selbst anlegen musste. Hat da einer einen Tipp für mich?

    Gruß
    Dominik

  119. Hallo zusammen,
    ist echt eine super Anleitung. Ich komme leider nur bei einem Schritt nicht weiter un zwar da wo ich den Homebridge Server starte, habe ich zuvor ja den Quelltext implementiert. Komischerweise war der Ordner homebridge auch noch nicht vorhanden, sodass ich ihn selbst anlegen musste. Hat da einer einen Tipp für mich?

    Das wird mir beim Start des Servers angezeigt:

    npm ERR! System Linux 4.1.7-v7+
    npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "run" "start"
    npm ERR! cwd /root/homebridge
    npm ERR! node -v v0.10.28
    npm ERR! npm -v 1.4.9
    npm ERR! path /root/homebridge/package.json
    npm ERR! code ENOENT
    npm ERR! errno 34
    npm ERR!
    npm ERR! Additional logging details can be found in:
    npm ERR! /root/homebridge/npm-debug.log
    npm ERR! not ok code 0

    Gruß
    Dominik

    • Ich bekomme exakt dieselbe Fehlermeldung:

      npm ERR! Error: ENOENT, open '/home/pi/package.json'
      npm ERR! If you need help, you may report this *entire* log,
      npm ERR! including the npm and node versions, at:
      npm ERR!

      npm ERR! System Linux 4.1.13+
      npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "run" "start"
      npm ERR! cwd /home/pi
      npm ERR! node -v v0.10.28
      npm ERR! npm -v 1.4.9
      npm ERR! path /home/pi/package.json
      npm ERR! code ENOENT
      npm ERR! errno 34
      npm ERR!
      npm ERR! Additional logging details can be found in:
      npm ERR! /home/pi/npm-debug.log
      npm ERR! not ok code 0

      Hat denn keiner ein Rat?

    • Guten Morgen,
      hat jemand eine Idee woran das liegen kann?
      Tim läuft es bei dir inzischen?
      LG
      Dominik

  120. Hi,

    jemand schon irgendwelche Informationen mit der Neuen EQ3 lösung Homematic IP ?

    oder war das doch ein Fehlkauf ?

    gruß

  121. Also nach folgenden Anleitungen habe ich es einwandfrei zum laufen bekommen. Keine Probleme seit ca. 3 Wochen.
    Bitte beachten: Jede Anleitung beinhaltet nur das allgemeine Vorgehen. jeder muss selbst schauen, ob er einen Pi1 oder Pi2 hat und entsprechend die für ihn passenden Schritte auswählen.
    Mein persönlicher Tipp: Ich habe FHEM und HomeBridge auf zwei verschiedenen Pi's laufen (FHEM auf einem neuen Pi2, HomeBridge auf einem alten Pi1). So kann ich mit Homebridge wie wild basteln, ohne meine FHEM-Installation zu gefährden. Der HomeBridge-Pi1 läuft übrigens mit Jessie - da ist ein aktueller C-Compiler (gcc version 4.9.2) schon enthalten.
    1. Anleitung (für die Voraussetzungen): https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi
    Bitte auch die jeweiligen Links in den einzelnen Schritten beachten, folgen und ggf. ausführen (Beispiel: Installation von NodeJS; ich habe Version v4.2.3 installiert)
    2. Anleitung (für die Installation von HomeBridge): https://github.com/nfarina/homebridge
    Ich habe das Plugin homebridge-fhem installiert
    3. Anleitung: http://www.fhemwiki.de/wiki/Homebridge_einrichten#Homebridge_konfigurieren
    Wichtig: Erst ab dem Abschnitt "Homebridge konfigurieren" fortfahren! Bis zum Ende durchkonfigurieren.

    Tataaa - seitdem läuft es bei mir!

  122. immer wenn ich alles genau nach Anleitung installiere, installiert er mir irgendwas in /root/.homebridge und nicht in /home/pi/.homebridge

    außerdem fehlt mir der ordner "plugin" in .homebridge...

    Was mache ich denn falsch?! Sonst läuft alles ganz normal.

  123. Hallo Stefan,

    Du darfst nicht als Root angemeldet sein, sondern als pi. Die Installation dann, wo nötig, mit sudo ausführen.

  124. ich bin als pi angemeldet und führe es mit "sudo npm install homebridge" aus...

  125. Ah ok... nach einem Neustart konnte ich die "homebridge" unter pi installieren. Ich habe genauso den plugin "homebridge-fhem" installiert, jedoch taucht kein weiterer Ordner "plugins" oder Ähnliches unter .homebridge/ auf...

  126. OK, dann fehlt jetzt nur noch das Plugin:

    sudo npm install -g homebridge-fhem

    Siehe auch den Abschnitt "Installing Plugins" der Anleitung auf GitHub zu Homebridge.

    Grüße

  127. Sorry, war noch zu früh zum richtig Lesen ...
    Jetzt weiter mit drittens - da spielt sich alles im Ordner ~/.homebridge ab.

  128. ja das mit den Plugins habe ich verstanden, aber wenn ich den plugin mit "sudo npm install -g homebridge-fhem" installiere (auch als pi mit sudo...) installiert er mir im .homebridge keine neuen Ordner... das wundert mich ein wenig

    • Es braucht nix in dem Ordner, außer der config.json

      Beim Start bzw. nach der Konfiguration des Homebridge-Servers wird dann noch das Verzeichnis persist unter /.homebridge angelegt.

      Das, was Du wahrscheinlich suchst, ist alles unter /usr/local/lib/node_modules/

      Aber nochmal: Das brauchst Du nicht.

      Hast Du den dritten Schritt einfach mal ausprobiert? Funktioniert es?

  129. @alle die mehr wissen als ich - also alle ;-)

    Hallo Jörg,
    schon mal vielen Dank für diesen tollen Blog.

    Nachdem ich mir hier schon viel angelesen habe, bleibt bei mir ein Problem:
    Trage ich "genericDeviceType" wie oben beschrieben in der fhem.cfg ein und setzte z.B. "attr AZ_Licht genericDeviceType light" für mein EIB Licht, dann kann ich auf dem iPhone Homebridge nicht mehr einlesen.
    Der Vorgang bricht mit dem Fehler ab "Hinzufügen fehlgeschlagen".
    Kommentiere ich "attr ..." aus, kann ich zwar wieder koppeln, aber es werden dann halt nur "switch" markierte Geräte, also "ein/aus" angezeigt.

    Mache ich hier etwas falsch?
    Ich bitte um Hilfe. Danke im Voraus.

  130. Hallo Jörg, DANKE erst mal für die Anleitung!!
    Hab hier noch ein kleines problem am Raspberry beim starten des Service..
    wenn ich den status ausgeben lasse kommt folgendes:

    ● homebridge.service - LSB: Start daemon at boot time for homebridge
    Loaded: loaded (/etc/init.d/homebridge)
    Active: failed (Result: exit-code) since Sat 2015-12-26 20:21:47 CET; 3min 4s ago
    Process: 5020 ExecStart=/etc/init.d/homebridge start (code=exited, status=255)

    Dec 26 20:21:47 raspberrypi homebridge[5020]: warn: --minUptime not set. Defaulting to: 1000ms
    Dec 26 20:21:47 raspberrypi homebridge[5020]: warn: --spinSleepTime not set. Your script w...0ms
    Dec 26 20:21:47 raspberrypi homebridge[5020]: info: Forever processing file: app.js
    Dec 26 20:21:47 raspberrypi homebridge[5020]: error: Cannot start forever
    Dec 26 20:21:47 raspberrypi homebridge[5020]: error: script /home/hs-server-admin/homebridg...st.
    Dec 26 20:21:47 raspberrypi systemd[1]: homebridge.service: control process exited, code=exit...255
    Dec 26 20:21:47 raspberrypi systemd[1]: Failed to start LSB: Start daemon at boot time for ho...ge.
    Dec 26 20:21:47 raspberrypi systemd[1]: Unit homebridge.service entered failed state.

    Warning: Unit file changed on disk, 'systemctl daemon-reload' recommended.
    Hint: Some lines were ellipsized, use -l to show in full.

    ...bin blutiger Neuling auf dem gebiet... :)
    kann mir hier jemand helfen? Die installation ist sonst ohne Probleme durchgelaufen, glaub ich zumindest.

    lg
    Martin

    • Hi Martin,
      ich habe exakt das selbe Problem... Elgato Eve erkennt meine Homebridge. aber in FHEM taucht kein HomeKit auf. Habe die installation (sogar RP2 neu aufsetzten) nochmal durchgeführt.
      Selbes problem....

  131. Hallo hatte gestern nach langem Installieren, Konfigurieren (wusste auch nicht immer genau was ich machte) die Homebridge mit Siri zum Laufen gebracht. Siri hat das Licht geschaltet.
    Bei mir läuft das FHEM und Homebridge zusammen auf Ubuntu (Virtuelle Maschine).
    Nach einem Reboot der virtuellen Maschine läuft die Homebridge nicht mehr.
    Fehlermeldung im Homebridge.err:

    Error: EACCES: permission denied, open '/home/fhem/.homebridge/persist/AccessoryInfo.CC223DE3CE30.json'
    at Error (native)
    /usr/local/bin/homebridge: 2: /usr/local/bin/homebridge: bridge:: not found
    /usr/local/bin/homebridge: 3: /usr/local/bin/homebridge: name:: not found
    /usr/local/bin/homebridge: 4: /usr/local/bin/homebridge: username:: not found
    /usr/local/bin/homebridge: 5: /usr/local/bin/homebridge: port:: not found
    /usr/local/bin/homebridge: 6: /usr/local/bin/homebridge: pin:: not found
    /usr/local/bin/homebridge: 7: /usr/local/bin/homebridge: },: not found
    /usr/local/bin/homebridge: 9: /usr/local/bin/homebridge: platforms:: not found
    /usr/local/bin/homebridge: 11: /usr/local/bin/homebridge: platform:: not found
    /usr/local/bin/homebridge: 12: /usr/local/bin/homebridge: name:: not found
    /usr/local/bin/homebridge: 13: /usr/local/bin/homebridge: server:: not found
    /usr/local/bin/homebridge: 14: /usr/local/bin/homebridge: port:: not found
    /usr/local/bin/homebridge: 15: /usr/local/bin/homebridge: filter:: not found
    /usr/local/bin/homebridge: 17: /usr/local/bin/homebridge: ],: not found
    /usr/local/bin/homebridge: 19: /usr/local/bin/homebridge: accessories:: not found

    Vermute das Problem bei einer fehlenden Berechtigung. Ich meine gestern einen Befehl eingegeben zu haben wonach alle Rechte geöffnet wurden. Weiss den Befehl aber nicht mehr und finde die Webseite mit der Anweisung auch nicht mehr :-(.

  132. Hallo zusammen,

    @Jörg, danke erst mal für die Anleitung!!

    Ich bin der Anleitung gefolgt und habe ein Homematic Thermostat dem Raum zugewiesen. Allerdings wird in der App nur die Temperatur angezeigt. Kann man auch über die App das Thermostat steuern, und wenn ja, was muss ich dafür tun.

    Viele Grüße
    Nico

    • Hi Nico,
      welche App nutzt du denn? Je nachdem, welche App im Einsatz ist, kann es schon sein, dass nicht alle Informationen angezeigt werden. Am besten direkt mal an den App-Anbieter wenden, evtl. kann er die Funktion ja per Update nachliefern. Alternativ mal eine andere App ausprobieren.

      Grüße und viel Erfolg
      Jörg

    • Hallo Jörg,

      Vielen Dank für schnelle Antwort!

      Erst mal zu Deiner Frage: Ich nutze Home App (Affiliate-Link) und kann diese App nur empfehlen.

      Habe das Problem gefunden, ich durfte nicht die WZ.Heizung dem Raum Homekit zuweisen, sondern musste den Channel mit den Namen WZ.Heizung_Clima zuweisen. Das Weiteren muss dieser Channel das Attribut "attr subType thermostat" bekommen.

      Vielleicht ja auch für andere mit den Homematic Thermostats "HM-CC-RT-DN" interessant. Desweiteren vielleicht ja auch für einige von Interesse, mit dem neuen Apple TV und der iCloud kann man auch die HomeKit Funktionen ausserhalb des heimischen Netzwerks nutzen.

      Vielen Dank und viele Grüße
      Nico

    • Hallo Nico,
      Welcher Anleitung bist du genau gefolgt? Ich versuche das auch schon, komme aber irgendwie nicht durch.
      Versuche überall und nirgends was zu finden.
      Fhemwiki, hier oben und die ergänzenden 18 Schritte von Mike.
      Ich komme bis zum Node und dann finde ich aber keine Versionsummer von Node. Da geht also irgendwas schief.....

    • Hallo Christian,

      Ich bin eigentlich dieser Anleitung gefolgt. Allerdings gab es eine Änderung bei Homebridge, jetzt muss man Homebridge und Homebridge-FHEM Installieren (sudo npm install -g homebridge && sudo npm update -g homebridge-fhem). Die Einstellungen werden dann in den Ordner (~/.homebridge) forgenommen. Das Verzeichnis und die Datei kannst Du mit denn Kommando erstellen. (sudo mkdir -p ~/.homebridge && cd ~/.homebridge/ && sudo nano config.json).

      In der Datei gehört den Volgendes:
      {
      "bridge": {
      "name": "Homebridge",
      "username": "CC:22:3D:E3:CE:30",
      "port": 51826,
      "pin": "031-45-154"
      },

      "platforms": [
      {
      "platform": "homebridge-fhem.FHEM",
      "name": "FHEM",
      "server": "127.0.0.1",
      "port": "8083",
      "auth": {"user": "Nutzer", "pass": "Passwort"},
      "filter": "room=Homekit"
      }
      ],

      "accessories": []
      }

      Aber meiste mit Deiner Frage, dass Du keine Node Version auf den Terminal angezeigt bekommst? Also mit den Kommando "/usr/bin/env node --version beziehungsweise node -v"?

      Grüß
      Nico

  133. Hallo,

    Bei mir kann ich Homebridge nicht starten da steht immer "warn: --minUptime not set. Defaulting to: 1000ms
    warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
    info: Forever processing file: app.js
    error: Cannot start forever
    error: script /home/hs-server-admin/homebridge/app.js does not exist."

    was kann ich da machen?

    Grüße Tim

    • Hallo Tim,

      Ich gebe mal davon aus, dass Du es auf den Raspberry Pi ausführst?

      Eigentlich sollte es mit dem Befehl (forever start /home/pi/homebridge/bin/homebridge) gehen. Allerdings geht das bei mir nicht, daher habe ich das fürs erste so gelöst:

      1. Über Remotedesktop auf dem Pi verbinden
      2. Terminal auf den Pi Öffnen und (homebridge) eingeben.
      3. Remotedesktop Verbindung trennen.

      Gruß
      Nico

  134. Hallo zusammen,

    grandioses Tutorial, vielen Dank für die Mühe.
    Installation perfekt und Betrieb läuft stabil.

    Eine Sache, kann man denn damit auch (KNX) Rolladen steuern? Wenn ich einen Rollo in den Raum Homekit packe, findet die Eve App zwar das Device, kann damit aber nix anfangen.

    Gruß

    • Hi,
      ich bin zwar schon wieder etwas aus dem Thema raus (leider), das sollte aber schon funktionieren. Muss man eben "nur" die passenden Device-Settings vergeben, sodass die Homebridge das Gerät auch als Rolladen an den Apple-Dienst weitergibt.

      Grüße
      Jörg

  135. Hallo,

    echt guter Artikel aber leider kriege ich Homebridge nicht zum laufen... anscheinend ist die Anleitung nicht mehr auf dem aktuellsten Stand? Kann man eigentlich keine Images vom Raspberry hochladen wo FHEM und Hombridge schon laufen? Das wär doch mal was... =)

    • Hi Fabian,
      die Entwicklung rund um Homebridge befindet sich gerade im ständigen Wandel. Ich werde mit Sicherheit einen Update-Artikel nachschieben, sobald absehbar ist, dass sich bei der Einrichtung keine grundlegenden Dinge mehr ändern. Aktuell ist ein solcher Update-Artikel aber wohl nicht wirklich sinnvoll, es verändert sich einfach dauernd etwas und dann funktioniert die Anleitung nicht mehr 1:1. Da müsste ich den Artikel dann alle paar Tage umzuschreiben, worauf ich ehrlich gesagt keine Lust habe.

      Grüße
      Jörg

  136. Hi Jörg,

    vielen Dank für den Tipp, aber bin Noob und wüßte gerne wie man mal eben "nur" die passenden Device-Settings vergeben kann. Ich vermute mal in der config.json Datei auf der Homebridge Pi. :-)

    Gruß

  137. Hallo,
    ich habe ein Problem mit EVE. Das einbinden und schalten meiner Geräte klappt grundsätzlich - auch mit Siri. Jedoch verliert EVE nach ner Zeit die Verbindung und es dauert ewig bis ich diese wieder hergestellt habe. Woran liegt das und was kann ich tun?

    Das einfachste ist, die Hombridge wieder zu löschen und neu zu konfigurieren, aber wenn ich das 3x am Tag machen muss, hab ich da auch keine Lust drauf, mit dem Umbenennen der Geräte, erstellen der Szenen usw.

    Ein Neustart von Homebridge auf den Raspberry hilft irgendwie auch nicht. Alle Geräte werden dort ordnungsgemäß angezeigt und es wird kein Fehler ausgegeben. Vermute also es liegt nur an EVE?

  138. Hallo,
    neuer Versuch, irgendwie wird mein Kommentar nicht mehr angezeigt.

    Die Einrichtung hat gut geklappt, auch die Koppelung mit Siri. Jedoch verliert das iPhone nach geraumer Zeit die Verbindung und es gestaltet sich schwierig, diese wieder herzustellen.
    Ein Neustart der Homebridge auf dem rpi bringt nur bedingt was. Dort wird alles fehlerfrei angezeigt.
    Mittlerweile habe ich auch eine andere App ausprobiert, dort ist das selbe Problem wie in EVE. iOS Fehler? muss in der Konfig etwas anderes eingestellt werden?

    bitte um Hilfe.

    • also, wenn ich die homebridge mit dem befehl "homebridge" im terminal starte, scheint es zu gehen. wenn ich den befehl aus dem FHEM start-skript nehme kommt Folgendes:

      sudo /etc/init.d/homebridge start
      Homebridge starting
      Homebridge is not running
      Can't connect to localhost:7072
      Can't connect to localhost:7072
      Can't connect to localhost:7072

  139. Eine runde Sache. Bis auf das ich Eve nicht mehr mit dem Iphone habe ans laufen bekommen koennen. Dieser miese Synchronisationsfehler. Da hatte ich mehrfache Tuts im Netz gefunden. Gebracht hatte das ganze aber nichts. Mit der Homekit App laeuft aber nun wirklich alles so, wie ich mir das vorgestellt habe. Vielen Dank an alle hier.

  140. Moin habe nach langem Probieren Homebridge und FHEM zum Laufen bekommen.

    Einziges Problem ist wenn ich Homebridge über sudo systemctl start homebridge starte, läuft es zwar im Hintergrund aber er connected sich nicht mehr mit dem iPhone.

    Starte ich es allerdings über die x Oberfläche über das Terminal mit nur "homebridge" und schliesse dann die vnc Verbindung dann connected er sich und es gibt auch keine Verbindungsabbrüche mehr selbst nach einem Handyneustart ist alles da.

    Hat jemand eine Idee, was das sein könnte ? Bin Neuling und hat lange gedauert bei 100 Tut´s und keines ist so wirklich aktuell und komplett.

    Läuft bei mir übrigens mit node 5.6 weiß nicht ob es wichtig ist.

    Lieben Gruß

  141. Kann hier mal jemand ein funktionierendes Tutorial für den Rasp 2 B und FHEM mit Homebridge erstellen die ganzen halb fertigen Tutorials wo überall von anderen nur teilweise was rauskopiert wurden funktionieren nämlich kein stück mehr warum auch immer. Ständig bricht die Verbindung ab oder es lässt sich nicht starten oder installieren. Wäre wirklich sehr dankbar

  142. Hi,

    ich würde gerne meine Intertechno Steckdosen ebenfalls mit Sprache steuern.
    Leider bekomme ich das nicht hin. Kann mir da bitte jmd helfen?

    In FHEM sind diese so konfiguriert:

    define Hombot dummy
    attr Hombot alias Hombot
    attr Hombot devStateIcon Ein:FS20.on: Aus:FS20.off:
    attr Hombot eventMap BI:Ein B0:Aus
    attr Hombot group 2_Erdgeschoss
    attr Hombot icon socket_timer
    attr Hombot room Funksteckdosen,Homekit
    attr Hombot setList state:on,off
    attr Hombot webCmd Ein:Aus
    define Hombot_ntfy notify Hombot:.* {\
    my $master = "D";;\
    my $slave = "3";;\
    my $v=Value("Hombot");;\
    if ($v eq "Ein") {intertech("Ein","$master","$slave")};;\
    if ($v eq "Aus") {intertech("Aus","$master","$slave")};;\
    }

    Per FHEM Weboberfläche lässt sich diese Steckdose einwandfrei schalten.

    Gruß

    • Hi, setze doch mal das attr genericDeviceType switch, dann sollte es gehen.

    • Danke für den Tipp, sehe das device nun in der EVE App aber leider lässt es sich nicht Schalten noch per Sprache bedienen.

  143. Hi, kann es sein, dass du einen Tippfehler im attr setList hast. Bei mir sieht das so aus.
    attr xxxxxx setList on off
    Kein Doppelpunkt und keine Kommas.

  144. Hallo zusammen,
    bei mir scheint es mittlerweile zumindest keine Verbindungsabbrüche mehr zu geben, nachdem ich den rPI komplett neu installiert habe und dann Homekit nach der Anleitung im Wiki installiert habe.
    Ich hab jetzt nur das Problem, dass meine Intertechno Steckdosen den Status nicht annehmen, den ich über EVE einstelle. Im Webinterface steht z. B. dass meine Steckdose AN ist, in EVE steht aber AUS. Wenn ich dann auf AN drücke, bleibt der Zustand nur bis zum aktualisieren. Dann steht sie wieder auf AUS. Kennt jemand diesen Fehler? Das Schalten an sich funktioniert demnach, aber man weiß nie, welcher Status gerade wirklich eingestellt ist.

    Meine Steckdosen sind nach folgendem Schema definiert:

    define IT_04_Tischlampe IT FFFF00FFFF FF F0
    attr IT_04_Tischlampe userattr room_map structexclude
    attr IT_04_Tischlampe IODev CUL433
    attr IT_04_Tischlampe genericDeviceType switch
    attr IT_04_Tischlampe model itswitch
    attr IT_04_Tischlampe room 04_Wohnzimmer,Homekit

    • Kurzes Update.
      Die Verbindung ist stabil aber die Module IT (Switch) SOMFY (blind) und wifilight (light) funktionieren nicht zuverlässig. Markisen gehen nicht auf. Schalter bleiben nicht auf an und die lichtfarbe kann erst im 3. Versuch geändert werden.
      In Summe also kein zufriedenstellendes system.
      Der Umweg über dummies klappt zuverlässiger bietet aber nicht den vollen Funktionsumfang. -.-
      Hat jemand ne Idee was man noch probieren kann?

  145. Super Anleitung möchte ich gerne mal ausprobieren.
    Funktioniert Homekit auch mit dem Raspberry Pi B?

  146. Super Anleitung
    Ist diese Homekit Software auch mit dem Pi Modell B kompatibel?

  147. Kann mir jemand helfen.. bin echt blutiger Anfänger und kann nur copy&paste und bisschen denken :-)

    ich habe alle soweit hinbekommen (habe noch 9.0.2 und Jailbreak und musste die letzte verfügbare Version von Elgato Eve installieren)

    Ich habe über Fhem bis jetzt nur das Keymatic angelernt und wollte nach dieser Anleitung dieses mit Siri steuern.

    {
    "gateway": {
    "name": "fhem",
    "url": "127.0.0.1",
    "port": "8083",
    "auth": {"user": "foo", "password": "bar"},
    "longpoll": true
    },

    "accessories":[

    {
    "name": "Door",
    "service": "Switch"
    }

    Door ist in fhem mein Keymatic! Muus ich als Service Switch oder Lock/unlocke angeben??? und wie kann ich diese Zeilen, wenn Sie falsch sind berabeiten?

    Muss ich im Iphone App Tür oder den Fhem Alias (bei mir Door angeben)?

    So sieht es im App aus:

    http://www.pic-upload.de/view-30175959/IMG_1561.png.html
    http://www.pic-upload.de/view-30175960/IMG_1562.png.html

  148. Hallo,
    Ich habe einen Raspberry Pi B und wenn ich HomeKit starten will kommt immer dieser Fehler:

    warn: --minUptime not set. Defaulting to: 1000ms
    warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
    info: Forever processing file: app.js
    error: Cannot start forever
    error: script /home/hs-server-admin/homebridge/app.js does not exist.

    kann mir bitte jemand helfen?

    grüße Tim

  149. Guten Abend,
    ich hänge derzeit an einem kleinen Problem. Ich wollte nach der Installation der HomeBridge mein Harmony Hub anbinden. Das Hub ist bereits in FHEM vorhanden, sonst ist in FHEM noch nichts geschehen. Das Hub wird auch in der Eve-App angezeigt. Meine Frage ist, was muss ich in der App auswählen, damit das Hub auch wirklich etwas tut? Oder muss ich das Hub direkt gar nicht direkt in die Eve-App einbinden, sondern einen Dummy in FHEM erstellen, der letztlich meine gewünschten Befehle ausführt?
    Vielen Dank für die Mühe im Voraus!

  150. Hallo Leute,

    ich habe auf meinem iPad auch die Eve App installiert, auf meine iPhone läuft bereits alles, jedoch kann ich über das iPad die Homebridge nicht hinzufügen die App findet sie nicht. Habt ihr da eine Idee woran dies liegen könnte?

    Grüße
    Carsten

  151. Hallo zusammen,

    ich muss gestehen, dass ich jetzt nicht alle Kommentare gelesen habe. Hat jemand das Problem mit Siri, dass es nicht immer beim ersten mal klappt mit Licht einschalten? Siri antwortet dann, "das konnte ich leider nicht tun". Der Befehl wurde aber korrekt verstanden. Schießt man dasselbe Kommando hinterher funktioniert es sofort. Als wenn Homebridge nicht rechtzeitig antwortet oder so.. Habe das ganze mit einer Synology realisiert aber das sollte ja nix daran ändern. Es tritt auch bei unterschiedlichen Geräten auf. Irgendwie strange

    Danke fürs lesen!
    Gruß Daniel

  152. Hi zusammen,

    ne kurze Frage , ich hab EVE auf Version 2.1.1 upgedated, jetzt bekomm ich immer "das geht leider nicht" ... an homebridge wurde nichts geändert, das normale schalten in EVE funktioniert auch tadellos.. nur die Siri steuerung raffts grad nicht...(weder direkt am Handy noch über die Watch)
    weis jemand wie man das "das geht leider nicht" in nen anständigen Fehler übersetzen kann ;) das ich weis was die Tante grad fürn Problem hat.. bin grad etwas Ratlos...

    Danke und Grüße
    Dom

    • Nachtrag: Siri kann "Wie warm ist es im Raum XYZ" aber Komponenten vom Subtype Switch lassen sich nicht mehr per Siri schalten... sehr merkwürdig

    • zur info: nach einem update von homebridge und plugins gehen die switches wieder... auch harmony hub szenarien funktionieren ...das letzte was offen bleibt ist

      Fenster/TürKontakte lassen sich nicht mehr abfragen..auf die Frage: "Siri ist das Fenster/Tür im Wohzimmer geschlossen" meint Siri nur sie findet keine motorisierten Fenster/Türen im Wohnzimmer...

      ich denke die geht von nem KEymatic/WinMatic aus.. wie kann ich ihr klar machen das ich den threestate Sensor abfragen will.... in Eve selbst wird mir der Typ Tür angeziegt und auch Kontakt... jedoch weis ich nicht wie ich das abfragen kann...

  153. Hi Dom,

    kannst du vielleicht kurz erklären was du genau gemacht hast.
    Welche Updates du wie eingespielt hast?

    Ich habe nämlich leider das gleiche Problem.

    Gruß

  154. Hallo zusammen,

    ich habe nach einem reboot des RP3 keinen Zugriff mehr auf meine Devices. Sie werden mir zwar angezeigt, auch der neu hinzugefügte Lichtschalter wird erkannt. Kann aber keinen der Schalter mehr schalten...

    Wenn ich homebridge starte bekomme ich auch folgenden Hinweis, hat das damit etwas zu tun?

    Vielen Dank schonmal

    [9/2/2016, 8:52:15 PM] Homebridge is running on port 51826.
    events.js:160
    throw er; // Unhandled 'error' event
    ^

    Error: listen EADDRINUSE :::51826
    at Object.exports._errnoException (util.js:1026:11)
    at exports._exceptionWithHostPort (util.js:1049:20)
    at Server._listen2 (net.js:1253:14)
    at listen (net.js:1289:10)
    at Server.listen (net.js:1385:5)
    at EventedHTTPServer.listen (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/util/eventedhttp.js:58:19)
    at HAPServer.listen (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:155:20)
    at Bridge.Accessory.publish (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:480:16)
    at Server._publish (/usr/lib/node_modules/homebridge/lib/server.js:92:16)
    at Server. (/usr/lib/node_modules/homebridge/lib/server.js:351:14)

  155. Hallo,

    versuche gerade die Anleitung zur Installation von HomeBridge aus zu führen, scheitere aber am Punkt sudo npm install -g homebridge, mit folgender Fehlermeldung geht es los und es folgen noch einige ;) Aber u.g. Meldung beschreibt wohl das Hauptproblem, git scheint zu fehlen oder er findet es nicht. Da ich nun wirklich kein Linux Profi bin, kann evtl. jemand helfen ? Bin gerade etwas ratlos.

    Vielen Dank

    pi@raspberrypi:~ $ sudo npm install -g homebridge
    npm WARN addRemoteGit Error: not found: git


Dein Kommentar

Trackbacks sind deaktiviert.