Homebridge status: starting / Homebridge startet nicht mehr durch

Begonnen von Shadow, 07 Mai 2016, 16:08:03

Vorheriges Thema - Nächstes Thema

Shadow

Hallo!
Ich habe bei mir Homebridge eingerichtet und mit FHEM verbunden.
Per Eve konnte ich auch Homebride sehen und auch hinzufügen. Ich konnte auch ein Thermostat steuern.

Ich habe im Anschluss mehrere hinzugefügt und auch das Device neu gestartet. Seit dem startet der Dienst Homebridge nicht mehr. Mit
sudo service homebridge status
steht da dann immer nur:


pi@raspberrypi:~ $ sudo service homebridge status
● homebridge.service - LSB: Start daemon at boot time for homebridge
   Loaded: loaded (/etc/init.d/homebridge)
   Active: active (exited) since Sat 2016-05-07 16:14:38 CEST; 44s ago
  Process: 458 ExecStart=/etc/init.d/homebridge start (code=exited, status=0/SUCCESS)


May 07 16:14:37 raspberrypi su[494]: Successful su for pi by root
May 07 16:14:37 raspberrypi su[494]: + ??? root:pi
May 07 16:14:38 raspberrypi su[494]: pam_unix(su:session): session opened for user pi by (uid=0)
May 07 16:14:38 raspberrypi homebridge[458]: Homebridge starting
May 07 16:14:38 raspberrypi homebridge[458]: Homebridge is not running
May 07 16:14:38 raspberrypi systemd[1]: Started LSB: Start daemon at boot time for homebridge.


Ich hab die Config geprüft und daran hat sich nichts verändert. Die Einwahldaten zum Server sind immer noch die gleichen.
Ein "Restart" funktioniert auch nicht. Hab beide devices des öfteren durchgestartet und gewartet.
Wie kann ich das am besten Debuggen? Bzw. wo könnte ich einsteigen ohne den Pi neu aufzusetzen?
System:
RPi 1 (FHEM) + COC Modul (auf GPios) + Antenne, 6 x HM-LC-Dim1T-FM (Dim Licht), 6 x HM-LC-Bl1PBU-FM (Rolladen), 7 x HM-CC-VD (Heizkörer), 5 x HM-CC-TC (Temperatur), 6 x HM-SEC-SC-2 (Fenster), 2 x HM-PB-6-WM55 (Taster)

budy

Na ja, als erstes schaut man mal in die Logs der homebridge, meistens steht da, warum sie nicht mehr will.
Als nächstes kann man die homebridge mal manuell starten, dann bekommt man die ganzen Ausgaben auch direkt in die Konsole geliefert.

Gruß,
Stephan
Debian stretch, FHEM 5.9.
HM-CC-RT-DN, HM-ES-PMSw1-Pl, HM-LC-Dim1TPBU-FM, HMUARTLGW, HMLAN, HM-SEC-KEY, HM-SEC-RHS, HM-SEC-SC-2, HM-SEC-SCo, HM-SEC-SD-2, HM-OU-CFM-TW, div. HUEs, Wifilight, Ring Video Pro

Shadow

Wenn ich ihn als "Dienst" starte will er nicht. Ich hab die config dazu noch mal genau wiederholt. Dieses hat aber vorher geklappt.
Bekomme jetzt immer wieder die meldung wie oben. Status:starting.

Wenn ich es manuell mit "homebridge" starten will dann startet er auch durch.

pi@raspberrypi:~ $ homebridge
*** WARNING *** The program 'nodejs' 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 <http://0pointer.de/avahi-compat?s=libdns_sd&e=nodejs>
*** WARNING *** The program 'nodejs' 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 <http://0pointer.de/avahi-compat?s=libdns_sd&e=nodejs&f=DNSServiceRegister>
[5/7/2016, 11:16:51 PM] Loaded plugin: homebridge-fhem
homebridge API version: 2
[5/7/2016, 11:16:51 PM] Registering platform 'homebridge-fhem.FHEM'
[5/7/2016, 11:16:51 PM] ---
[5/7/2016, 11:16:51 PM] Loaded config.json with 0 accessories and 1 platforms.
[5/7/2016, 11:16:51 PM] ---
[5/7/2016, 11:16:51 PM] Loading 1 platforms...
[5/7/2016, 11:16:51 PM] [FHEM] Initializing FHEM platform...


Ich denke nicht, dass es was mit den oben gezeigten Warnungen zutun hat.

