Raspberry 2B, Homegear und Pollin CC1101 Problem

Hallo zusammen,
mir ist bewusst das das Thema hier im Forum eigentlich ausreichend abgegrast wurde. Doch alle Tips hier haben mir leider nicht geholfen. Drum hier mein Problem.

Mein Raspberry ist ein Version 2 B an den ich ein Pollin CC1101 anschließen möchte.
Darauf läuft ein Standard Raspbian und Homegear aus dem Repository installiert.

Das CC1101 habe ich wie im Forum beschrieben angeschlossen:

Meine /etc/homegear/physicalinterfaces.conf:

[MAX]
id = My-MAX-CC1101
deviceType = cc1100
device = /dev/spidev0.0
responseDelay = 45
# "0", falls GDO0 an den GPIO des Rasberry Pi angeschlossen ist oder "2" für GDO2
# Nur einer der GDOs wird benötigt, egal welcher
interruptPin = 0
# GPIO-Pin auf dem Raspberry Pi, an den der GDO des Moduls angeschlossen ist.
gpio1 = 25

Beide SPI Devices sind ebenfalls sichbar.

Sobald ich das Modul anstecke und den service homgear starte, hängt sich die Konsole auf. Ins log wird nichts geschrieben.
Ich sehe noch folgendes an der Konsole, dann ist keine Eingabe mehr möglich.

10/27/15 10:40:24.998 Info: Loading family module mod_homematicwired.so
10/27/15 10:40:25.015 Info: Loading family module mod_insteon.so
10/27/15 10:40:25.033 Info: Loading family module mod_max.so
10/27/15 10:40:25.051 Info: Loading family module mod_miscellaneous.so
10/27/15 10:40:25.063 Info: Loading family module mod_philipshue.so
10/27/15 10:40:25.078 Info: Loading family module mod_homematicbidcos.so
10/27/15 10:40:25.110 Info: Disposing family module mod_philipshue.so
10/27/15 10:40:25.110 Info: Disposing family module mod_miscellaneous.so
10/27/15 10:40:25.111 Info: Disposing family module mod_max.so
10/27/15 10:40:25.112 Info: Disposing family module mod_insteon.so
10/27/15 10:40:25.112 Info: Disposing family module mod_homematicwired.so
10/27/15 10:40:25.113 Info: Disposing family module mod_homematicbidcos.so
10/27/15 10:40:25.114 Info: Waiting for event threads to finish.
Starting Homegear: homegear10/27/15 10:40:25.163 Loading RPC server settings from /etc/homegear/rpcservers.conf
10/27/15 10:40:25.164 Loading RPC client settings from /etc/homegear/rpcclients.conf
10/27/15 10:40:25.166 Info: Waiting for event threads to finish.
[ 0 ] Starting Homegear: homegear.
root@raspberrypi:/#

Zuerst dachte ich dass das Modul defekt sei und habe noch eines geordert. Doch dieses zeigt das gleiche Verhalten.
Könnte es an der SPI Komunikation liegen?
Hat jemand noch eine Idee an was es liegen könnte?

Besten Dank im Voraus
Thomas

Hallo zusammen,

nach einiger Suche habe ich nun einen Workaround für mein Pollin Modul gefunden, der funktioniert.
Wie schon im Forum herausgefunden wurde, ist der Pin GD0 des CC1101 im uninitialisierten Zustand ein Taktausgang. Das führt dazu, dass der GPIO den Takt als Interruptauslösung interpretiert und das System in der Interruptroutine quasi stecken bleibt.
Siehe: viewtopic.php?f=20&t=345&p=2347&hilit=interrupt#p2347

Als Lösung fallen mir zwei Wege ein.

  1. per Software
    Den Interrupt des GPIO erst nach der Initialisieren des CC1101 aktivieren.
    -> Liegt leider nicht in meiner Macht.

  2. per Hardware
    Anstelle des GD0 den GD2 benutzen. Leider ist dieser beim Pollin Modul nicht herausgeführt.
    -> Löten kann ich.

Hier meine Lösung:
Zuerst muss die Verbindung zum GD0 getrennt werden.

Am leichtesten geht das mit einem kleinen Bohrer. Das Via vorsichtig anbohren. Wer keinen 0,6mm Bohrer hat kann auch vorsichtig mit einem größeren Bohrer das Via nur anbohren bis die Verbindung zur Leiterbahn unterbrochen ist.

Dann einen Fädeldraht am Pin GD2 löten und zum Pad verbinden.

Nicht vergessen in der physicalinterfaces.conf den interruptPin = 2 einzustellen.

Gruß / Zennix

Hi Zennix,

vielen Dank für deinen Beitrag. Freut mich, dass es bei dir funktioniert und dass wir jetzt einen Workaround für das Problem haben. Ich hoffe aber, dass wir noch eine Software Lösung finden.

