Jetzt hatte ich schon länger den Raspberry Pi Zero W (RPi0W) rumliegen und wollte diesen gerne für Heimautomatisierung nutzen. Konkret ging es mir dabei im ersten Schritt um die Einbindung des Funkmoduls für Homematic (Infos hier), genaue Bezeichnung HM-MOD-RPI-PCB. Nachdem ich die paar notwendigen Lötarbeiten erledigt hatte hatte ich leider ziemliche Probleme, die Funktionsweise zu überprüfen. Zahlreiche Anleitungen im Internet beschrieben zwar die notwendigen Schritte zur Einbindung, bezogen sich aber alle auf größere Modelle wie den Raspberry Pi 3 etc.
Letztendlich bekam ich das Funkmodul nach zahlreichen Versuchen dann unter OpenHabian zum Laufen.Nach der Grundinstallation von Openhabian musste zunächst noch Homegear installiert werden.
Nachfolgend zur Information hier die Einstellungen, die bei mir funktioniert haben (ich habe mich auf die nicht auskommentierten Zeilen der jeweiligen Datei beschränkt):
/boot/config.txt # custom settings for HM-MOD-RPI-PCB enable_uart=1 dtparam=spi=on dtparam=i2c_arm=on dtoverlay=pi3-miniuart-b /boot/cmdline.txt dwc_otg.lpm_enable=0 console=tty1 root=PARTUUID=b9aabd67-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwai
Zusätzlich war dann noch die serielle Konsole zu deaktivieren:
systemctl disable serial-getty@ttyAMA0.service systemctl disable serial-getty@serial0.service systemctl disable serial-getty@ttyS0.service
Nachdem durch die Installation von Homegear auch die Datei homematicbidcos.config existieren sollte, hier noch die für das Funkmodul relevante Sektion:
####################################### ########### HM-MOD-RPI-PCB ########### ####################################### ## The device family this interface is for [HomeMatic Wireless Module for Raspberry Pi] ## Specify an unique id here to identify this device in Homegear id = My-HM-MOD-RPI-PCB ## 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 deviceType = hm-mod-rpi-pcb device = /dev/ttyAMA0 ## Default: responseDelay = 95 ## Should be "95" for CUL or COC, "100" for TI CC1101 and "60" for HM-CFG-LAN or HM-LGW responseDelay = 95 ## Default: gpio1 = 0 ## "18" for HM-MOD-RPI-PCB gpio1 = 18
Sehr wichtig ist hierbei, dass auch das Kommentarzeichen bei der ersten rot markierten Zeile entfernt wird. Das mag jetzt vielleicht für die meisten nichts Neues sein, mich hat es jedoch eine ganze Menge Zeit gekostet 🙂
Sofern das ganze dann richtig zusammengelötet wurde, sollte dann nach einem Reboot im Logfile /var/log/homegear/homegear.log zu sehen sein, wenn das Funkmodul korrekt geladen wurde:
01/18/18 21:12:20.320 RPC Server (Port 2003): Info: RPC Server started listening on address :: and port 2003 01/18/18 21:12:20.355 Starting IPC server... 01/18/18 21:12:20.420 Start listening for packets... 01/18/18 21:12:22.422 Startup complete. Waiting for physical interfaces to connect. 01/18/18 21:12:22.423 All physical interfaces are connected now. 01/18/18 21:12:22.423 Starting UPnP server... 01/18/18 21:12:22.440 Info: UPnP server: Binding to address: 192.168.X.X 01/18/18 21:12:22.441 UPnP Server: Info: Started listening. 01/18/18 21:12:24.876 Module HomeMatic BidCoS: HM-MOD-RPI-PCB "My-HM-MOD-RPI-PCB": Info: Firmware version: 1.2.1 01/18/18 21:12:24.883 Module HomeMatic BidCoS: HM-MOD-RPI-PCB "My-HM-MOD-RPI-PCB": Info: Serial number: XXXXXXXXXXX 01/18/18 21:12:24.898 Module HomeMatic BidCoS: HM-MOD-RPI-PCB "My-HM-MOD-RPI-PCB": Info: Init queue completed. Sending peers... 01/18/18 21:12:25.073 Module HomeMatic BidCoS: HM-MOD-RPI-PCB "My-HM-MOD-RPI-PCB": Info: Peer sending completed.
Im nächsten Post beschreibe ich dann auch noch meinen letztendlich einigermaßen erfolgreichen Versuch, die Statusanzeige (HM-Dis-TD-T) von Homematic mit dem optischen Fensterkontakt (HM-Sec-SCo) vom selben Hersteller über den Raspberry Pi 0 W zu verbinden.