Also wenn ich manuell starte dann kann ich auch den Code scannen. Allerdings wirft mich dann Eve wieder zurück in die Suche un er hat kein Gerät hinzugefügt. Das finde ich etwas verwunderlich.

Bekomme allerdings noch so eine meldung.

Server error: Error: listen EADDRINUSE :::8082
Server listening on: http://<ip>:8282
System:
RPi 1 (FHEM) + COC Modul (auf GPios) + Antenne, 6 x HM-LC-Dim1T-FM (Dim Licht), 6 x HM-LC-Bl1PBU-FM (Rolladen), 7 x HM-CC-VD (Heizkörer), 5 x HM-CC-TC (Temperatur), 6 x HM-SEC-SC-2 (Fenster), 2 x HM-PB-6-WM55 (Taster)

Shadow

Nachtrag:
Wenn ich das Device ohne Scannen sondern durch eingeben der Zahlen hinzufüge Taucht das Gerät normal in den Einstellungen auf. Ich werd morgen noch mal weiter testen und berichten. Danke!
System:
RPi 1 (FHEM) + COC Modul (auf GPios) + Antenne, 6 x HM-LC-Dim1T-FM (Dim Licht), 6 x HM-LC-Bl1PBU-FM (Rolladen), 7 x HM-CC-VD (Heizkörer), 5 x HM-CC-TC (Temperatur), 6 x HM-SEC-SC-2 (Fenster), 2 x HM-PB-6-WM55 (Taster)

budy

Zitat von: Shadow am 07 Mai 2016, 23:22:35Server error: Error: listen EADDRINUSE :::8082
Server listening on: http://<ip>:8282


Das bedeutet normalerweise, dass der Port schon/noch belegt ist. Bist du sicher, dass da nicht noch einr homebridge-Instanz lief?

Gruß,
Stephan

P.S. Das scannen des Codes bei der ersten Einrichtung hat bei mir noch nie funktioniert. :o
Debian stretch, FHEM 5.9.
HM-CC-RT-DN, HM-ES-PMSw1-Pl, HM-LC-Dim1TPBU-FM, HMUARTLGW, HMLAN, HM-SEC-KEY, HM-SEC-RHS, HM-SEC-SC-2, HM-SEC-SCo, HM-SEC-SD-2, HM-OU-CFM-TW, div. HUEs, Wifilight, Ring Video Pro

Shadow

Danke Buddy.
Da schien wohl noch irgendwas gelaufen zu sein. Nachdem ich alles noch mal neu aufgesetzt habe läuft es jetzt ohne Probleme. zwar steht bei
sudo service homebridge start
noch:
homebridge.service - LSB: Start daemon at boot time for homebridge
   Loaded: loaded (/etc/init.d/homebridge)
   Active: active (exited) since Sun 2016-05-08 21:54:13 UTC; 29min ago
  Process: 462 ExecStart=/etc/init.d/homebridge start (code=exited, status=0/SUCCESS)

May 08 21:54:12 raspberrypi systemd[1]: Starting LSB: Start daemon at boot t....
May 08 21:54:12 raspberrypi su[488]: Successful su for pi by root
May 08 21:54:12 raspberrypi su[488]: + ??? root:pi
May 08 21:54:12 raspberrypi su[488]: pam_unix(su:session): session opened f...0)
[b]May 08 21:54:13 raspberrypi homebridge[462]: Homebridge starting
May 08 21:54:13 raspberrypi homebridge[462]: Homebridge is not running[/b]
May 08 21:54:13 raspberrypi systemd[1]: Started LSB: Start daemon at boot ti....
Hint: Some lines were ellipsized, use -l to show in full.


Aber ich sehe das device nun auch wieder nach einem Neustart. Kann mir nicht erklären warum dort steht "Homebridge is not running". Es funktioniert aber...
System:
RPi 1 (FHEM) + COC Modul (auf GPios) + Antenne, 6 x HM-LC-Dim1T-FM (Dim Licht), 6 x HM-LC-Bl1PBU-FM (Rolladen), 7 x HM-CC-VD (Heizkörer), 5 x HM-CC-TC (Temperatur), 6 x HM-SEC-SC-2 (Fenster), 2 x HM-PB-6-WM55 (Taster)

piet_pit

