Kann nicht sein: Device not supported: HM-LC-Sw4-WM

Das 4-fach Relaismodul (wirklich ein standard 08/15 Teil) lässt sich nicht pairen mit der Meldung:

==> /var/log/homegear/homegear.log <== 10/11/15 13:27:47.118 HomeMatic BidCoS packet received (HM-GW1, RSSI: 0x11): 1A0F8400318A380000001C00664C45513038373634353010040100 10/11/15 13:28:47.555 Module HomeMatic BidCoS: Warning: Device type not supported: 0x0066, firmware version: 0x1C. Sender address 0x....

Homegear 0.6 nightly von 2015-10-11 (heute)

Laut Device List im Wiki ist das Device aber supported.

Was läuft hier falsch?

Hm auch der Fensterkontakt lässt sich nicht pairen.

Warning: Device type not supported: 0x00C7 …

Da scheint bei der Installation etwas fehl geschlagen zu sein?

Ich habe folgende Pakete auf einem Debian 8 installiert:
homegear_current_debian_jessie_amd64.deb
homegear-homematicbidcos_current_debian_jessie_amd64.deb
homegear-homematicwired_current_debian_jessie_amd64.deb
homegear-insteon_current_debian_jessie_amd64.deb
homegear-max_current_debian_jessie_amd64.deb
homegear-philipshue_current_debian_jessie_amd64.deb
homegear-sonos_current_debian_jessie_amd64.deb
libhomegear-base_current_debian_jessie_amd64.deb

In physicaldevices ist nur das HM LAN Gateway konfiguriert 1:1 wie im Wiki vorgegeben. Das wird auch erkennt.

Im Error Log gibt es beim Starten folgenden Eintrag:

==> /var/log/homegear/homegear.err <== 10/11/15 13:24:47.201 No xml files found in "/etc/homegear/devices/254". 10/11/15 13:24:47.202 Error: Could not initialize device family Miscellaneous.

Hallo andio,

ja, da läuft etwas falsch. Mit den aktuellen Builds hat sich sehr viel verändert, so dass vielleicht beim Update irgendetwas schiefgelaufen ist. In einer Debian-8-Blankoinstallation klappt es bei mir und der HM-LC-Sw4-WM wird erkannt. Sind bei dir vielleicht keine Dateien in /etc/homegear/devices/0? Oder fehlen dort Dateien? Hast du bei der Installation der neuen Homegear-Version die alten XML-Dateien überschrieben? Falls nein, mag da das Problem liegen. In diesem Build gibt es nämlich ein neues XML-Format. Gibt es die Datei “/etc/homegear/devices/0/rf_s_le_v2_3.xml”? Wie fängt die Datei an? Mit <homegearDevice…?

Viele Grüße

Sathya

Bei einer (frisch aufgesetzten) Debian 8 Installation des nightly builds passieren bei mir leider ein paar Dinge, die bestimmt so nicht sein sollen:

Ich hatte vorher via Repository die aktuelle stable 0.5.xx drauf, aber dann gleich durch die 0.6 ersetzen wollen. Ich habe dazu ein apt-get remove homegear gemacht, um die 0.5er zu entfernen. Es blieb aber viel liegen, ich habe dann noch in /etc und /var aufgeräumt.

Dann habe ich die .deb Pakete für Debian 8 amd64 gezogen und installiert. Danach bleiben aber zunächst die device xml Verzeichnisse leider alle leer (daher kam auch der o.g. Fehler). Ich musste die .deb Pakete mit dpkg -x entpacken und die xmls manuell an die richtige Stelle kopieren. Das Stoppen via Init-Script funktioniert ebenfalls nicht, auch mit kill bekommt man den Task nicht entfernt (nur mit -9). Daher muss ich für jeden restart momentan hart killen. Gerne kann ich weitere Infos liefern, falls das noch keine “known bugs” sind.

Andreas

Hallo Andreas,

