Homegear auf RasPi B mit Pollin-Funkmodul startet extrem langsam

Hallo zusammen,

ich als Homegear-Neuling habe Homegear auf einem RasPi Modell B (der “Ur-RasPi”) unter einem “frischen” Raspbian Wheezy via apt-get installiert.
Das Funkmodul funktioniert prinzipiell (d.h. ich kann BidCoS-Pakete senden und empfangen).

Jedoch startet Homegear so langsam, dass die load average auf >10 geht und die Einträge im log “Loading XML RPC device /etc/homegear/devices/0/…” sich über eine halbe Stunde (!) hinziehen. Währenddessen verliert der RasPi auch seine WLAN-Verbindung.
Auffällig ist, dass unter “top” neben “homegear” mit knapp 30% CPU load auch ein “kworker/0:2” mit 30% CPU load auftaucht.

Die Logs kann ich bei Bedarf zur Verfügung stellen.

Ist der RasPi zu langsam oder habe ich ein anderes Problem?

Außerdem ist mir aufgefallen, dass nach einem Neustart des RasPi das Pairing zu meinem (einzigen) Device (Unterputz-Schaltmodul, 2 Kanäle) verloren gegangen ist. Was kann ich tun, dass dies nicht mehr passiert?

Vielen Dank für die Beantwortung meiner Fragen im Voraus!

Viele Grüße,

-oli-

PS: Edit, da mit Modell A und B vertan.

Hallo Oli,

Da gibt es einen Bug in Homegear 0.5. Erst wenn du Homegear einmal manuell mit “service homegear stop” beendest, ist ein neu angelerntes Gerät sicher gespeichert. In 0.6 ist das Problem behoben.

Dein zweites Problem ist unnormal. Ehrlich gesagt habe ich keine Erklärung für das Verhalten. Der Start dauert aber vieeeel zu lange. Hast du es mal mit einer anderen SD-Karte oder auf einem anderen Raspberry Pi probiert?

Viele Grüße

Sathya

Hi Oli,

ich glaube du hast das gleiche Problem wie ich, welches ich bereits auf GitHub beschrieben habe:

github.com/Homegear/Homegear/issues/232

Leider habe ich noch keine Lösung gefunden. Auch die aktuelle Version 0.6.0-1015 hat keine Besserung gebracht.

Viele Grüße,
dstolpmann

Ja, sieht wohl ganz danach aus.
Das Problem dürfte allerdings sein, dass selbst wenn Homegear das interrupt handling erst nach der Initialisierung des Funkchips vornimmt (falls es das nicht sowieso schon tut!), es ja nichts daran ändert, dass aus irgendwelchen Gründen immer noch das in github.com/Homegear/Homegear/is … -143573929 beschriebene Phänomen auftritt, nämlich dass das 135kHz-Signal nach der (abgeschlossenen) Initialisierung von Homegear bestehen bleibt. Ich konnte dies mit einem analogen Oszilloskop verifizieren.

Man sieht auch unter /proc/interrupts:

...
49:   57604159   ARMCTRL  49 Edge      20200000.gpio:bank0
...
412:   57604159  pinctrl-bcm2835  18 Edge      gpiolib
...

Der RasPi ist also definitiv so langsam, weil er versucht, die ganzen Interrupts abzuarbeiten.

Könnte es vielleicht daran liegen, dass sich eine Art Deadlock ergibt:
Es findet SPI-Kommunikation mit dem Funkchip statt. Irgendwann wird das Interrupthandling aktiviert. Eigentlich sollte über die SPI-Kommunikation auch des 135kHz-Signal deaktiviert werden.
Es liegt aber immer noch das 135kHz-Signal an, so dass ca. 135000 mal pro Sekunde (oder, falls während der Interruptbehandlung weitere Interrupts gesperrt sind, so oft wie möglich) der Interrupt-Handler (von Homegear) aufgerufen wird, der wiederum SPI-Kommunikation durchführt und die ursprüngliche Deaktivierung des 135kHz-Signals “unterbrochen” wird.
Dies ist nur eine Theorie, ich habe (noch) nicht in den Homegear-Code geguckt.

