DIY – CUL Arduino Stick für das Smart Home bauen

Der Busware CUL Stick kostet immerhin auch 69€. Was viele nicht wissen: Man kann den Stick auch einfach selbst bauen und flashen. Funktioniert genauso und kostet zusammen weniger als die Hälfte.

Was wird benötigt:

Raspberry Pi mit Raspbian (Installation siehe HIER)

Arduino Nano

CC1101 868Mhz Modul (darauf achten, dass wirklich ein 868Mhz Modul bestellt wird)

Kabel

Lötstation oder Steckbrett

Verkabelung des Sticks

Das CC1101 Funk Modul muss mit dem Arduino verbunden werden. Dazu folgendes Schaltbild:

CUL Stick Pins

CUL Stick Pins

Alles zusammen sieht dann etwa so aus (bei mir gelötet, auf dem Steckbrett natürlich etwas anders)

Arduino mit CC1101 Modul -> CUL-Stick

Arduino mit CC1101 Modul -> CUL-Stick

Programmierung am Raspberry Pi

Wir verbinden den fertigen CUL Stick mit dem Raspberry Pi und loggen uns via SSH ein. Als erstes finden wir die ID des Gerätes. Es ist einfacher, wenn der Stick für den Moment das einzige USB Gerät am Raspberry Pi ist. Per Kommando die USB-ID anzeigen:

ls /dev/serial/by-path

ausgegeben wird dann z.B.: platform-20980000.usb-usb-0:1.4:1.0-port0 . Merkt euch diese Information und wechselt dann zurück in euer Home Verzeichnis

cd /home/pi

Um den Stick zu flashen benötigen wir ein paar Programme, welche wir installieren:

sudo apt-get install make gcc-avr avrdude avr-libc git

Jetzt laden wir die aktuelle Version der Firmware und bearbeiten die config-header:

git clone --recursive https://github.com/smarthomeagentur/culfw1.git
cd culfw1/culfw/Devices/nanoCUL/
nano board.h

wir ändern die Zeile:

/* if you are using a CC1101 module for 868MHz disable the next line */
#define HAS_CC1100_433

in

/* if you are using a CC1101 module for 868MHz disable the next line */
//#define HAS_CC1100_433

und Speichern die Datei mit Strg+X,Y,Enter. 

Wenn keine weiteren USB Geräte angeschlossen sind, solltet ihr jetzt flashen können.

make
make program

Wenn alles gut geht, seht ihr am Ende etwa folgendes:

CUL Stick flashen erfolgreich

CUL Stick flashen erfolgreich

Jetzt den Arduino einmal vom USB trennen und wieder anstecken. Der CUL-Stick ist nun einsatzbereit. Glückwunsch!

CUL-Stick nicht an USB0

Sollte der Stick nicht als USB0 erkannt werden, müssen wir das Makefile bearbeiten

nano makefile

und die Zeile

AVRDUDE_PORT = /dev/ttyUSB0 -b 57600

ändern in (je nach ID, welche ihr oben erfahren habt).

AVRDUDE_PORT = /dev/serial/by-path/platform-20980000.usb-usb-0:1.4:1.0-port0 -b 57600