Das weiß ich leider nicht. Ich kenne nur die von dir beschriebene Vorgehensweise.
Beiträge von buzz-dee
-
-
-
Moin Freunde der Heimautomation!
Ich hänge meinen Beitrag mal hier an, weil es thematisch ganz gut passt.
Ich nutze auf meiner Homebridge das Plugin homebridge-fritz-platform.
Gestern wurde bei mir zu Hause der Stromzähler ausgetauscht. Also waren alle Geräte für ein paar Minuten komplett aus.
Nach dem alles wieder hochgefahren war stellte ich fest, dass die Homebridge beim Starvorgang hängengeblieben ist. Der Grund war, dass der Raspi so schnell die Arbeit aufgenommen hatte, dass die FRITZ!Box noch nicht ansprechbar war, was wiederum dazu führte dass das Plugin hängen blieb und den Start der ganzen Homebridge verhinderte.
Also musste eine Lösung her. Ziel war es, den Start von Homebridge so lange zu verzögern, bis die FRITZ!Box erreichbar ist.
Eine generelle zeitliche Startverzögerung wäre zielführend, aber nicht elegant genug weil sie auch jeden Neustart der Homebridge um die gewählte Zeit verzögert. Ein
würde auch nichts bringen, da die Abhängigkeit ja außerhalb des raspi besteht.
Also hab ich mich im Internet auf die Suche gemacht und bin auf folgendes gestoßen:
Wenn man in der Datei /usr/lib/systemd/system/homebridge.service den Befehl
Unter
an die vorhandenen Befehle anfügt (Leerzeichen nicht vergessen, IP Adresse auf die eigenen Gegebenheiten anpassen), wird der Startbefehl für die Homebridge erst dann ausgelöst, wenn die FRITZ!Box auf ein „Ping“ reagiert hat.
Damit hätte ich mich zufrieden geben können. Da ich meine Homebridge aber über das apt repository installiert habe und darüber auch die Updates einspiele, hätte meine Änderung nur bis zum nächsten Update der Homebridge bestand.
Glücklicherweise bietet Linux einen sehr eleganten Weg das zu umgehen.
Man legt unter /etc/systemd/system ein neues Verzeichnis an nach dem Schema <Name des Service>.service.d
In meinem Fall also /etc/systemd/system/homebridge.service.d/
In diesem Verzeichnis erstellt man eine neue Datei mit der Endung .conf (der Name selbst ist frei wählbar)
Dort hinein schreibt man nun alles was man an Konfiguration für den Service zusätzlich braucht, und zwar nach dem gleichen Prinzip wie die Service Dateien selbst aufgebaut sind.
In meiner Datei stehen nur zwei Zeilen:
Danach abspeichern und mit
Codesudo systemctl daemon-reload sudo systemctl restart homebridge oder sudo hb-service restart homebridgealles aktivieren. Beim Start der Homebridge wird ab sofort alles aus der homebridge.service Datei abgearbeitet und zusätzlich alles aus der selbst erstellten .conf Datei. Diese Ergänzungen bleiben auch bei einem „apt update“ erhalten. Um alles rückgängig zu machen reicht es, die .conf Datei zu löschen und die Hombridge startet wieder mit den Einstellungen aus der homebridge.service Datei.
Im Ergebnis wartet der Homebridge Service nach einem Stromausfall nun brav ab bis der Router wieder erreichbar ist, und wenn ich die Homebride im laufenden Betrieb neu starten muss hab ich nur die Verzögerung von „einem einzigen Ping“ (Wassily
). -
Homebridge wir inzwischen auch über repositories gepflegt.
Die apt Version 1.1.6. ist das aktuellste Paket. Damit läuft deine homebridge auf Version 1.7.0. und config-ui-x auf 4.55.1
Beim durchführen des „Updates“ wird automatisch die neuestes 18er Version von Node installiert. Ich denke dass das daran liegt, dass auf manchen Systemen Node20 wegen fehlender dependencies nicht läuft und zu einer nicht funktionierenden homebridge führen würde.
Du kannst aber problemlos nach dem „sudo apt-get upgrade“ mit „sudo hb-service update-node“ wieder auf Version 20 zurück (wenn die vorher schon bei dir lief)
-
Vielen Dank, wenn ich jetzt wüsste welches password der user homebridge hat, könnte ich ich mich als 'homebridge' im terminal anmelden und das script zuweisen.
dazu musst du nicht als “homebridge” angemeldet sein. Du kannst den Befehl einfach im Terminal eingeben in dem du mit deinem User Namen angemeldet bist und dem Skript den Besitzer homebridge zuweisen
-
Ich hatte ein ähnliches Problem als ich vorletzte Woche meinen Raspi neu aufsetzen musste:
Meine Skripte die ich mit cmdtrigger aufrufe enthielten “sudo”
Dazu ist der User “homebridge” (unter diesem User läuft meine homebridge) bei mir aber nicht berechtigt gewesen.
Also entweder sudo weglassen (wenn das Skript ohne auskommt) oder dem User homebridge sudo Rechte einräumen.
Dein Skript gehört übrigens dem User ROOT. Möglicherweise kann es auch deswegen nicht von der homebridge gestartet werden?
Damit setzt du den Besitzer des Skripts auf den User/Benutzergruppe mit dem du gerade im Terminal angemeldet bist.
-
Danke für den Tipp. Das hat die Lösung gebracht!
Für alle die Ihr Node über den Versionsmanager "n" installieren:
Ihr könnt euch die Änderung der config.txt auch sparen und "n" anweisen die 32bit Variante eurer gewünschten Node Version zu installieren.
mit:
bekommt ihr die aktuelle LTS Version von Node für den Pi 4. Ihr könnt in dem Befehl "18.16.0" mit der von euch gewünschten Version ersetzen.
-
Ich konnte bis jetzt auch nichts dazu finden habe das Update auf 18.16.0 mehrfach versucht. Bis jetzt ohne Erfolg.
Die Installation schlägt bei mir fehl, da scheint irgendwas mit dem Installationsskript schief zu laufen 🙄
Danach startet die homebridge nicht mehr (Überraschung) bis ich auf 18.15.0 zurück gewechselt bin.
-
…In den Raspi habe ich noch keine Geräte eingebunden. Dennoch findet Home die Bridge nicht…
Die homebridge selber musst du doch nicht einbinden, oder verstehe ich da was falsch? Du hast bis jetzt nur die homebridge eingerichtet? Ohne Plugins? Und noch keine Geräte?
Sobald du die ersten Geräte in der homebridge hast, werden die automatisch an Home weitergereicht.
-
ich habe einen HomePod mini oben auf dem Spiegelschrank versteckt. Läuft seit knapp zwei jahren absolut problemlos. Aktiviert wird er, wenn das Licht im Bad eingeschaltet wird (zu bestimmten Uhrzeiten).
-
Ich hatte das Problem schon mal bei anderen Geräten. Bei mir half es im Router und allen repeatern 5 ghz wlan zu deaktivieren und so alle Geräte auf 2,4 ghz zu zwingen. So konnte ich das neue Gerät hinzufügen. Danach 5 ghz wieder einschalten und alles war gut.
-
Ich habe eine ganz ähnliche Situation bei mir. Die Garage ist ca. 70m weit vom eigentlichen Haus entfernt und Teil eines anderen Gebäudes. Auch ich suche schon länger nach einer Möglichkeit die Garage in Apple Home zu integrieren. LAN Kabel verlegen ist keine Option. Ich habe mich auf Grund eurer Vorschläge jetzt für die Powerline Variante entschieden. Leider ohne Erfolg. Es kommt keine Verbindung zustande. Als nächstes werde ich es wohl tatsächlich mit einem LAN-LAN VPN über LTE versuchen.
-
Folgendes kommt!
Kann es sein dass es nicht laufen will weil die Datei dem User root gehört?
Bei mir gehört sie dem User Pi (das ist auch der User unter dem die homebridge bei mir angelegt ist )
Das würde bei dir ja auch erklären warum der Fehler „Permission denied“ kommt beim Versuch config-ui-x zu starten
-
Das wäre auch mein Ansatz. Bin nur nicht sicher, ob diese dann stoisch nach voreingestellter Zeit wieder an geht. Selbst schon mal getestet?
Ja, mit der AVM FRITZ!DECT 200 klappt das wunderbar. Allerdings nur wenn du von außen dein Zuhause noch erreichen kannst. Wenn du offline bist, wird das auch nix.
-
Eine smarte Steckdose, die nach dem man sie manuell (aus der Ferne) ausgelöst hat, nach vorgegebener Zeit automatisch auf den vorherigen Schaltzustand zurück geht.
-
Probier als Benutzernamen „admin“ oder den selben Benutzernamen wir vom Router
Besten Dank!
“username”: “admin”,
hat gefehlt, jetzt funktioniert alles. Klasse 👍🏻
-
Alles anzeigen
Kannst du nochmal dein config schicken bitte, ich glaube du hast "active" falsch gesetzt.
Und welche version vom Plugin benutzt du?
Lg
Habe auf 6.0.5 gewechselt und die FritzBox und den repeater auf „active“: true, gesetzt.
Die Warnung ist jetzt weg, allerdings läuft das log mit Fehlern für den repeater voll und ich kann die Optionen (2,4ghz 5ghz und led Status) nicht mehr schalten. Der Zugriff wird verweigert weil wohl ein Benutzername fehlt (den es auf dem repeater aber nicht gibt)
Code
Alles anzeigen[23.6.2021, 15:26:41] [FritzPlatform] Repeater (repeater): An error occured during getting state! [23.6.2021, 15:26:41] [FritzPlatform] Error: Unauthorized at Object.exports.request (/usr/local/lib/node_modules/homebridge-fritz-platform/node_modules/@seydx/fritzbox/lib/request.js:78:21) at runMicrotasks (<anonymous>) at processTicksAndRejections (internal/process/task_queues.js:95:5) at exports.requestXml (/usr/local/lib/node_modules/homebridge-fritz-platform/node_modules/@seydx/fritzbox/lib/request.js:213:20) at Service.execAction (/usr/local/lib/node_modules/homebridge-fritz-platform/node_modules/@seydx/fritzbox/lib/service.js:133:20) at Handler.get (/usr/local/lib/node_modules/homebridge-fritz-platform/src/accessories/router/router.handler.js:169:28) at Handler.poll (/usr/local/lib/node_modules/homebridge-fritz-platform/src/accessories/router/router.handler.js:1046:11) { title: 'Invalid Response', code: 401, url: 'https://false:[email protected]:49443/upnp/control/wlanconfig1' } -
Hab ich gemacht, die Warnung kommt trotzdem wieder. 🤷🏻♂️
-
Moinsen,
Ich bekomme im Log folgenden Warnung:
Code[21.6.2021, 14:27:07] [FritzPlatform] WARNING: There is no master router configured! Please check if "master" is enabled in config. [21.6.2021, 14:27:07] Loading 1 accessories..Meine config sieht so aus:
Code
Alles anzeigen"name": "FritzPlatform", "debug": false, "devices": [ { "name": "FB6951", "host": "192.168.178.1", "username": "xx", "password": "xx", "ssl": true, "tr064": true, "igd": false, "model": "6951", "master": true, "connection": "cable", "options": { "wifi_2ghz": "switch", "wifi_5ghz": "switch", "wifi_guest": "switch", "wps": "switch", "led": "switch" } }, { "name": "Repeater", "host": "192.168.178.2", "password": "xx", "ssl": true, "tr064": true, "igd": false, "model": "Repeater 2400", "master": false, "connection": "repeater", "options": { "led": "switch", "wifi_5ghz": "switch", "wifi_2ghz": "switch" } }Das Masterattribut ist also für die FritzBox gesetzt und für den repeater nicht, von daher verstehe ich die Warnung nicht. Kann mir jemand bitte auf die Sprünge helfen?
-
Von meinen 6 Hompods (5mal mini und einmal OG) sind 4 auf 14.5 und bei 2 (minis) steht seit mehreren Stunden "laden" und das Rädchen dreht. Es scheint, als ob da nicht mehr wirklich was geht...
Will ja nicht neustarten/zurücksetzen, wenn die minis das Softwareupdate am laden sind... Auf der anderen Seite haben sich die zwei vielleicht aufgehängt?
Jemand dasselbe Problem? Was wird empfohlen?
Das gleiche hatte ich bei einem meiner Minis auch, nach zwei Tagen hab ich die Geduld verloren und ihn zurückgesetzt. Jetzt ist alles wieder normal. Der Mini ist auf 14.5 geupdated und funktioniert tadellos.