Ergänzung (27.10.2015):
Ich habe noch überprüft, was passiert, wenn GDO0 nicht mit dem GPIO verbunden ist:
Dann wird nach der Initialisierung des Funkchips beim Homegear-Start das 135kHz-Signal korrekt abgeschaltet.

Viele Grüße,

-oli-

Hey,

ja, ganz merkwürdiges Problem… Leider weiß ich pauschal keine Lösung. Hat die Änderung der Konfigurationsreihenfolge in Homegear eine Besserung gebracht? Das Setzen der Register sollte das 135-kHz-Signal deaktivieren, genau. In der aktuellen Version eben bereits vor dem Setzen des GPIOs als Eingang. Spätestens das sollte das Problem eigentlich lösen. Wenn das 135-kHz-Signal bestehen bleibt, stimmt etwas mit dem TI-Chip nicht, dann werden die Registereinstellungen nicht korrekt übernommen.

Viele Grüße

Sathya

Hallo,
danke für die Antwort.

Ich habe es mit dem letzten Quellcodestand (noch) nicht testen können, da ich fälschlicherweise das im Wiki verlinkte GitHub Repo (github.com/hfedcba/Homegear) verwendet habe, was jedoch nur den Stand Juni 2015 widerspiegelt. Diese gelang mir auch zu compilieren, zeigte aber (natürlich) noch das alte Verhalten.
Jetzt habe ich die modularisierte Variante von github.com/Homegear verwendet.
Hier musste ich die configure-Skripte neu erzeugen (aclocal && autoheader && automake --add-missing && autoconf), da “install-sh” nicht gefunden werden konnte. libhomegear-base habe ich jetzt compiliert und mit “make install” installiert bekommen.
Zum Compilieren von Homegear fehlt mir allerdings noch libphp7-homegear, was ich auch nicht mit apt-get installieren kann, da er (unter Wheezy) das Package nicht findet. Das Homegear-Apt-Repo habe ich schon hinzugefügt.
Hier weiß ich jetzt nicht mehr weiter. Es gibt ja auch kein libphp7-homegear im github.com/Homegear Repo, oder?!?

Viele Grüße,

-oli-

Alles Weitere zu meinen Versuchen, Homegear aus dem Repo auf dem RasPi zu compilieren hier!

Grüße,

-oli-

Ok, nachdem ich es nun geschafft habe, den Repo-Stand 9e73df0 zu compilieren, gibt es bezüglich der Initialisierungssequenz des Funkmoduls immer noch keine guten Nachrichten:
Das Funkmodul gibt weiterhin fast während der gesamten Homegear-Initialisierungsphase das 135kHz-Signal aus, was selbige immer noch über 30 Minuten andauern lässt.

Nun zu meinen Analysen:

11/15/15 20:30:29.041 Debug: Loading family modules
11/15/15 20:30:29.442 Info: Loading family module mod_homematicbidcos.so
11/15/15 20:30:45.882 Module HomeMatic BidCoS: Debug: Loading module...
11/15/15 20:30:55.094 Info: Backing up database...
11/15/15 20:31:36.516 Debug: Reading config for physical device family HomeMatic BidCoS
11/15/15 20:31:36.596 Debug: id of family HomeMatic BidCoS set to My-CC1101
11/15/15 20:31:36.669 Debug: default of family HomeMatic BidCoS set to 1
11/15/15 20:31:36.741 Debug: deviceType of family HomeMatic BidCoS set to cc1100
11/15/15 20:31:36.826 Debug: device of family HomeMatic BidCoS set to /dev/spidev0.0
11/15/15 20:31:36.890 Debug: responseDelay of family HomeMatic BidCoS set to 100
11/15/15 20:31:36.984 Debug: interruptPin of family HomeMatic BidCoS set to 0
11/15/15 20:31:37.070 Debug: GPIO1 of family HomeMatic BidCoS set to 18
11/15/15 20:31:37.170 Debug: GPIO2 of family HomeMatic BidCoS set to 15 
11/15/15 20:31:37.262 Debug: txPowerSetting of family HomeMatic BidCoS set to 194 
11/15/15 20:31:37.366 Module HomeMatic BidCoS: Debug: Creating physical device. Type defined in physicalinterfaces.conf is: cc1100
11/15/15 20:31:37.627 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: PATABLE will be set to 0xC2

