Setup Raspberry Pi für Busware COC

Die "CC1101-OneWire-Clock extension for Raspberry Pi (COC)" der Firma Busware nutzt den beliebten und günstigen "Raspberry Pi" als zusätzliche Hardware- und Software Basis für die Implementation Ihrer bekannte Empfängerbausteine. Dieses Zusatzmodul für den Extensionsport hat die gleiche Hardware wie der bekannte CUNO, allerdings keinen eigenen Netzwerk-Anschluss. Die Verbindung erfolgt über eine serielle Schnittstelle auf den seriellen Port des Raspberry . Dieser seriellen Port wird mittels SER2NET auf den auch vom CUNO genutzten TCP-Port 2323 umgeleitet, so das die Extension mit der Firmware CULFW quasi als "CUNO auf dem Raspberry" genutzt werden kann. Zusätzlich gibt auch die Möglichkeit, eine externe Stromversorgung und zusätzliche 1Wire Bausteine anzuschliessen.

COC
Raspberry mit eingebautem COC

Installation

Ich habe den COC mit der Standard-Antenne und dem optionalen Gehäuse bei Busware gekauft. Dieses Gehäuse ist ein Standard TekBerry Gehäuse, in welches Busware die benötigten zusätzlichen Öffnungen gefräst hat. Wer das ordentlich selber machen kann (ich nicht), kann es auch woanders günstiger kaufen. Als Stromversorgung kann ein Netzteil mit Micro USB-Anschluss oder ein externes Netzteil mit 3,5mm Stecker (>1,5cm Länge, sonst passt er nicht durch das Gehäuse) mit mind. 1,2A Belastbarkeit verwendet werden.

Zunächst ist die Hardware gemäß der bereitgestellen Installationsanleitung zusammen zu bauen. Auf den aktuell(2014) ausgelieferten COC ist der Spalt für den herausstehenden Connector auf dem Pi gross genug. Die Kappe auf dem Connector muss allerdings wie beschrieben ausgeklingt werden. Ist sollte darauf geachtet werden, die Extension wirklich bis zum "Klick" auf den Expansionsport zu drücken.

Jetzt kann wie üblich der Raspberry mit dem Betriebssystem "Rasbian" installiert werden. Der Grafische Desktop ist für den Betrieb nicht notwendig.

Zusätzliche Konfiguration

Alle nachfolgenden Schritte werden als user root im Verzeichnis /root ausgeführt.

Damit sollte die Software Konfiguration abgeschlossen sein.

1Wire Sensoren

Das COC-Modul besitzt einen RJ11-Anschluss für 5V-1Wire Geräte. Die CULFW-Firmwäre unterstützt DS18[BS]20-Temperatursensoren direkt und gibt die Temperatur im Format der HMS-T Sensoren in einem einstellbaren Intervall aus. Alle anderen Sensoren müssen direkt angesprochen(gepollt) werden.
Leider entspricht die Pinbelegung der RJ11-Buchse keinerlei existierenden Standards, so dass ein eigener Anschluss notwendig ist. Ich habe dazu ein Stück einer einfachen Streifenleiter-Platine verwendet und darauf einen DS18B20 direkt und zusätzlich noch einen Anschluss für einen DS18B20 Rohrsensor dazugelötet, der dann am Vorlauf des Heizungsrohres angebracht wurde.

Nun sollte geprüft werden, ob die angeschlossenen 1wire Geräte erkannt werden. Dazu verbinden wir uns mit Telnet auf den von ser2net bereitgestellten Port. Wie beim CUN ist auch hier nur eine gleichzeitige Verbindung möglich.
(Entgegen der Aufforderung zum Beenden der telnet session CTRL-+ bei einem deutschen Keyboard nutzen.)

telnet localhost 2323
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Of<Enter> #wird nicht angezeigt
R:580008029007E810
R:8F000005550D5128
D: 2

telnet> quit
Connection closed.
Bei DS18B20 Sensoren finden sich diese IDs später auch in IPSymcon als WSDEV Device Instancen des CUL Moduls als HMS-T Sensoren wieder. Die Angaben für Batterie und Signal sind nicht echt und statisch.
1Wire

Behandeln von COC Ausgabefehlern

Bei längerem Betrieb scheint der COC(bei mir V1.57) Probleme mit der Ausgabe zu bekommen, das heisst: bei einem Datensatz fehlt das erste und/oder andere Zeichen. Damit können die nachfolgenden Scripte keine Daten mehr erkennen und es werden unsinnige Instancen angelegt. Nach einem Reset des COC (s.o) , spätestens jedoch nach einem Reboot des Rasbpi ist jedoch alles wieder OK. Aus diesem Grund füre ich das reset_coc Script einmal täglich als Cronjob in cron.daily aus.


IPSymcon Index
Disclaimer

© 2014+ Thomas Dreßler
Alle Rechte vorbehalten
letzte Änderung 04.01.2022