CC1101 über homegear auf openHabian3 läuft nicht

Hallo zusammen,

ich habe eine veraltete Installation mit openHab 2 homegear und dem CC1101 am laufen. Es ist super! Jetzt wollte ich aus diversen Gründen auf openHab 3 auf einem neuen Raspi 4 gehen.

Ich nutze das offizielle openHabian installieren über openhabian-config den homegear dienst und nutze meine bisherige homematicbodcos für den CC1101. Allerdings scheinen sich Zugriffsrechte geändert zu haben bzw. irgendwas am GPIO handling weshlab homegear den GPIO25 nicht mehr als Interrupt für den CC1101 nutzen kann.

Ich bin bislang über das openHab Forum nicht weitergekommen und wende mich jetzt an euch hier.
Hat jemand ein vergleichbares Setup am laufen, kennt mein Problem und hat eine Lösung parat?

Vielen Dank
Florian

Hey,

hat das eventuell hiermit zu tun?

Hast du mal versucht ein normales Raspbian zu installieren. Du kannst danach openHABian-config immer noch installieren, nur ist openHABian-config dann etwas vorsichtiger mit den Restriktionen.

Wie ich mit dem CC1101 von openHABian auf Raspbian umgestiegen bin steht hier:

1 Like

@pmayer:
Danke für den Hinweis. Ja das klingt nach dem gleichen Problem.
Mit der “Anleitung” habe ich folgende Schwierigkeit. Dort steht, man soll “master” anstatt “stable” verwenden. Beim neuesten openhabian mit openHab 3 gibt es drei Optionen “stable”, “master” und “openhab 3”. Aktuell ist “openHab 3” ausgewählt. Wenn ich die Beschreibung richtig verstehe installieren “master” und “stable” aber noch openHab 2.5. Nur die Option “openHab 3” installiert den auch und genau den wollte ich eigentlich haben.

@job: über Raspbian anstatt über openhabian wollte ich eigentlich nicht gehen aber wenn mir keine bessere / direktere Lösung einfällt werde ich das wohl mal versuchen.

Ich hatte genau das gleiche Problem, habe es hier gepostet und mir selbst mit der Lösung geantwortet:

Tatsächlich funktionieren die Zugriffe auf die für diese Hardware-Adapter erforderlichen GPIOs nicht mehr.

Hier sind die Zeilen, die bei mir helfen:

openhabian@openHABianDevice:/ $ sudo su
[00:10:09] root@openHABianDevice:/# echo "25" > /sys/class/gpio/export
[00:10:31] root@openHABianDevice:/# echo "out" > /sys/class/gpio/gpio25/direction                                                                                                            [00:11:01] root@openHABianDevice:/# echo "0" > /sys/class/gpio/gpio25/value

[00:11:53] root@openHABianDevice:/sys/devices/platform/soc# chown homegear:homegear /sys/devices/platform/soc/fe200000.gpio/gpiochip0/gpio/gpio25/direction
[00:12:49] root@openHABianDevice:/sys/devices/platform/soc# chown homegear:homegear /sys/devices/platform/soc/fe200000.gpio/gpiochip0/gpio/gpio25/edge
[00:13:03] root@openHABianDevice:/sys/devices/platform/soc# chown homegear:homegear /sys/devices/platform/soc/fe200000.gpio/gpiochip0/gpio/gpio25/value
[00:13:10] root@openHABianDevice:/sys/devices/platform/soc# sudo systemctl restart homegear.service

Leider nach einem Neustart erneut einzugeben, da könnte mir ein Spezialist weiterhelfen!

1 Like

Hallo,
habe letzte Woche meinen Raspberry Pi 3 mit openHabian neu aufgesetzt und habe mich über das gleiche Problem mit meinem direkt an den GPIOs angeschlossenen CC1101 geärgert. Ich konnte das Problem mit einem einzigen Aufruf von echo "24" > /sys/class/gpio/export (habe Pin 24 und nicht 25 als Interrupt Pin benutzt, sollte aber egal sein) vor dem Start von homegear beheben, mit den Permissions scheint schon alles ok zu sein.

Habe hier mal alle Schritte aufgelistet, mit denen ich den CC1101 mit homegear und openHab 3 unter openHabian zum Laufen bekommen habe:

  1. homgear über sudo openhabian-config installieren. Danach noch unter 10 | Apply Improvements 14 | Fix Permissions ausführen.

  2. #dtparam=spi=on in /boot/config.txt auskommentieren

  3. Unter /etc/homegear/families/homematicbidcos.conf die Zeilen unter ########## TI CC1101 Module ########## folgendermaßen auskommentieren:

    ## The device family this interface is for
    [TI CC1101 Module]
    
    ## Specify an unique id here to identify this device in Homegear
    id = My-CC1101
    
    ## When default is set to "true" Homegear will assign this device
    ## to new peers.
    default = true
    
    ## Options: cul, cc1100, coc, cunx, hmcfglan, hmlgw, hm-mod-rpi-pcb, homegeargateway
    deviceType = cc1100
    
    device = /dev/spidev0.0
    
    ## Default: responseDelay = 95
    ## Should be "95" for CUL or COC, "100" for TI CC1101 and "60" for HM-CFG-LAN or HM-LGW
    responseDelay = 100
    
    ## The interrupt pin to use. "0" for GDO0 or "2" for GDO2.
    ## You only need to connect one of them. Specify the GPIO
    ## you connected the interrupt pin to below.
    interruptPin = 2
    
    ## The GPIO GDO0 or GDO2 is connected to. Specify which GDO to use above.
    gpio1 = 24
    

    Wer lieber GDO0 und Pin 25 benutzen will, sollte noch die Einträge entsprechend anpassen.

  4. Mit crontab -e die cron task list öffnen und die Zeile @reboot echo "24" > /sys/class/gpio/export hinzufügen (oder 25 statt 24). Speichern und das System mit sudo shutdown -h now herunterfahren.

  5. Stromverbindung unterbrechen. Falls noch nicht getan, die SPI Pins des CC1101 mit denen des RPis verbinden. Wie in homematicbidcos.conf gewählt den CC1011 Pin GDO2(GDO0) mit dem RPi GPIO Pin 24(25) verbinden.

  6. RPi mit Strom versogen.


Das kann man mit einem chrontab beim Hochfahren ausführen lassen. Also in der Konsole
crontab -e eingeben um deine cron task list anzuzeigen und die Zeile
@reboot echo "24" > /sys/class/gpio/export
einfügen um beim Hochfahren den GPIO Pin zu exportieren (bei dir dann 25 statt 24). Eigentlich ist glaube ich nicht zwingend garantiert, dass der cron task vor dem Start von homegear ausgeführt wird, aber bisher hat es bei mir so immer funktioniert.

2 Likes

Das sollte @sathya sich mal angucken umd die Kompatibilität zu openhabian wenn möglich wieder herzustellen.

Vielen Dank! Werde ich testen.