Hallo,
welches Startscript nutzt du?
Dass aus dem Wiki ist m.E. nicht korrekt, konnte aber mit meinen mageren Linux-Kenntnissen den Fehler auch nicht finden. Ich hatte auch sowohl den Status "Homebridge is starting" als auch "Homebridge is not running" angezeigt bekommen, Homebridge lief aber!
Nutze jetzt ein anderes Startscript.
viele Gruesse
Pit
FHEM Latest Revision: 29615
Raspberry Pi 3, Rasbian-Stretch
FRITZ!Box 7690
HM-Mod-RPI-PCB, JeeLink
CUNO 1.47

Shadow

Ich nutze das Skript aus "Homebridge einrichten". Nicht das aus "Homebridge Start und Status in FHEM".
Welches Skript nutzt du den jetzt? Würdest du es mir auch zur Verfügung stellen?
ggf. kann man es ja im Wiki anpassen.

Hab leider auch eher magere Linux Kenntnisse als das ich dort einen Fehler finde.
System:
RPi 1 (FHEM) + COC Modul (auf GPios) + Antenne, 6 x HM-LC-Dim1T-FM (Dim Licht), 6 x HM-LC-Bl1PBU-FM (Rolladen), 7 x HM-CC-VD (Heizkörer), 5 x HM-CC-TC (Temperatur), 6 x HM-SEC-SC-2 (Fenster), 2 x HM-PB-6-WM55 (Taster)

piet_pit

Hallo,
ich habe es so verstanden, dass das Skript aus "Homebridge Start und Status in FHEM" auf dem Skript "Homebridge einrichten" basiert.

Ich verwende folgendes Skript (aus einem ellenlangen Homebridge-Thread), das klappt einwandfrei :)

#!/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
PID=`pidof homebridge`
case "$1" in
start)
if ps -p $PID > /dev/null 2>&1; then
        echo "Homebridge is already running"
else
        homebridge -U /home/pi/.homebridge/ > /dev/null 2>&1 &
        echo "Homebridge starting"
fi
;;
stop)
if ! ps -p $PID > /dev/null 2>&1; then
        echo "Homebridge is not running"
else
        kill $PID
        echo "Homebridge closed"
fi
;;
restart)
if ! ps -p $PID > /dev/null 2>&1; then
        homebridge -U /home/pi/.homebridge/ > /dev/null 2>&1 &
        echo "Homebridge starting"
else
        kill $PID
        echo "Homebridge closed"
        homebridge -U /home/pi/.homebridge/ > /dev/null 2>&1 &
        echo "Homebridge starting"
fi
;;
status)
if ps -p $PID > /dev/null 2>&1; then
        echo "Homebridge is running PID $PID"
else
        echo "Homebridge is not running"
fi
;;
*)
echo "Usage: /etc/init.d/homebridge {start|stop|status|restart}"
exit 1
;;
esac
exit 0


VG
Pit
FHEM Latest Revision: 29615
Raspberry Pi 3, Rasbian-Stretch
FRITZ!Box 7690
HM-Mod-RPI-PCB, JeeLink
CUNO 1.47

Shadow

Ich habe erneut das Problem, dass Homebridge nicht mehr automatisch durchstartet.

Ich verwende das Skript aus Homebridge_einrichten. Es hat jetzt auch 3 Wochen ohne Probleme funktioniert. Ich hab öfter mal neugestartet wenn ich Hardware in FHEM geändert habe. Der Dienst ist jedes mal mit gestartet.

Jetzt startet er aus unerfindlichen gründen nicht mehr durch. Jedoch funktioniert die Eingabe Homebridge problemlos.

sudo service homebridge start

Leider aber nicht mehr. Er sagt "Homebridge is already running"

An der
sudo nano /etc/init.d/homebridge
habe ich nichts geändert.

Homebridge wird nicht auf dem selben Pi ausgeführt wie FHEM. Daher traue ich mir das anpassen von Homebridge_Start_und_Status_in_FHEM nicht zu.
System:
RPi 1 (FHEM) + COC Modul (auf GPios) + Antenne, 6 x HM-LC-Dim1T-FM (Dim Licht), 6 x HM-LC-Bl1PBU-FM (Rolladen), 7 x HM-CC-VD (Heizkörer), 5 x HM-CC-TC (Temperatur), 6 x HM-SEC-SC-2 (Fenster), 2 x HM-PB-6-WM55 (Taster)

piet_pit

Hallo,
was meinst du eigentlich mit
"Homebridge startet nicht mehr durch"...?
Du schreibst doch selber, das Homebridge "already Running" ist!

