homebridge-hue

  • ok, homebridge beendet, Dateien kopiert -> Homebridge ließ sich nicht mehr starten.

    Dann habe ich

    sudo npm -g update npm@latest;

    und

    sudo npm -g install homebridge --unsafe-perm

    gemacht.


    Jetzt kommt folgender Fehler beim Aufruf von homebridge:


    pi@raspberrypi:~ $ homebridge

    /usr/local/lib/node_modules/homebridge/node_modules/mdns/lib/dns_sd.js:35

    throw ex;

    ^


    Error: The module '/usr/local/lib/node_modules/homebridge/node_modules/mdns/build/Release/dns_sd_bindings.node'

    was compiled against a different Node.js version using

    NODE_MODULE_VERSION 48. This version of Node.js requires

    NODE_MODULE_VERSION 57. Please try re-compiling or re-installing

    the module (for instance, using `npm rebuild` or `npm install`).

    at Object.Module._extensions..node (module.js:672:18)

    at Module.load (module.js:556:32)

    at tryModuleLoad (module.js:499:12)

    at Function.Module._load (module.js:491:3)

    at Module.require (module.js:587:17)

    at require (internal/module.js:11:18)

    at Object.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/mdns/lib/dns_sd.js:24:20)

    at Module._compile (module.js:643:30)

    at Object.Module._extensions..js (module.js:654:10)

    at Module.load (module.js:556:32)


    sudo npm rebuild habe ich auch noch probiert, wie angegeben!??.


    Ich fürchte, ich habe mir mein "running system" jetzt zerschossen.

    Ist noch was zu retten oder muss ich von vorne anfangen?


    Ist schon ein blödes Gefühl, wenn man immer nur stur Anleitungen befolgt, ohne zu verstehen, was man da eigentlich tut....

  • Welche node und welche npm Version hast du jetzt laufen?


    Versuch mal erst homebridge über sudo npm deinstall -g homebridge

    zu deinstallieren und dann nochmal neu zu installieren.

  • ok, vielen Dank. Das hat jetzt erstmal soweit geklappt, dass die Homebridge wieder läuft :) , obwohl beim Starten immer noch warnings betr. npm kommen. Nodejs 8.9.4 ist jetzt jedenfalls installiert und ich versuche mich dann jetzt an mein eigentliches Ziel zu machen, das hue-Plugin zu installieren....

  • Wow, ich habe es nun doch noch hinbekommen. Nach den Vorarbeiten ging das Installieren des hue-Plugins planmäßig nach Anleitung!


    Da ich hier im Forum bisher keine andere Anleitung für Dummys zur Installation des homebridge-hue-Plugins gefunden habe, versuche ich die Schritte mal zusammenzufassen und bitte ggf. die Experten um Ergänzungen und Korrekturen.


    Ausgehend von der manuellen Installation der Homebridge nach der Anleitung hier auf smartapfel, sind folgende Schritte erforderlich:

    1. Es ist ein Update auf die Version 8.x.x von Nodejs oder neuer erforderlich. Dazu:

    1.1. Homebridge stoppen

    1.2. Nodejs deinstallieren: $ sudo apt-get remove nodejs

    1.3. Neue Version (Beispiel 8.9.4) installieren:

    Code
    $ wget https://nodejs.org/dist/v8.9.4/node-v8.9.4-linux-armv7l.tar.xz
    $ tar -xvf node-v8.9.4-linux-armv7l.tar.gz
    $ cd node-v8.9.4-linux-armv7l
    $ sudo cp -R * /usr/local/

    Beim Raspi 1 muss einfach arm71 durch arm61 ersetzt werden!


    2. Auch die Homebridge muss nun neu installiert werden (die Konfiguration in der config.json und schon installierte Plugins gehen dabei nicht verloren!). Dazu:

    Code
    $ sudo npm uninstall -g homebridge
    $ sudo npm -g update npm@latest;
    $ sudo npm -g install homebridge --unsafe-perm


    3. Jetzt das Plugin installieren und die Konfigurationsdatei config.json ergänzen:

    Code
    $ sudo npm -g install homebridge-hue
    $ sudo nano ~/.homebridge/config.json

    folgender Code muss zwischen die eckigen Klammern von "platforms" ergänzt werden. Wenn mehrere Plugins installiert sind, müssen diese durch Kommata voneinander getrennt werden:

    Code
    {
          "platform": "Hue",
          "users": {
            "001788FFFExxxxxx": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
          },
          "lights": true
        }

    Bei dieser Konfiguration werden nur die nicht Homekit-zertifizierten Leuchten an der hue -Bridge, die bisher nicht direkt in Homekit angezeigt werden, in Homekit eingebunden, also z.B. Osram und Ikea-Leuchten!

    Die config.json mit <Strg>-O speichern und den Editor mit <Strg>-X schließen.


    4. Die User-ID der eigenen hue-Bridge ermitteln und in die config.json eintragen:

    4.1. Homebridge starten. Man wird zum Drücken des blauen Link-Buttons auf der Hue-Bridge aufgefordert. Während des weiteren Startvorgangs der Homebridge wird in einer Codezeile hinter "users" ein String "xxx......" angezeigt, der notiert oder kopiert werden muss.

    4.2. Homebridge stoppen.

    4.2. Nach erneutem $ sudo nano ~/.homebridge/config.json, den vorhandenen String hinter "users" durch den notierten bzw. kopierten ersetzen. Speichern und Editor schließen wie oben.

    4.3. Homebridge starten. Nach erfolgreichem Start der Homebridge sollten nun alle Leuchten, die an der Hue-Bridge angeschlossen sind, in Homekit angezeigt werden und eingebunden sein. Fertig!

    3 Mal editiert, zuletzt von vpelz ()

  • wie ermittle ich diese?

    Die sollte die IP-Adresse der Bridge sein.

  • Super Anleitung ??

  • vielen Dank für die Rückmeldung! Hab selbst ewig probiert und hier wurde mir geholfen. Da gebe ich gerne was zurück.


    @mods: Wenn ihr die Anleitung auch gut findet, könnt ihr sie gerne in den entsprechenden Forumsbereich stellen!?

  • Sorry Leute,

    ich komme nicht klar.


    Ich habe das Homebridge Plugin "Homebridge-hue" installiert. Soweit alles auch kein Problem. Dann muss ja die Confic angepasst werden.

    Und da komme ich überhaupt nicht klar, was ich da machen muss. Es sieht zurzeit so bei mir aus:


    {

    "bridge": {

    "name": "Homebridge",

    "username": "CC:22:3D:E3:CE:30",

    "port": 51826,

    "pin": "031-45-154"

    },


    "accessories": [

    ],


    "platforms": [

    {

    "platform": "Hue",

    "users": {

    "001788FFFExxxxxx": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "001788FFFEyyyyyy": "yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"

    },

    "sensors": true,

    "nativeHomeKitSensors": false,

    "excludeSensorTypes": ["CLIPPresence", "Geofence"],

    "lights": true

    }

    ]

    }


    Was muss ich eingeben damit es läuft? Ich suche im Netzt schon 2 Stunden und komme nicht weiter.

    Die meisten meiner Hue Lampen sind HomeKit kompatibel, jedoch ist dort noch ein Vorschaltgerät für LED Strips von Dresden Elektronik welches ich über das Plugin mittels Hue per HomeKit steuern will.

  • Dante Teier


    Du musst dir einen User von der hue Bridge generieren lassen.


    Für den ersten Start hinterlege in der config nur einen leeren User: “ “: “ “.


    Dann homebridge neu starten. Im log wirst du aufgefordert den pairing Button an der hue Bridge zu drücken, dann erhältst du User Daten. Diese dann in der Config einfügen und nochmals hb neu starten.

  • "platforms": [

    {

    "platform": "Hue",

    "users": {

    "":"",

    },

    "sensors": true,

    "nativeHomeKitSensors": false,

    "excludeSensorTypes": ["CLIPPresence","Geofence"],

    "lights": true

    }


    Also so?

    Werden meine Lampen aus Hue dann alle automatisch hinzugefügt, oder wie läuft das? Muss ich dafür noch etwas konfigurieren?


    Wie genau mache ich das mit dem Neustart? Befehl kann ich mir ja raussuchen. Wenn ich den Befehl für den Neustart homebridge eingebe zeigt mir Terminal an, wann ich die Taste an der Bridge drücken soll?

  • Sieht gut aus. Nachdem du dann den User bekommen und auch eingetragen hast werden nach dem Neustart alle in der hue Bridge eingebundenen Geräte über homebridge zugefügt.


    Es gibt ne tolle Befehlssammlung hier von Nastra unter Anleitungen. Je nachdem ob die hb als User oder Systemd läuft gibt es jeweilige Befehle dafür.


    Wenn du die Config bearbeitest solltest du homebridge stoppen und nach der Bearbeitung wieder starten.

  • Sorry, ich krieg es nicht hin.


    Also, als erstes habe ich die Homebridge gestoppt, die config geändert auf ""."" für den Benutzer.

    Dann habe ich die Homebridge wieder gestartet mit "sudo systemctl restart homebridge".

    Jetzt soll ich ja im Log sehen, was er da tut. Also habe ich "sudo journalctl -f -u homebridge" eingegeben.


    Da steht:


    pi@raspberrypi:~ $ sudo journalctl -f -u homebridge

    -- Logs begin at Thu 2016-11-03 17:16:42 UTC. --

    Feb 09 07:43:11 raspberrypi systemd[1]: Stopping LSB: Start daemon at boot time for homebridge...

    Feb 09 07:43:11 raspberrypi homebridge[2858]: Homebridge closed

    Feb 09 07:43:11 raspberrypi systemd[1]: Stopped LSB: Start daemon at boot time for homebridge.

    Feb 09 07:43:11 raspberrypi systemd[1]: Starting LSB: Start daemon at boot time for homebridge...

    Feb 09 07:43:11 raspberrypi su[2867]: Successful su for pi by root

    Feb 09 07:43:11 raspberrypi su[2867]: + ??? root:pi

    Feb 09 07:43:11 raspberrypi su[2867]: pam_unix(su:session): session opened for user pi by (uid=0)

    Feb 09 07:43:11 raspberrypi homebridge[2862]: Homebridge starting

    Feb 09 07:43:11 raspberrypi homebridge[2862]: Homebridge is not running

    Feb 09 07:43:11 raspberrypi systemd[1]: Started LSB: Start daemon at boot time for homebridge.


    Irgendwie klappt es nicht recht. Ich sehe nichts wann ich den "Link Button" drücken muss. Ich habe ihn einfach mal gedrückt um zu sehen ob doch was passiert. Nichts passiert. Ich bekomme kein User.


    Danke für deine gute Hilfe bisher, aber hast du ne Idee was bei mir falsch läuft? Wieso steht da "Homebridge is not running"? Eigentlich ist die schon aktiv. Sagt jedenfalls die Homebridge App! Die Installation der Homebridge habe ich aber nicht über die App gemacht, das lief nicht gut, habe es daher gelöscht und manuell Installiert.

  • Versuche mal „sudo systemctl start homebridge„


    Restart nur nehmen, wenn homebridge bereits läuft.


    Wenn die homebridge startet, erscheint dir die meldung aus den start-logs.


    Ansonsten würdest du es nochmals unter „sudo cat /var/log/syslog“ finden können.

  • Feb 9 11:20:02 raspberrypi systemd[1]: Started Session c52 of user pi.

    Feb 9 11:20:14 raspberrypi systemd[1]: Stopping LSB: Start daemon at boot time for homebridge...

    Feb 9 11:20:14 raspberrypi homebridge[5507]: Homebridge closed

    Feb 9 11:20:14 raspberrypi systemd[1]: Stopped LSB: Start daemon at boot time for homebridge.

    Feb 9 11:20:36 raspberrypi systemd[1]: Starting LSB: Start daemon at boot time for homebridge...

    Feb 9 11:20:36 raspberrypi systemd[1]: Started Session c53 of user pi.

    Feb 9 11:20:36 raspberrypi homebridge[5523]: Homebridge starting

    Feb 9 11:20:36 raspberrypi homebridge[5523]: Homebridge is not running

    Feb 9 11:20:36 raspberrypi systemd[1]: Started LSB: Start daemon at boot time for homebridge.

    Feb 9 11:20:37 raspberrypi node[5538]: *** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.

    Feb 9 11:20:37 raspberrypi node[5538]: *** WARNING *** Please fix your application to use the native API of Avahi!

    Feb 9 11:20:37 raspberrypi node[5538]: *** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=node>

    Feb 9 11:20:37 raspberrypi node[5538]: *** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.

    Feb 9 11:20:37 raspberrypi node[5538]: *** WARNING *** Please fix your application to use the native API of Avahi!

    Feb 9 11:20:37 raspberrypi node[5538]: *** WARNING *** For more information see <http://0pointer.de/avahi-compa…node&f=DNSServiceRegister>


    Ich versteh es einfach nicht. Die Hombrdige wird hier mit "is not running" angezeigt, aber sie läuft doch, ich habe sie auch schon in HomeKit drin.

    Jetzt habe ich auch deinen Befehl zum starten genommen. Aber nichts passiert.

    Es muss doch, wenn ich "sudo systemctl start homebridge" ins Terminal eingebe weitere Meldung kommen mit den Usernamen usw., richtig?

    Aber da kommt nichts.


    Gibt es denn irgendwo eine Ausführliche Anleitung zu dem Thema mit Hue? Auf Deutsch wäre schon hilfreich, Englisch ist dann doch an mancher Stelle zu schwierig.


    Edit: Die Homebridge scheint schon zu laufen. Hab sie einmal ausgeschaltet und angeschaltet. Entsprechend sehe ich in HomeKit auch die Reaktion der "Homebridge".


    Edit 2: Kann es sein, das ich nicht nur das Plugin homebridge-hue installieren muss, sondern vorher noch etwas mit Node.js installieren muss??


    Edit 3: Mittels "node -V" bekomme ich v8.9.4 angezeigt, "Nom -V" zeigt 5.6.0 an. Also kann es daran nicht liegen, das ist installiert.

    Code
    npm -v
    Code
    npm -v
  • Da weiß ich jetzt auch erst mal nicht weiter.


    Ich kann dir noch empfehlen, die homebridge mit dem fertigen image von det neu aufzusetzen.


    Sollte der einfachste Weg sein, da du noch ganz am Anfang stehst.....


    Ist ebenfalls unter Anleitungen zu finden, ist oben gefixt.