Beiträge von opajoe

    Hallo Stefan & Normsen,

    es klappt nun alles! Zwei Wochen Bastelarbeit sind nun vorbei. Homebridge läuft mit dem Interface und der Avea Bluetooth Lampe. Ich habe es heute noch alles neu aufgesetzt und mich ganz genau an die Anleitung von Stefan gehalten. Es hat auf Anhieb alles funktioniert. Tausend Dank für die tolle Unterstützung.


    Die letzten Probleme mit dem nicht funktionierenden System Service kamen zustande, weil ich Nodes mit einem Node Versionsmanager installiert habe und der diese eigenständig in bestimmten Verzeichnissen abgelegt hat. Ich habe das gebraucht um rauszufinden mit welcher Node Version das Avea Plugin läuft.


    Daher wichtige Info für die Plugin Installation: Nicht alle Plugins sind kompatibel mit der neuesten Node Version. Falls es also Probleme bei der Installation eines Plugins geben sollte, einfach überprüfen. Ich habe in diesem Fall eine Node Version genommen, die kurz vor dem letzten Release des Avea Plugins aktuell war. Jetzt läuft die Node Version 7.1.10 von 2017 einwandfrei in Kombination mit der Lampe. Nun werde ich noch weitere Lampen besorgen und einbinden. Es bleibt also spannend ;-).



    Hallo Stefan,


    ich habe jetzt noch mal anhand deiner Kommandos versucht rauszufinden woran der Homebridge Service scheitert.


    1. Syslog auslesen ergab folgendes:

    Code
    sudo tail -f /var/log/syslog
    Oct 17 16:09:16 raspberrypi systemd[1]: Started Node.js HomeKit Server.
    Oct 17 16:09:16 raspberrypi systemd[1525]: homebridge.service: Failed at step EXEC spawning /usr/local/bin/homebridge: No such file or directory
    Oct 17 16:09:16 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=203/EXEC
    Oct 17 16:09:16 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.
    
    Oct 17 16:09:16 raspberrypi systemd[1]: Started Node.js HomeKit Server.
    Oct 17 16:09:16 raspberrypi systemd[1525]: homebridge.service: Failed at step EXEC spawning /usr/local/bin/homebridge: No such file or directory
    Oct 17 16:09:16 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=203/EXEC
    Oct 17 16:09:16 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.


    2. Aufruf von homebridge -I -U /var/homebridge[


    3. Auslesen der /etc/default/homebridge

    Code
    cat /etc/default/homebridge
    # Defaults / Configuration options for homebridge
    # The following settings tells homebridge where to find the config.json file and where to persist the data (i.e. pairing and others)
    HOMEBRIDGE_OPTS=-I -U /var/homebridge
    
    # If you uncomment the following line, homebridge will log more
    # You can display this via systemd's journalctl: journalctl -f -u homebridge 

    Irgend eine Idee Stefan? Vielen Dank im Voraus für deine Unterstützung.

    Oh danke für eure Tips! Ich bin bis Sonntag unterwegs und kann dann erst wieder an den raspberry ran. Gebe euch dann Feedback!


    Tausend Dank für den Support.


    Normsen: ah schade, dachte die Lichtstimmung kann ich auch verändern. Aber erstmal passt das. Du verknüpfst die Shortcuts mit andere Applikationen?

    Gute Nachrichten, ich habe Homebridge mit der Avea Lampe zum Laufen bekommen!!

    Es hat noch ein bisschen gedauert bis ich verstanden habe was die Ursache für die ständigen Installationsprobleme war, aber am Ende hat es geklappt. Tatsächlich verträgt sich das Avea Plugin nicht mit neueren Versionen von Node Js.


    Die Aktuelle Version von Homebridge benötigt allerdings auch mindestens Node JS 4.8.0.

    Für das schnelle wechseln der Node JS und NPM ist der Node Version Manager sehr praktisch.


    Damit die Bluetooth Schnittstelle von Homebridge ohne root/sudo Kommando gestartet werden kann brauchte es noch unbedingt folgenden Befehl.

    Code
    sudo setcap cap_net_raw+eip $(eval readlink -f `which node`)


    @sschuste vielen Dank für deine tolle Anleitung. Ich habe sie immer wieder zu Rate gezogen! Den Service bekomme ich im Gegensatz zu meinem ersten Versuch aber nicht mehr zum Laufen. Auch die

    config.json liest Homebridge nicht aus dem Verzeichnis /etc/default/homebridge


    Folgende Fehlermeldung wird ausgegeben, wenn ich den Service starten lasse.


    Oct 10 23:49:12 raspberrypi systemd[1]: Started Node.js HomeKit Server.

    Oct 10 23:49:12 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=203/EXEC

    Oct 10 23:49:12 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.

    Oct 10 23:49:12 raspberrypi systemd[1]: homebridge.service: Failed with result 'exit-code'.


    Könnte das an einem Syntaxfehler in der Config homebridge.service liegen?

    Bin gerade unterwegs. Deswegen nur kurz. Habe deine Tips gestern tatsächlich alles ausprobiert. Das Node downgrade zu 8.1.0 verträgt sich nicht mit Node Js. Aber so wie es ausschaut braucht das Avea Plugin ein bestimmte Node/Node JS Version.


    Bluetooth Noble habe ich installiert und läuft. Findet sogar die Avea im Scan On Modus :-). Das ist schon mal viel wert.


    Welche Version von Node und Node JS hast du laufen? Vielleicht installiere ich einfach diese Versionen erst mal.

    Also ihr lieben Unterstützer.

    Ich habe das ganze noch mal nach @Normsens Anleitung aufgesetzt.


    Bei der Installation des Avea Plugins gibt es immer wieder Fehler bei der Installation.

    Ohne die Eingabe von sudo -i kann ich es übrigens gar nicht installieren. Folgende Ausgabe erhalte ich wenn ich das Avea Plugin installiere.



    binding.target.mk:99: recipe for target 'Release/obj.target/binding/src/BluetoothHciSocket.o' failed

    make: *** [Release/obj.target/binding/src/BluetoothHciSocket.o] Error 1

    make: Leaving directory '/usr/local/lib/node_modules/homebridge-avea-bulb/node_modules/bluetooth-hci-socket/build'

    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:262:23)

    gyp ERR! stack at ChildProcess.emit (events.js:182:13)

    gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:240:12)

    gyp ERR! System Linux 4.14.50-v7+

    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-avea-bulb/node_modules/bluetooth-hci-socket

    gyp ERR! node -v v10.11.0

    gyp ERR! node-gyp -v v3.8.0

    gyp ERR! not ok

    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/homebridge-avea-bulb/node_modules/xpc-connection):

    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"})

    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/homebridge-avea-bulb/node_modules/bluetooth-hci-socket):

    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] install: `node-gyp rebuild`

    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1


    + [email protected]

    updated 1 package in 60.221s



    Homebridge zeigt dann nach der Installation folgendes an:

    [10/7/2018, 5:46:08 PM] Loaded config.json with 0 accessories and 0 platforms.

    [10/7/2018, 5:46:08 PM] ---

    [10/7/2018, 5:46:08 PM] ====================

    [10/7/2018, 5:46:08 PM] ERROR LOADING PLUGIN homebridge-avea-bulb:

    [10/7/2018, 5:46:08 PM] Error: Cannot find module 'bluetooth-hci-socket'

    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)

    at Function.Module._load (internal/modules/cjs/loader.js:507:25)

    at Module.require (internal/modules/cjs/loader.js:637:17)

    at require (internal/modules/cjs/helpers.js:20:18)

    at Object.<anonymous> (/usr/local/lib/node_modules/homebridge-avea-bulb/node_modules/noble/lib/hci-socket/hci.js:6:26)

    at Module._compile (internal/modules/cjs/loader.js:689:30)

    at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)

    at Module.load (internal/modules/cjs/loader.js:599:32)

    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)

    at Function.Module._load (internal/modules/cjs/loader.js:530:3)

    [10/7/2018, 5:46:08 PM] ====================

    [10/7/2018, 5:46:08 PM] Loaded plugin: homebridge-config-ui-x

    [10/7/2018, 5:46:08 PM] Registering platform 'homebridge-config-ui-x.config'




    Wie sieht die Installation des Avea Plugins bei dir aus Normsen?

    Um ehrlich zu sein, vermute ich dass es bei der ersten Installation etwas mit den Rechten und dem Homebridge User nicht stimmt, sodass bei der Installation nicht alles korrekt installiert werden kann. Ich setze den Raspberry mal wieder neu im stretch modus auf und kombiniere die Anleitungen von Stefan und der anderen Anleitung.

    Der Hauptunterschied besteht da tatsächlich unter welcher Instanz das ganze läuft (Homebridge user vs. Pi user).

    Danke für die fantastische Schritt für Schritt Anleitung. Sie hat für Ordnung im Chaos gesorgt! Tausend Dank dafür Normsen!


    Wichtig zu wissen war es aber, das die Bluetooth Komponente bluetooth bluez libbluetooth-dev und das homebridge-avea-bulb den root Zugriff bei der Installation benötigen. Ich habe dementsprechend folgenden Befehl vorher eingegeben.

    Code
    sudo -i


    Die Bluetooth Installation ist problemlos durchgelaufen.

    Allerdings habe ich bei der Avea-Plugin Installation folgende Fehlermeldungen erhalten.


    In file included from ../src/BluetoothHciSocket.cpp:8:0:

    ../../nan/nan.h:979:46: note: declared here

    NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback(

    ^~~~~~~~~~~~

    binding.target.mk:99: recipe for target 'Release/obj.target/binding/src/BluetoothHciSocket.o' failed

    make: *** [Release/obj.target/binding/src/BluetoothHciSocket.o] Error 1

    make: Leaving directory '/usr/local/lib/node_modules/homebridge-avea-bulb/node_modules/bluetooth-hci-socket/build'

    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:262:23)

    gyp ERR! stack at ChildProcess.emit (events.js:182:13)

    gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:240:12)

    gyp ERR! System Linux 4.14.50-v7+

    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-avea-bulb/node_modules/bluetooth-hci-socket

    gyp ERR! node -v v10.11.0

    gyp ERR! node-gyp -v v3.8.0

    gyp ERR! not ok

    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/homebridge-avea-bulb/node_modules/xpc-connection):

    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"})

    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/homebridge-avea-bulb/node_modules/bluetooth-hci-socket):

    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] install: `node-gyp rebuild`

    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1


    + [email protected]

    updated 1 package in 55.193s



    Das Avea bulb plugin for homebridge: homebridge-avea-bulb v1.1.1

    erscheint dann aber trotzdem tatsächlich im Homebridge UI Tool als installiert.




    Ich dachte, jetzt klappt es. Ich habe dann die config.json um die Avea Plugin Daten ergänzt. Die Homebridge ließ sich dann aber nicht mehr starten. Folgende Fehlermeldung habe ich erhalten.


    Oct 05 06:28:57 raspberrypi systemd[1]: Started Node.js HomeKit Server.

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] Loaded config.json with 2 accessories and 1 platforms.

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] ---

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] ====================

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] ERROR LOADING PLUGIN homebridge-avea-bulb:

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] Error: Cannot find module 'bluetooth-hci-socket'

    Oct 05 06:28:59 raspberrypi homebridge[6118]: at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)

    Oct 05 06:28:59 raspberrypi homebridge[6118]: at Function.Module._load (internal/modules/cjs/loader.js:507:25)

    Oct 05 06:28:59 raspberrypi homebridge[6118]: at Module.require (internal/modules/cjs/loader.js:637:17)

    Oct 05 06:28:59 raspberrypi homebridge[6118]: at require (internal/modules/cjs/helpers.js:20:18)

    Oct 05 06:28:59 raspberrypi homebridge[6118]: at Object.<anonymous> (/usr/local/lib/node_modules/homebridge-avea-bulb/node_modules/noble/lib/hci-socket/hci.js:6:26)

    Oct 05 06:28:59 raspberrypi homebridge[6118]: at Module._compile (internal/modules/cjs/loader.js:689:30)

    Oct 05 06:28:59 raspberrypi homebridge[6118]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)

    Oct 05 06:28:59 raspberrypi homebridge[6118]: at Module.load (internal/modules/cjs/loader.js:599:32)

    Oct 05 06:28:59 raspberrypi homebridge[6118]: at tryModuleLoad (internal/modules/cjs/loader.js:538:12)

    Oct 05 06:28:59 raspberrypi homebridge[6118]: at Function.Module._load (internal/modules/cjs/loader.js:530:3)

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] ====================

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] Loaded plugin: homebridge-config-ui-x

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] Registering platform 'homebridge-config-ui-x.config'

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] ---

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] Loaded plugin: homebridge-pi

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] Registering accessory 'homebridge-pi.PiTemperature'

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] ---

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] Loading 1 platforms...

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] [Config] Initializing config platform...

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] [Config] Spawning homebridge-config-ui-x with PID 6138

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] Loading 2 accessories...

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] [Raspberry PI Temperature] Initializing PiTemperature accessory...

    Oct 05 06:28:59 raspberrypi homebridge[6118]: [10/5/2018, 6:28:59 AM] [Raspberry PI Temperature] Model BCM2835/a02082 Serial 00000000f4eec9f5

    Oct 05 06:28:59 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=1/FAILURE

    Oct 05 06:28:59 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.

    Oct 05 06:28:59 raspberrypi systemd[1]: homebridge.service: Failed with result 'exit-code'.



    Fazit: Plugin ist scheinbar installiert. Aber bei der Initialisierung kann er das Bluetooth-HCI-socket Modul nicht finden. Habe ich da was übersehen? Was fehlt noch?

    Danke für den Support.

    Ich habe folgende Zeile ausgeführt um das Bluetooth Protokoll zu installieren.

    Code
    sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev

    Muss ich folgende Zeile noch eingeben, um Verlinkungen für das Bluetooth Protokoll herzustellen?

    • symlink nodejs to node: sudo ln -s /usr/bin/nodejs /usr/bin/node

    Ich verstehe diese Node Zwischenschritte nicht ganz und was ich warum machen muss.


    Habe wieder die gleiche Fehlermeldung erhalten beim Avea installieren.


    sudo npm install -g --unsafe-perm homebridge-avea-bulb

    npm ERR! code ENOGIT

    npm ERR! Error while executing:

    npm ERR! undefined ls-remote -h -t https://git@github.com/lockitron/noble.git

    npm ERR!

    npm ERR! undefined

    npm ERR! No git binary found in $PATH

    npm ERR!

    npm ERR! Failed using git.

    npm ERR! Please check if you have git installed and in your PATH.


    Wäre dankbar für eine Liste mit den Schritten, die ich zu absolvieren haben bevor die Avea dann mit Homebridge angesprochen werden kann.

    Jetzt habe ich den Plug-Installtionsfehler erhalten. Was brauche ich um das Plugin erfolgreich zu installieren?


    npm install -g --unsafe-perm homebridge-avea-bulb

    npm ERR! code ENOGIT

    npm ERR! Error while executing:

    npm ERR! undefined ls-remote -h -t https://git@github.com/lockitron/noble.git

    npm ERR!

    npm ERR! undefined

    npm ERR! No git binary found in $PATH

    npm ERR!

    npm ERR! Failed using git.

    npm ERR! Please check if you have git installed and in your PATH.


    npm ERR! A complete log of this run can be found in:

    npm ERR! /home/pi/.npm/_logs/2018-10-04T12_29_50_408Z-debug.log

    Ich probiere es mal mit der Anleitung von https://www.npmjs.com/package/homebridge-avea-bulb und melde mich dann noch mal. Vielen Dank erstmal. Möchte es nachdem ich schon so viel Zeit investiert ohne fertiges Image hinbekommen. Aber das klappt schon :-).

    Hall Stefan,


    Das System läuft jetzt erst mal. Habe gestern einen Informatik Studenten das machen lassen. Der konnte natürlich besser die Fehler deuten als ich. Hat die Config.Json schon fertig geschrieben und erfolgreich an einer Lampe getestet. Er hat noch Zwischenschritte gemacht die wahrscheinlich als Laie nicht so ersichtlich werden. Bluetooth ging nicht weil nicht richtig Installiert. Heute werde ich die restlichen IDs scannen und nachtragen. Denke das sollte ich hin bekommen :D hahahaha.. Danach erstelle ich dann auch erst mal gleich ein Backup von allem als Image. Danke dir für deine mühen. Nun geht es an weitere Projekte :D Habe die Lightifys ins Auge geschlossen für Flur und Küche :) Gruß Norman

    Hallo, ich bin über die ähnlichen Probleme wie du mit der Avea Lampe gestolpert, Fehlermeldungen bei Avea Plugin Anmeldung & kein booten von Homebridge nach plugin Installation. Es wäre hilfreich wenn, du noch mal auflistet wie du vorgegangen bist (nach welcher Anleitung und wo du es anders gemacht hast). Außerdem wäre deine Config.Json noch mal spannend und wie du das ganze via bluetooth zum Laufen gebracht hast. Das ist wirklich ein dickes Brett, dass du gebohrt hast. Vielen Dank im Voraus für deinen Support!!