Ab (ungefähr) hier wird der RasPi aufgrund der Interrupt-Last extrem langsam, und die WLAN-Verbindung bricht ab.
Ich habe debugLevel 6 eingestellt, so dass ich SPI-Kommunikation mit dem Funkmodul geloggt bekomme.
Jetzt werden erst einmal die ganzen XML-Beschreibungsdateien eingelesen (rf_*.xml aus /etc/homegear/devices/0).
Dann (man beachte den Zeitstempel!) geht es weiter mit:

11/15/15 21:04:03.012 Loading devices...
11/15/15 21:04:03.312 Module HomeMatic BidCoS: Loading HomeMatic BidCoS device 1
11/15/15 21:04:04.375 Module HomeMatic BidCoS: Loading peer 1
11/15/15 21:04:14.955 Debug: Creating savepoint (asynchronous) PeerConfig1
11/15/15 21:04:15.559 Debug: Releasing savepoint (asynchronous) PeerConfig1
11/15/15 21:04:15.617 Debug: Creating savepoint (asynchronous) bidCoSPeerLinkConfig1
11/15/15 21:04:15.731 Debug: Releasing savepoint (asynchronous) bidCoSPeerLinkConfig1
11/15/15 21:04:15.795 Debug: Creating savepoint (asynchronous) bidCoSPeerLinkConfig1
11/15/15 21:04:15.895 Debug: Releasing savepoint (asynchronous) bidCoSPeerLinkConfig1
11/15/15 21:04:15.984 Debug: Creating savepoint (asynchronous) bidCoSPeerLinkConfig1
11/15/15 21:04:16.086 Debug: Releasing savepoint (asynchronous) bidCoSPeerLinkConfig1
11/15/15 21:04:16.165 Debug: Creating savepoint (asynchronous) bidCoSPeerLinkConfig1
11/15/15 21:04:16.342 Debug: Releasing savepoint (asynchronous) bidCoSPeerLinkConfig1
11/15/15 21:04:16.954 Module HomeMatic BidCoS: Loading HomeMatic BidCoS device 2
11/15/15 21:04:18.932 Start listening for packets...

Und erst jetzt sehe ich das erste mal SPI-Kommunikation:

