Homebridge Installationsanleitungen

  • Wie wäre es mit einem installationsscript?
    Du könntest die Anleitung noch erweitern wie man Plugins in einer eigenen Instanz installiert. Dann würde ich meine homebridge auch nochmal installieren.



    Sent from my iPhone using Community

  • Ach, hör auf. Genau dieses Problem habe ich vor drei Tagen auch mit einem anderen Plugin gehabt. Das sind jene Plugins, die nicht im npm-Repository zu finden sind, und dann muss man sie mit git von GitHub runterladen. Das ist einfach blöd, weil man sie auch nicht mit homebridge-config-ui-x vernünftig verwalten kann.


    Hier im Forum sind welche, die das ohne Probleme hinkriegen und nicht mal wissen, warum, und nur wir zwei sind irgendwie zu blöd. Na gut. Ich wollte das Problem eh verstehen und setz mich morgen mal dran. Ich hab mal einen Spielfilm über's Überleben im tiefsten Alaska gesehen, und da wurde ständig das Mantra vorgetragen: "Was ein Mann kann, kann auch ein anderer" und dann haben sie einen Bären mit bloßen Händen umgebracht. Wird jetzt auch mein Motto.


    Stefan

    Guten morgen,


    Ich bin gespannt Stefan. Dann mache ich erstmal nichts, werde mir die Befehle trainieren und mich mehr mit dem Raspi beschäftigen :)


    Gruß Norman

  • Habe noch das probiert:

    Code
    curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -

    dann das:

    Code
    sudo apt-get install -y nodejs

    dann das:

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

    dann:

    Code
    sudo apt-get install -y build-essential

    die 3 befehle von dir für Avea Bulb... aber gleicher Fehler im Terminal. nun bin ich ratlos.


    Norman

  • Habe noch das probiert:

    Code
    sudo apt-get install -y nodejs

    Damit hast du node.js ein zweites Mal installiert. Ob das hilfreich ist?

  • Damit hast du node.js ein zweites Mal installiert. Ob das hilfreich ist?

    leider nicht! Aber das war eine Neuling Verzweiflungstat. Fehler bleiben die selben. :/ weisst du schon mehr?

  • sudo chown -R $USER /usr/local && npm install -g homebridge-avea-bulb


    habe es damit noch mal versucht, aber diese Fehler noch bei obwohl er lange installiert hat.


    yp 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.10.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]

    added 15 packages from 15 contributors in 62.876s



    dann trotzdem die cofig.json angepasst und nun startet die hombridge nicht neu.


    Gruß Norman

  • so: habe alles wieder bereinigt in der config.json. Neuinstallation der Avea bulb, selbe Fehler denke ich, aber Homebridge startet und bei Plugins steht das Avea Plugin. Und mit der Meldung das es Aktualisiert werden kann. Dort drauf klicken lässt aber wieder den Browser abstürzen :/

  • nachdem jetzt wieder gar nichts geht und mir nur noch angezeigt das der host down ist, gebe ich erstmal auf und warte auf den Profi. danach wird es wohl wieder eine Neuinstallation werden. Bald kann ich deine Anleitung auswendig :D


    Gruß Norman

  • Ich habe jetzt das folgende getan:


    In den Root-Modus gegangen:sudo su -

    Die Installation aufgerufen: npm install -g --unsafe-perm homebridge-avea-bulb


    Dann hat es eine Menge Fehler und Warnings gehagelt, aber ganz am Ende steht:

    Code
    + [email protected]
    added 15 packages from 15 contributors in 53.463s


    So wie bei dir. Das sieht für mich absolut richtig aus. Starten tut es trotzdem nicht. Ein sudo journalctl -fau homebridge zeigt mir

    Code
    Sep 09 14:39:25 raspberrypi homebridge[4319]: [2018-9-9 14:39:25] ERROR LOADING PLUGIN homebridge-avea-bulb:
    Sep 09 14:39:25 raspberrypi homebridge[4319]: [2018-9-9 14:39:25] Error: Cannot find module 'bluetooth-hci-socket'


    Das Modul bluetooth-hci-socket lässt sich nicht installieren, nur leider wird es gebraucht. Ich hab so einiges versucht, nur verstehe ich die npm-Fehlermeldungen während der Installation von bluetooth-hci-socket auch nicht wirklich :/


    Wenn du die Konfiguration für homebridge-avea-bulb in /var/homebridge/config.json wieder entfernst, sollte homebridge wieder starten. Alles neu zu installieren wird eher nicht nötig sein. Diese Zeilen müssen raus:


    Code
    {
        "accessory": "AveaBulb",
        "name": "Avea Bulb"
    },

    Falls du mehr als eine so magere Konfiguration der homebridge-avea-bulb erstellt hast, muss das "Mehr" natürlich auch raus.


    Stefan

  • homebridge läuft wieder. Habe das Plugin deinstalliert und erneut installiert.


    sudo journalctl -fau homebridge zeigt mir das:


    sudo journalctl -fau homebridge

    -- Logs begin at Thu 2016-11-03 18:16:43 CET. --

    Sep 09 16:43:45 raspberrypi homebridge[965]:

    Sep 09 16:43:45 raspberrypi homebridge[965]: Or enter this code with your HomeKit app on your iOS device to pair with Homebridge:

    Sep 09 16:43:45 raspberrypi homebridge[965]:

    Sep 09 16:43:45 raspberrypi homebridge[965]: ??????????????

    Sep 09 16:43:45 raspberrypi homebridge[965]: ? 031-45-154 ?

    Sep 09 16:43:45 raspberrypi homebridge[965]: ??????????????

    Sep 09 16:43:45 raspberrypi homebridge[965]:

    Sep 09 16:43:45 raspberrypi homebridge[965]: [9/9/2018, 4:43:45 PM] Homebridge is running on port 51826.

    Sep 09 16:43:48 raspberrypi homebridge[965]: [9/9/2018, 4:43:48 PM] [Config] Using Form Authentication

    Sep 09 16:43:48 raspberrypi homebridge[965]: [9/9/2018, 4:43:48 PM] [Config] Console v3.8.10 is listening on port 8080.


    sieht erstmal ok aus denke ich..


    und nun? :/

  • befehle für Avea in die Config geschrieben und Homebridge startet nicht mehr..


    Sep 09 16:59:50 raspberrypi sudo[1792]: homebridge : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/bin/systemctl restart homebridge

    Sep 09 16:59:50 raspberrypi sudo[1792]: pam_unix(sudo:session): session opened for user root by (uid=0)

    Sep 09 16:59:50 raspberrypi systemd[1]: Stopping Node.js HomeKit Server...

    Sep 09 16:59:50 raspberrypi homebridge[965]: [9/9/2018, 4:59:50 PM] Got SIGTERM, shutting down Homebridge...

    Sep 09 16:59:55 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=143/n/a

    Sep 09 16:59:55 raspberrypi systemd[1]: Stopped Node.js HomeKit Server.

    Sep 09 16:59:55 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.

    Sep 09 16:59:55 raspberrypi systemd[1]: homebridge.service: Failed with result 'exit-code'.

    Sep 09 16:59:55 raspberrypi systemd[1]: Started Node.js HomeKit Server.

    Sep 09 16:59:55 raspberrypi sudo[1792]: pam_unix(sudo:session): session closed for user root

    Sep 09 16:59:55 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=203/EXEC

    Sep 09 16:59:55 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.

    Sep 09 16:59:55 raspberrypi systemd[1]: homebridge.service: Failed with result 'exit-code'.

    Sep 09 17:00:05 raspberrypi systemd[1]: homebridge.service: Service hold-off time over, scheduling restart.

    Sep 09 17:00:05 raspberrypi systemd[1]: Stopped Node.js HomeKit Server.

    Sep 09 17:00:05 raspberrypi systemd[1]: Started Node.js HomeKit Server.

    Sep 09 17:00:05 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=203/EXEC

    Sep 09 17:00:05 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.

    Sep 09 17:00:05 raspberrypi systemd[1]: homebridge.service: Failed with result 'exit-code'.

    Sep 09 17:00:16 raspberrypi systemd[1]: homebridge.service: Service hold-off time over, scheduling restart.

    Sep 09 17:00:16 raspberrypi systemd[1]: Stopped Node.js HomeKit Server.

    Sep 09 17:00:16 raspberrypi systemd[1]: Started Node.js HomeKit Server.

    Sep 09 17:00:16 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=203/EXEC

    Sep 09 17:00:16 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.

    Sep 09 17:00:16 raspberrypi systemd[1]: homebridge.service: Failed with result 'exit-code'.

    Sep 09 17:00:26 raspberrypi systemd[1]: homebridge.service: Service hold-off time over, scheduling restart.

    Sep 09 17:00:26 raspberrypi systemd[1]: Stopped Node.js HomeKit Server.

    Sep 09 17:00:26 raspberrypi systemd[1]: Started Node.js HomeKit Server.

    Sep 09 17:00:26 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=203/EXEC

    Sep 09 17:00:26 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.

    Sep 09 17:00:26 raspberrypi systemd[1]: homebridge.service: Failed with result 'exit-code'.

    Sep 09 17:00:36 raspberrypi systemd[1]: homebridge.service: Service hold-off time over, scheduling restart.

    Sep 09 17:00:36 raspberrypi systemd[1]: Stopped Node.js HomeKit Server.

    Sep 09 17:00:36 raspberrypi systemd[1]: Started Node.js HomeKit Server.

    Sep 09 17:00:36 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=203/EXEC

    Sep 09 17:00:36 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.

    Sep 09 17:00:36 raspberrypi systemd[1]: homebridge.service: Failed with result 'exit-code'.

    Sep 09 17:00:46 raspberrypi systemd[1]: homebridge.service: Service hold-off time over, scheduling restart.

    Sep 09 17:00:46 raspberrypi systemd[1]: Stopped Node.js HomeKit Server.

    Sep 09 17:00:46 raspberrypi systemd[1]: Started Node.js HomeKit Server.

    Sep 09 17:00:46 raspberrypi systemd[1]: homebridge.service: Main process exited, code=exited, status=203/EXEC

    Sep 09 17:00:46 raspberrypi systemd[1]: homebridge.service: Unit entered failed state.

    Sep 09 17:00:46 raspberrypi systemd[1]: homebridge.service: Failed with result 'exit-code'.

  • {

    "bridge": {

    "name": "Homebridge",

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

    "port": 51826,

    "pin": "031-45-154"

    },

    "description": "Home Smart Home",

    "platforms": [{

    "platform": "config",

    "name": "Config",

    "port": 8080,

    "auth": "form",

    "theme": "red",

    "restart": "sudo -n systemctl restart homebridge",

    "temp": "/sys/class/thermal/thermal_zone0/temp",

    "sudo": true,

    "log": {

    "method": "systemd",

    "service": "homebridge"

    }

    } ],

    "accessories": [

    {

    "accessory": "AveaBulb",

    "name": "sleeping room table lamp",

    "manufacturer": "Elgato",

    "model": "Avea",

    "serialnumber": "Avea_7F14",

    "bluetoothid": "78a5048e1145"

    }

    ]

    }

  • habe es jetzt am laufen und die erste Lampe wird erkannt. Aber wenn ich es nur mit dem Befehl Homebridge starte kommt das nach kurzer Zeit. Homebridge geht dann wieder aus und Antwortet logischerweise auch nicht mehr in der Home App. Starte ich es mit sudo Homebridge dann wird nach lampen gescannt, aber homebridge antwortet nicht in der App.


    [9/12/2018, 11:02:13 PM] Homebridge is running on port 51826.

    /usr/local/lib/node_modules/homebridge-avea-bulb/node_modules/noble/lib/noble.js:98

    throw error;

    ^


    Error: Could not start scanning, state is unauthorized (not poweredOn)

    at Noble.scan (/usr/local/lib/node_modules/homebridge-avea-bulb/node_modules/noble/lib/noble.js:93:19)

    at Noble.startScanning (/usr/local/lib/node_modules/homebridge-avea-bulb/node_modules/noble/lib/noble.js:120:10)

    at Object.startScanningWithTimeout (/usr/local/lib/node_modules/homebridge-avea-bulb/index.js:159:15)

    at Object.getFromLight (/usr/local/lib/node_modules/homebridge-avea-bulb/index.js:336:22)

    at Object.getSaturation (/usr/local/lib/node_modules/homebridge-avea-bulb/index.js:463:14)

    at emitThree (events.js:116:13)

    at emit (events.js:194:7)

    at Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:163:10)

    at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:760:20)

    at Array.forEach (native)

  • nun kam das und nichts geht mehr..


    events.js:160

    throw er; // Unhandled 'error' event

    ^


    Error: listen EADDRINUSE :::51826

    at Object.exports._errnoException (util.js:1022:11)

    at exports._exceptionWithHostPort (util.js:1045:20)

    at Server._listen2 (net.js:1259:14)

    at listen (net.js:1295:10)

    at Server.listen (net.js:1391:5)

    at EventedHTTPServer.listen (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/util/eventedhttp.js:60:19)

    at HAPServer.listen (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:158:20)

    at Bridge.Accessory.publish (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:607:16)

    at Server._publish (/usr/local/lib/node_modules/homebridge/lib/server.js:128:16)

    at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:97:10)

  • sudo killall :D

  • Würde die Homebridge funktionieren, wenn nicht der User homebridge sie startet, sondern der User pi oder der User root?


    Führe als User pi das Kommando

    homebridge -U /var/homebridge

    aus und beobachte das Verhalten.


    Führe das Kommando aus

    sudo -i

    und dann als User root, der du ja jetzt bist:

    homebridge -U /var/homebridge

    und beobachte das Verhalten.


    Abbrechen jeweils mit ctrl-c.


    Wenn es jetzt besser läuft, dann liegt es an den etwas strikteren Sicherheitseinstellungen, die ich meiner Anleitung verpasst habe. Die solltest du mal weich machen, indem du die sudoers-Einstellungen veränderst.


    Gehe dann so vor:


    sudo nano /etc/sudoers.d/homebridge

    Dort sollte es jetzt so aussehen:


    Code
    homebridge ALL=(root) SETENV:NOPASSWD: /usr/local/bin/npm, /bin/systemctl restart homebridge, /bin/journalctl, /usr/local/bin/node


    Ersetze das alles durch:


    Code
    homebridge ALL=(ALL:ALL) ALL


    Diese neue Einstellung hat keine Auswirkungen auf die bisherige Installation. Sie bewirkt nur, dass der User homebridge alle Befehle des Systems als root ausführen darf. Du kannst das also dann auch so lassen.


    Ich habe es nicht getestet.


    Error: listen EADDRINUSE :::51826 bedeutet nur, dass Port 51826 schon in Gebrauch ist, und er ist immer dann in Gebrauch, wenn die Homebridge läuft. Du versuchst also, zwei Homebridges parallel laufen zu lassen, was nur geht, wenn die Porteinstellungen unterschiedlich wären. Ein sudo pkill -u homebridge beendet alle Prozesse, die vom User homebridge aufgerufen wurden. Der systemd startet die Homebridge dann nach 10 Sekunden automatisch neu.


    Stefan

  • Vielen dank für die ausführliche Antwort. Gestern nach 5h lief dann mal eine Birne perfekt. Dann musste ich aber feststellen das Homebridge und Lampe nach ner gewissen Zeit keine Antwort mehr geben. Homebridge neu gestartet und es ging. Heute morgen liess sich dann auch wieder nichts ansteuern was zu erwarten war.


    Habe dein Script für den Neustart benutzt, aber geht wohl nicht. Dann wollte ich noch das Uix installieren, habe es aber auch nicht hinbekommen. Ergo, jetzt geht erst mal gar nichts.


    Was schlägst du vor als Komplettlösung?


    Habe den Pi nach deiner Anleitung aufgesetzt.

    Avahi installiert

    Node hiervon: https://blog.wia.io/installing-node-js-on-a-raspberry-pi-3

    hier einiges von: https://github.com/Alblahm/ave…-your-avea-accessory-file der erste Teil, der rest ging auch nicht

    dann hier: https://www.npmjs.com/package/homebridge-avea-bulb

    dann wurde als Error mir da vorgeschlagen: rebuild node-gyp


    dann eine Lampe zum laufen bekommen.


    das Bluetoothctl geht gar nicht da kommt der Befehl das Controller nicht gefunden wird. Habe jetzt auch lkein Plan wie ich die Adressen von 6 Lampen rausbekomme.


    Was hältst du davon? Einige Schritte zu viel, sinnlos oder doppelt?


    Gruß Norman

  • das kam jetzt bei:

    homebridge -U /var/homebridge

    [9/13/2018, 6:54:40 PM] Loaded config.json with 1 accessories and 0 platforms.

    [9/13/2018, 6:54:40 PM] ---

    [9/13/2018, 6:54:40 PM] Loaded plugin: homebridge-avea-bulb

    [9/13/2018, 6:54:40 PM] Registering accessory 'homebridge-avea-bulb.AveaBulb'

    [9/13/2018, 6:54:40 PM] ---

    [9/13/2018, 6:54:40 PM] Loaded plugin: homebridge-config-ui-x

    [9/13/2018, 6:54:40 PM] Registering platform 'homebridge-config-ui-x.config'

    [9/13/2018, 6:54:40 PM] ---

    [9/13/2018, 6:54:40 PM] Loading 0 platforms...

    [9/13/2018, 6:54:40 PM] Loading 1 accessories...

    [9/13/2018, 6:54:40 PM] [table lamp] Initializing AveaBulb accessory...

    Error: EACCES: permission denied, open '/var/homebridge/persist/AccessoryInfo.CC223DE3CE30.json'

    at Error (native)

    at Object.fs.openSync (fs.js:640:18)

    at Object.fs.writeFileSync (fs.js:1333:33)

    at Object.persistKeySync (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/node-persist/src/local-storage.js:476:16)

    at Object.setItemSync (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/node-persist/src/local-storage.js:277:14)

    at Object.nodePersist.setItemSync (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/node-persist/src/node-persist.js:99:29)

    at AccessoryInfo.save (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/model/AccessoryInfo.js:165:11)

    at Bridge.Accessory.publish (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:543:23)

    at Server._publish (/usr/local/lib/node_modules/homebridge/lib/server.js:128:16)

    at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:97:10)

    pi@raspberrypi:~ $

  • das als Root. Habe den Kill all befehl ausgeführt aber scheint noch irgendwas aktiv zu sein

    root@raspberrypi:~# homebridge -U /var/homebridge

    [9/13/2018, 6:59:11 PM] Loaded config.json with 1 accessories and 0 platforms.

    [9/13/2018, 6:59:11 PM] ---

    [9/13/2018, 6:59:11 PM] Loaded plugin: homebridge-avea-bulb

    [9/13/2018, 6:59:11 PM] Registering accessory 'homebridge-avea-bulb.AveaBulb'

    [9/13/2018, 6:59:11 PM] ---

    [9/13/2018, 6:59:11 PM] Loaded plugin: homebridge-config-ui-x

    [9/13/2018, 6:59:11 PM] Registering platform 'homebridge-config-ui-x.config'

    [9/13/2018, 6:59:11 PM] ---

    [9/13/2018, 6:59:11 PM] Loading 0 platforms...

    [9/13/2018, 6:59:11 PM] Loading 1 accessories...

    [9/13/2018, 6:59:11 PM] [table lamp] Initializing AveaBulb accessory...

    Setup Payload:

    X-HM://0023ISYWYB3I2

    Scan this code with your HomeKit app on your iOS device to pair with Homebridge:




























    Or enter this code with your HomeKit app on your iOS device to pair with Homebridge:


    ??????????????

    ? 031-45-154 ?

    ??????????????


    Error: listen EADDRINUSE :::51826

    at Object.exports._errnoException (util.js:1022:11)

    at exports._exceptionWithHostPort (util.js:1045:20)

    at Server._listen2 (net.js:1259:14)

    at listen (net.js:1295:10)

    at Server.listen (net.js:1391:5)

    at EventedHTTPServer.listen (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/util/eventedhttp.js:60:19)

    at HAPServer.listen (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:158:20)

    at Bridge.Accessory.publish (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:607:16)

    at Server._publish (/usr/local/lib/node_modules/homebridge/lib/server.js:128:16)

    at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:97:10)