Homebridge läuft bei mir auch auf einem anderen RPi.
VG
Pit
FHEM Latest Revision: 29615
Raspberry Pi 3, Rasbian-Stretch
FRITZ!Box 7690
HM-Mod-RPI-PCB, JeeLink
CUNO 1.47

Shadow

Meine Umgebung:
RPi1 mit FHEM
RPi2 mit Homebridge mit Autostart Skript.

Es lieft jetzt knapp 2 Wochen Problemlos. Konnte beides neustarten und der Homebridge Service ist automatisch gestartet.

Seit kurzem startet der Homebridge Service allerdings nicht mehr obwohl ich dort nichts verändert habe.



Ich habe jetzt den RPi2 komplett neu gestartet und in eine weile laufen lassen falls der Dienst etwas länger braucht.


sudo /etc/init.d/homebridge start
Liefert "Homebridge is already running"

sudo service homebridge start
Liefert keine Rückmeldung. Ist ja prinzipiell das gleiche.

sudo service homebridge status
Wirft mir folgendes:
homebridge.service - LSB: Start daemon at boot time for homebridge
   Loaded: loaded (/etc/init.d/homebridge)
   Active: active (exited) since Mon 2016-05-16 14:25:30 UTC; 34min ago
  Process: 459 ExecStart=/etc/init.d/homebridge start (code=exited, status=0/SUCCESS)

May 16 14:25:29 raspberrypi su[482]: Successful su for pi by root
May 16 14:25:29 raspberrypi su[482]: + ??? root:pi
May 16 14:25:29 raspberrypi su[482]: pam_unix(su:session): session opened f...0)
May 16 14:25:30 raspberrypi homebridge[459]: Homebridge starting
May 16 14:25:30 raspberrypi homebridge[459]: Homebridge is not running
May 16 14:25:30 raspberrypi systemd[1]: Started LSB: Start daemon at boot ti....
May 16 14:48:02 raspberrypi systemd[1]: Started LSB: Start daemon at boot ti....
May 16 14:49:38 raspberrypi systemd[1]: Started LSB: Start daemon at boot ti....
May 16 14:59:37 raspberrypi systemd[1]: Started LSB: Start daemon at boot ti....

Das "Homebridge is not running" stand dort auch schon, obwohl es ging.

Leider führen alle dieser eingaben nicht zum Starten von Homebridge.

Wenn ich es separat mit:
Homebridge
Aufrufe, dann startet es und ich kann es während der Session nutzen. Nachteil ist allerdings, dass ich die Session nicht beenden kann oder bei einem Neustart kommt der Dienst auch nicht wieder hoch.

Das lässt mich drauf schließen der der Fehler auf der Linux Seite auf dem RPi mit Homebridge liegt. Leider kann ich in dem Skript den ich vorher schon kopiert hatte und der ging, kein Fehler erkennen.
System:
RPi 1 (FHEM) + COC Modul (auf GPios) + Antenne, 6 x HM-LC-Dim1T-FM (Dim Licht), 6 x HM-LC-Bl1PBU-FM (Rolladen), 7 x HM-CC-VD (Heizkörer), 5 x HM-CC-TC (Temperatur), 6 x HM-SEC-SC-2 (Fenster), 2 x HM-PB-6-WM55 (Taster)

piet_pit

Hallo,
du hast in der config.json (ist ja auf dem Homebridge Rpi) schon die IP des Rpi, auf dem FHEM läuft, eingetragen?

Wenn du den Service Homebridge stoppst und dann Homebridge startest (separat, nicht über das Script), dann muss doch die Homebridge-Plattform starten und z.B. anzeigen, welche Devices über HomeKit angelegt werden!
Poste einmal diese Ausgabe!
VG
Pit
FHEM Latest Revision: 29615
Raspberry Pi 3, Rasbian-Stretch
FRITZ!Box 7690
HM-Mod-RPI-PCB, JeeLink
CUNO 1.47

Shadow

Ja. Das habe ich gerade noch mal kontrolliert. Hier die config.

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

    "platforms": [
        {
            "platform": "FHEM",
            "name": "FHEM",
            "server": "Hier steht die IP drin",
            "port": "Hier steht ein Port drin",
            "ssl": true,
            "auth": {"user": "Username ist hier auch drin", "pass": "Und auch ein passwort"},
            "filter": "room=Homekit"
        }
     ],

    "accessories": []
}


Bei "port": 51826, sind wie in der Anleitung keine " eingetragen. Nehme an, das es richtig ist.


Also hier der Auszug.