11/15/15 21:04:19.128 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 30
11/15/15 21:04:19.207 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F
11/15/15 21:04:19.278 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 005B
11/15/15 21:04:19.357 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.420 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8000
11/15/15 21:04:19.507 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 005B
11/15/15 21:04:19.593 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 012E
11/15/15 21:04:19.658 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.719 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8100
11/15/15 21:04:19.788 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 002E
11/15/15 21:04:19.872 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 0246
11/15/15 21:04:19.921 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.922 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8200
11/15/15 21:04:19.922 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0046
11/15/15 21:04:19.922 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 0307
11/15/15 21:04:19.923 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.923 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8300
11/15/15 21:04:19.930 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0007
11/15/15 21:04:19.941 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 04E9
11/15/15 21:04:19.942 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.942 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8400
11/15/15 21:04:19.942 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 00E9
11/15/15 21:04:19.943 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 05CA
11/15/15 21:04:19.943 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.943 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8500
11/15/15 21:04:19.944 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 00CA
11/15/15 21:04:19.944 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 06FF
11/15/15 21:04:19.945 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.945 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8600
11/15/15 21:04:19.945 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 00FF
11/15/15 21:04:19.946 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 070C
11/15/15 21:04:19.946 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.946 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8700
11/15/15 21:04:19.947 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 000C
11/15/15 21:04:19.947 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 0845
11/15/15 21:04:19.948 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.948 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8800
11/15/15 21:04:19.949 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0045
11/15/15 21:04:19.949 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 0900
11/15/15 21:04:19.971 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.971 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8900
11/15/15 21:04:19.972 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0000
11/15/15 21:04:19.972 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 0A00
11/15/15 21:04:19.972 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.973 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8A00
11/15/15 21:04:19.973 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0000
11/15/15 21:04:19.974 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 0B06
11/15/15 21:04:19.974 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.974 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8B00
11/15/15 21:04:19.975 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0006
11/15/15 21:04:19.975 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 0C00
11/15/15 21:04:19.976 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.976 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8C00
11/15/15 21:04:19.976 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0000
11/15/15 21:04:19.977 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 0D21
11/15/15 21:04:19.977 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.978 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8D00
11/15/15 21:04:19.978 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0021
11/15/15 21:04:19.978 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 0E65
11/15/15 21:04:19.979 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.979 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8E00
11/15/15 21:04:19.980 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0065
11/15/15 21:04:19.980 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 0F6A
11/15/15 21:04:19.981 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.981 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 8F00
11/15/15 21:04:19.991 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 006A
11/15/15 21:04:19.991 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 10C8
11/15/15 21:04:19.992 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.992 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9000
11/15/15 21:04:19.993 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 00C8
11/15/15 21:04:19.993 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1193
11/15/15 21:04:19.993 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.994 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9100
11/15/15 21:04:19.994 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0093
11/15/15 21:04:19.994 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1203
11/15/15 21:04:19.995 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.995 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9200
11/15/15 21:04:19.996 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0003
11/15/15 21:04:19.996 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1322
11/15/15 21:04:19.996 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.997 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9300
11/15/15 21:04:19.997 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0022
11/15/15 21:04:19.998 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 14F8
11/15/15 21:04:19.998 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:19.999 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9400
11/15/15 21:04:19.999 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 00F8
11/15/15 21:04:20.000 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1534
11/15/15 21:04:20.000 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.001 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9500
11/15/15 21:04:20.011 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0034
11/15/15 21:04:20.011 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1607
11/15/15 21:04:20.012 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.012 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9600
11/15/15 21:04:20.013 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0007
11/15/15 21:04:20.013 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1730
11/15/15 21:04:20.013 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.014 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9700
11/15/15 21:04:20.014 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0030
11/15/15 21:04:20.015 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1818
11/15/15 21:04:20.015 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.015 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9800
11/15/15 21:04:20.016 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0018
11/15/15 21:04:20.016 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1916
11/15/15 21:04:20.017 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.017 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9900
11/15/15 21:04:20.017 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0016
11/15/15 21:04:20.018 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1A6C
11/15/15 21:04:20.018 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.018 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9A00
11/15/15 21:04:20.019 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 006C
11/15/15 21:04:20.019 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1B03
11/15/15 21:04:20.020 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.020 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9B00
11/15/15 21:04:20.021 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0003
11/15/15 21:04:20.021 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1C40
11/15/15 21:04:20.031 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.031 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9C00
11/15/15 21:04:20.032 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0040
11/15/15 21:04:20.032 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1D91
11/15/15 21:04:20.033 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.033 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9D00
11/15/15 21:04:20.033 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0091
11/15/15 21:04:20.034 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1E87
11/15/15 21:04:20.034 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.034 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9E00
11/15/15 21:04:20.035 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0087
11/15/15 21:04:20.035 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 1F6B
11/15/15 21:04:20.036 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.036 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 9F00
11/15/15 21:04:20.037 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 006B
11/15/15 21:04:20.037 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 20F8
11/15/15 21:04:20.037 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.038 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: A000
11/15/15 21:04:20.038 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 00F8
11/15/15 21:04:20.038 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 2156
11/15/15 21:04:20.039 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.039 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: A100
11/15/15 21:04:20.040 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0056
11/15/15 21:04:20.040 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 2210
11/15/15 21:04:20.051 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.051 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: A200
11/15/15 21:04:20.052 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0010
11/15/15 21:04:20.052 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 23E9
11/15/15 21:04:20.052 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.053 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: A300
11/15/15 21:04:20.053 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 00E9
11/15/15 21:04:20.054 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 242A
11/15/15 21:04:20.054 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.054 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: A400
11/15/15 21:04:20.055 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 002A
11/15/15 21:04:20.055 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 2500
11/15/15 21:04:20.056 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.056 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: A500
11/15/15 21:04:20.056 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0000
11/15/15 21:04:20.057 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 261F
11/15/15 21:04:20.057 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.058 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: A600
11/15/15 21:04:20.058 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 001F
11/15/15 21:04:20.058 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 2741
11/15/15 21:04:20.059 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.059 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: A700
11/15/15 21:04:20.059 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0041
11/15/15 21:04:20.060 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 2800
11/15/15 21:04:20.060 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.061 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: A800
11/15/15 21:04:20.071 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0000
11/15/15 21:04:20.071 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 2959
11/15/15 21:04:20.072 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.072 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: A900
11/15/15 21:04:20.072 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0059
11/15/15 21:04:20.073 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 2C81
11/15/15 21:04:20.073 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.074 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: AC00
11/15/15 21:04:20.074 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0081
11/15/15 21:04:20.074 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 2D35
11/15/15 21:04:20.075 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.075 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: AD00
11/15/15 21:04:20.076 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0035
11/15/15 21:04:20.076 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 3EC2
11/15/15 21:04:20.076 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F0F
11/15/15 21:04:20.077 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: BE00
11/15/15 21:04:20.077 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 00C2
11/15/15 21:04:20.078 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 3A
11/15/15 21:04:20.078 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F
11/15/15 21:04:20.078 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 3A
11/15/15 21:04:20.079 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F
11/15/15 21:04:20.079 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Sending: 34
11/15/15 21:04:20.080 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: Received: 0F
11/15/15 21:04:20.081 Debug: GPIO path for GPIO with index 1 and device cc1100 set to "/sys/class/gpio/gpio18".
11/15/15 21:04:20.082 Debug: GPIO path for GPIO with index 2 and device cc1100 set to "/sys/class/gpio/gpio15".
11/15/15 21:04:20.083 Debug: GPIO 15 set to 1.