Viele Grüße,
dstolpmann

Hallo Zennix,

in Software sollte es jetzt eigentlich auch gelöst sein (in der aktuellen 0.6): Erst werden die Register gesetzt, dann der GPIO als Eingang geschaltet :slight_smile:. Da würde ich mich über eine Rückmeldung freuen.

Viele Grüße

Sathya

Hallo Sathya,

habs probiert und mein zweites Modul wieder auf den alten Stand umgebaut. Zusätzlich habe ich auf 0.6.0-1027 upgedatet Raspbian Jessie.
Phsicyl…conf hab ich auf GD0 (interruptPin = 0) angepasst.
Leider hatte ich wieder den Effekt, dass der Pi “stehen geblieben” ist.
Danach habe ich das Modul wieder auf GD2 umgelötet um einen Hardware Defekt auszuschließen. Das hat sofort funktioniert.

Sorry, hat nicht funktioniert.

Grüße / Zennix

Hallo Zennix,

also Fazit: Möglichst Module verwenden, welche auch GDO2 rausführen… Ärgerlich, dass das Pollin-Modul das nicht tut. Vor der Initialisierung des Moduls können wir leider nicht viel tun…

Danke für deine Versuche und die Lösung!

Viele Grüße

Sathya

Hallo Sathya & Zennix,

Danke für die exzellenten Tipps!

Ich habe gestern auch endlich das Pollin-Modul in Betrieb genommen und es schlussendlich auf GD2 umgelötet. Hierbei ist mir aufgefallen, dass das System bei der Nutzung des GD0 nach ca. 11 Minuten beginnt mit dem RF-Modul zu kommunizieren.
Ich denke, dass es so lange dauert, bis die IRQs abgearbeitet sind. Kann man da eventuell ansetzen und diese Queue bei der Inititalisierung löschen?

Viele Grüße
Martin

[quote=“Zennix”]
2. per Hardware
Anstelle des GD0 den GD2 benutzen. Leider ist dieser beim Pollin Modul nicht herausgeführt.
-> Löten kann ich.

Hier meine Lösung:
Zuerst muss die Verbindung zum GD0 getrennt werden.
cc1101_1.jpg
Am leichtesten geht das mit einem kleinen Bohrer. Das Via vorsichtig anbohren. Wer keinen 0,6mm Bohrer hat kann auch vorsichtig mit einem größeren Bohrer das Via nur anbohren bis die Verbindung zur Leiterbahn unterbrochen ist.
cc1101_2.jpg
Dann einen Fädeldraht am Pin GD2 löten und zum Pad verbinden.
cc1101_3.jpg
Nicht vergessen in der physicalinterfaces.conf den interruptPin = 2 einzustellen.
Gruß / Zennix[/quote]

Dann hast Du aber eine seeehr ruhige Hand - die Fotos täuschen gewaltig, ohne Stereomikroskop würde ich mir das nicht zutrauen. Hut ab.
Ich hab 2 von diesen Modulen, eins ist unmodifiziert in Betrieb, interessanterweise kann ich die geschilderten Probleme hier auf meinem Bananapi überhaupt nicht nachvollziehen. Offenbar gibts unterschiedliche Konstellationen.

Inzwischen sollten die Probleme in der aktuellen 0.6er-Version eigentlich gelöst sein. Oder hat noch irgendjemand mit der aktuellen Version geschilderte Probleme?

@Nitram: Hast du eine aktuelle Version installiert. Ich bin mir nicht mehr ganz sicher, ab welcher Version es funktionieren sollte.

Hallo Sathya,

ich hatte eine Version aus dem Raspbian jessie Image drauf. ich kann gerne nochmal den GD0 auf einen anderen IO-Pin legen, dann kann ich das auch mit Nightlys testen.

Viele Grüße
Martin

Hallo Martin,

dann ist es klar, dass es nicht geklappt hat. Im Image war bis vor ein paar Tagen noch Version 0.5 von Homegear. Wenn du mal Zeit zum Testen hast, wäre ein Versuch klasse. Dann hätte ich eine Rückmeldung, dass es wirklich funktioniert - ich gehe aber davon aus.

Viele Grüße

Sathya

Hallo Sathya,

nachdem das Modul in der V1194 wieder sauber läuft :smiley: , habe ich beim Pollin Modul sowohl GD0 als auch GD2 angeschlossen.
Momentan ist das Modul an einem Raspi B+ mit GD2 an GPIO25 und GD0 an GPIO24 angeschlossen.

Ich freue mich Dir mitteilen zu können, dass beide Varianten tadellos funktionieren! :exclamation:

Ich stehe Dir auch für weitere/spätere Tests gerne zur Verfügung.

Viele Grüße
Martin