das Problem mag mit dem “apt-get remove homegear” zusammenhängen. “remove” löscht keine Konfigurationsdaten. Der Befehl dafür wäre “dpkg --purge homegear” gewesen. dpkg merkt sich ziemlich viel :wink:. Ganz sicher bin ich mir allerdings nicht. Zumindest klappt die Installation auf einem Blanko-Testsystem einwandfrei. Ich werde die Tage (vielleicht gleich morgen) aber noch einmal das Update von 0.5 testen.

Sicher, dass “kill” ohne “-9” nicht klappt? Homegear braucht eine Weile, um herunterzufahren (ca. 30 Sekunden). Was sagt das Log, wenn du einfach “kill HOMEGEAR_PID” eingibst? So oder so mach einmal ein dpkg --purge aller Homegear-Pakete (vorher Daten sichern [/etc/homegear/*.conf und /var/lib/homegear/db.sql]!) und installier Homegear im Anschluss erneut. Klappt es jetzt? Du bist der zweite mit dem Phänomen, dass das init-Skript nach Update nicht funktioniert - merkwürdiges Problem.

Viele Grüße

Sathya

Gerade nochmal ausprobiert und ich muss mal laut nachdenken:

  1. Versuch: /etc/init.d/homegear stop

root@debian:/var/www# /etc/init.d/homegear stop
[ ok ] Stopping homegear (via systemctl): homegear.service.

Ergebnis: Prozess läuft immer noch. Im Log auch nicht erkennbar, dass der Prozess irgendein Signal empfangen hätte. Auch nicht Minuten später eine Reaktion, läuft halt einfach weiter.

root@debian:/var/www# ps -ef|grep homegear
homegear 24824 1 0 17:40 ? 00:00:58 /usr/bin/homegear -p /var/run/homegear/homegear.pid -d

  1. Versuch: kill 24824

Dazu erscheint im Log dann:

10/15/15 22:59:58.497 (Shutdown) => Stopping Homegear (Signal: 15)
10/15/15 22:59:58.497 (Shutdown) => Stopping CLI server
und etwa 10 Sekunden später dann:
10/15/15 23:00:06.550 (Shutdown) => Shutdown complete.

Das funktioniert also, dauert nur einen Moment.

Okay dann mal schauen warum das Initscript nicht will. Das ruft zum Beenden in Zeile 99 folgenden Command auf:

start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE

Das Pidfile ist auch da und hat auch die aktuelle pid:

ps -ef|grep homegear

homegear 26734 1 0 23:03 ? 00:00:02 /usr/bin/homegear -p /var/run/homegear/homegear.pid -d

cat /var/run/homegear/homegear.pid

26734

Passt. Ein manueller Aufruf funktioniert auch, der Shutdown wird durchgeführt:

start-stop-daemon --stop --quiet --oknodo --pidfile /var/run/homegear/homegear.pid

Prozess beendet.

Ich sehe zwischendurch bei den Start-/Stop-Versuchen auch noch sporadisch sowas:

10/15/15 23:20:51.181 Error in file main.cpp line 238 in function void terminate(int32_t): Resource deadlock avoided

Jetzt ist wieder die Situation, dass im Log zwar “Shutdown completed” steht aber der Prozess ist noch da. Und er lässt sich auch mit einem normalen Kill nicht mehr beenden. Jetzt hilft nur noch ein kill -9

Gibt es schon Veränderungen an dieser Stelle, dann probiere ich gerne nochmal ein aktuelles nightly wenn es hilft. Meine Version ist vom 10. Okt.

Hallo Andreas,

noch gibt es keine Veränderungen an der Stelle. Aktuell bin ich bis Sonntag nicht zu Hause. Aber sobald ich zurück bin, schaue ich mir das Problem an.

Viele Grüße

Sathya

Nachtrag: Magst du mir den Logausschnitt mit dem “Resource deadlock avoided” schicken? Dann kann ich eingrenzen, an welcher Stelle der Fehler auftritt :wink:.