Und erst jetzt ist das 135kHz-Signal an GDO0 weg und der RasPi wieder benutzbar.
Es scheint also in irgend einem anderen Teil des Codes bereits lange vor der Initialisierung des Funkchips der GPIO (bei mir 18) auf Interruptbetrieb umgestellt zu werden…
Könntest Du da evtl. nochmal gucken?
Danke!

VIele Grüße,

-oli-

Hey Oli,

du hast Recht! Das war doof… Jetzt wird der GPIO erst nach der Chipinitialisierung als Eingang geschaltet. Der Commit kommt aber erst morgen, da meine Dev-Version gerade nicht kompilierbar ist.

Viele Grüße

Sathya

Hallo Sathya,

ich habe jetzt den Stand
libhomegear-base 1e1a6823bf8cb819052460952fc28ff208ee5d55
Homegear a0034972e290d184ae5b72830b194de1a8c093f0
Homegear-HomeMaticBidCoS 074539cab332b19fec77d833ff4921307fb53912

compiliert.

Segfaultet leider beim Start:

/etc/init.d/homegear: line 51: 31308 Segmentation fault      $DAEMON -c $CONFIGPATH -s $RUNASUSER $RUNASGROUP
Starting Homegear: homegear11/20/15 22:32:22.919 Loading RPC server settings from /etc/homegear/rpcservers.conf
11/20/15 22:32:22.930 Loading RPC client settings from /etc/homegear/rpcclients.conf
11/20/15 22:32:22.938 Debug: hostname of RPC client ExampleClient set to myhostname
11/20/15 22:32:22.939 Debug: caFile of RPC client ExampleClient set to /path/to/ca-certficate
11/20/15 22:32:22.940 Debug: verifyCertificate of RPC client ExampleClient set to 1
11/20/15 22:32:22.941 Debug: forceSSL of RPC client ExampleClient set to 1
11/20/15 22:32:22.942 Debug: authType of RPC client ExampleClient set to 1
11/20/15 22:32:22.943 Debug: userName of RPC client ExampleClient set to myuser
11/20/15 22:32:22.944 Debug: password of RPC client ExampleClient was set.
.

Im Log steht