pi@raspberrypi:~ $ homebridge
*** WARNING *** The program 'nodejs' 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 <http://0pointer.de/avahi-compat?s=libdns_sd&e=nodejs>
*** WARNING *** The program 'nodejs' 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 <http://0pointer.de/avahi-compat?s=libdns_sd&e=nodejs&f=DNSServiceRegister>
[5/16/2016, 2:53:14 PM] Loaded plugin: homebridge-fhem
homebridge API version: 2
[5/16/2016, 2:53:14 PM] Registering platform 'homebridge-fhem.FHEM'
[5/16/2016, 2:53:14 PM] ---
[5/16/2016, 2:53:14 PM] Loaded config.json with 0 accessories and 1 platforms.
[5/16/2016, 2:53:14 PM] ---
[5/16/2016, 2:53:14 PM] Loading 1 platforms...
[5/16/2016, 2:53:14 PM] [FHEM] Initializing FHEM platform...
starting longpoll: https://IP:Port steht drin/fhem.pl?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1463410395544
[5/16/2016, 2:53:15 PM] [FHEM] Checking genericDeviceType...
[5/16/2016, 2:53:15 PM] [FHEM]   executing: https://IP:Port steht drin/fhem?cmd=%7BAttrVal(%22global%22,%22userattr%22,%22%22)%7D&XHR=1
[5/16/2016, 2:53:15 PM] [FHEM] Fetching FHEM devices...
[5/16/2016, 2:53:15 PM] [FHEM] fetching: https://IP:Port steht drin/fhem?cmd=jsonlist2%20room=Homekit&XHR=1
[5/16/2016, 2:53:15 PM] Loading 0 accessories...
Server error: Error: listen EADDRINUSE :::8082
Server listening on: http://<ip>:8282


Geht noch weiter da es knapp 27 devices sind. Das wäre aber vermutlich zu lang.

___________________________________________________ Skip________________________________

Beim Testen und erstellen der Antwort hab ich jetzt häufiger:

pi@raspberrypi:~ $ sudo service homebridge stop

eingegeben und danach noch mal start (mit Skript). Erstaunlicherweise ging es dann.

Danach hab ich "sudo reboot" um zu prüfen ob es nach dem Neustart wieder geht. Und es geht! Ich weiß aber ehrlich gesagt nicht warum. Ich habe nichts verändert.:o


Du hast geschrieben, dass du Homebridge auch auf einem anderen Divice hast. Hast du also in der Config auf "Homebridge_Start_und_Status_in_FHEM" einfach "/opt/fhem/fhem.pl" durch deine IP geändert? Oder welche Anpassungen muss man dort vornehmen?
Bzw. wie hast du diese Zeile angepasst?
define FHEM.Homebridge.DOIF DOIF ([FHEM.Homebridge] eq "start") (set FHEM.Homebridge on, {system ("sudo /etc/init.d/homebridge start")})\
Dort geht man ja davon aus, dass es auf dem selben System läuft....
System:
RPi 1 (FHEM) + COC Modul (auf GPios) + Antenne, 6 x HM-LC-Dim1T-FM (Dim Licht), 6 x HM-LC-Bl1PBU-FM (Rolladen), 7 x HM-CC-VD (Heizkörer), 5 x HM-CC-TC (Temperatur), 6 x HM-SEC-SC-2 (Fenster), 2 x HM-PB-6-WM55 (Taster)

piet_pit

Hallo,
ich habe es immer so verstanden, dass ich bei Änderungen, die ich bei Homebridge vornehme, erst einmal den Service stoppe, z.B. mit dem Befehl..

pi@raspberrypi:~ $ sudo service homebridge stop

...dann die Änderungen vornehme und dann den Service erneut starte, z.B. mit...

pi@raspberrypi:~ $ sudo service homebridge start

Ich habe versucht, das Script aus "Homebridge_Start_und_Status_in_FHEM" anzupassen, durch die IP meines "FHEM-Rpi", das hat aber nicht richtig geklappt, insofern habe ich erst einmal davon Abstand genommen und das von mir ja gepostete Startscript verwendet.

Da das einwandfrei klappt, habe ich zur Zeit keine Abstürze mehr beim Service "Homebridge" und komme so gut klar.

VG
Pit



FHEM Latest Revision: 29615
Raspberry Pi 3, Rasbian-Stretch
FRITZ!Box 7690
HM-Mod-RPI-PCB, JeeLink
CUNO 1.47