11/20/15 22:35:17.224 Debug: Loading licensing modules
11/20/15 22:35:17.254 Debug: Loading family modules
11/20/15 22:35:17.267 Info: Loading family module mod_homematicbidcos.so
11/20/15 22:35:17.562 Module HomeMatic BidCoS: Debug: Loading module...
11/20/15 22:35:17.563 Module HomeMatic BidCoS: Debug: Creating physical device. Type defined in homematicbidcos.conf is: cc1100
11/20/15 22:35:17.564 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Debug: PATABLE will be set to 0x27
11/20/15 22:35:17.566 Info: Homegear is (now) running as user with id 108 and group with id 111.
11/20/15 22:35:17.936 Info: Backing up database...
11/20/15 22:35:19.265 Initializing database...
11/20/15 22:35:19.278 Initializing licensing controller...
11/20/15 22:35:19.278 Loading licensing controller data...
11/20/15 22:35:19.279 Initializing family controller...
11/20/15 22:35:19.279 Warning: File physicalinterfaces.conf exists in config directory. Interface configuration has been moved to /etc/homegear/families/
11/20/15 22:35:19.280 Module HomeMatic BidCoS: Loading XML RPC devices...
11/20/15 22:35:29.664 Loading devices...
11/20/15 22:35:29.667 Module HomeMatic BidCoS: Loading HomeMatic BidCoS device 1

Die homematicbidcos.conf habe ich schon angepasst und nach /etc/homegear/families/ gelegt.
Das Skript /etc/init.d/homegear ist das, das mit apt-get kam.

Wie könnte man das jetzt debuggen? Nochmal mit Debug-Infos compilieren und im gdb laufen lassen, damit man einen Stacktrace bekommt? Oder geht das auch einfacher?

Grüße,

-oli-

Hallo Oli,

das Init-Skript funktioniert, ich würde es aber ersetzen, da das “homegear -s” zum Gerätesetup entfallen ist. Die Version, welche du kompiliert hast, läuft aktuell bei mir. Es bleibt nur Debuginfos mit compilieren und mit gdb starten. Dafür wäre ich dir auch sehr dankbar… Der Fehler wird in irgendeiner Art und Weise mit der Umstellung der Konfiguration zusammenhängen. Du kannst dir den von der Release-Version generierten Coredump auch mit gdb anschauen, nur ohne Debuginfos ist dieser vermutlich nicht wirklich aussagekräftig. Vielleicht sehe ich auch mit Debuglevel 6, was passiert, aber mit gdb ist die Analyse einfacher…

Viele Grüße

Sathya

Hallo Sathya,

sorry, dass ich mich gerade ein wenig blöd anstelle…

…aber ich habe jetzt in libhomegear-base

git reset --hard
git pull
make clean
./bootstrap
./configure
make
sudo make install

gemacht (müsste dann ja nach /usr/local/ installiert werden).
In Homegear und Homegear-HomaticBidCoS

git reset --hard
git pull
make clean
./bootstrap
./configure
make

Dann kopiere ich die mod_homematicbidcos.so nach /var/lib/homegear/modules/.
/usr/bin/homegear ist ein Symlink auf ~/develop/Homegear/src/homegear.

Jetzt starte ich mit “sudo service homegear start” und bekomme:

11/23/15 21:53:34.370 Base library has wrong version. Expected version 0.6.0-1041 but got version 0.6.0-1053

In /var/log/homegear/homegear.log steht noch nix.

Was mache ich falsch?

Viele Grüße,

-oli-

Ok, ich konkretisiere meine Frage noch ein wenig:

Woher kommt das

#define PACKAGE_VERSION "0.6.0-1041"
#define VERSION "0.6.0-1041"

in Homegear/config.h?

Leider ist bei mir in libhomegear-base/config.h nämlich

#define PACKAGE_VERSION "0.6.0-1053"
#define VERSION "0.6.0-1053"

…und das passt irgendwie nicht zusammen.

Grüße,

-oli-

Ok, hab’s doch rausgefunden:

libhomegear-base holt die Revisionsnummer über ein wget auf irgendwelche Metainformationen von Github (siehe getVersion.sh).
Homegear nimmt dann die von der gerade im System installierten libhomegear-base (siehe getVersion.sh dort) – aber nur, wenn man die “autotoolchain” mit -f bzw. --force aufruft, damit im configure-Skript die richtige Revisionsnummer landet.

Compiliere gerade wieder neu…

-oli-

Hi,

mit der Version 0.6.0-1054 funktioniert es jetzt bei mir.

Vielen Dank,
dstolpmann

Ja cool :smiley:!

Ich habe die Skripte “makeDebug.sh” und “makeRelease.sh” jetzt angepasst, damit andere Nutzer nicht dein Problem haben. Es reicht, das Verzeichnis “autom4te.cache” zu löschen.

Viele Grüße

Sathya