Selbstbau Signalduino

Click here for English version

Wie baue ich einen Signalduino?

  1. Arduino Nano und CC1101 kaufen
  2. Nano mit dem CC1101 verdrahten
  3. Arduino Nano an den PC anschließen
  4. Firmware flashen

Motivation

Ein Signalduino ist mit einiger Löterfahrung relativ einfach und günstig für wenige Euros zusammengebaut und bildet die Basis für das SmartHome. Mit dem Signalduino kann man die verschiedensten Automatisierungsgeräte ansteuern oder empfangen, wie z.b. Conrad Wetterstation KW9110, TCM Wetterstation (97001 und 21xxx Serie), ABS Wetterstation (ABS 700), Prologue Wetterstation, Rubicson Wetterstation, NC_WS Wetterstation, GT-WT-02 Wetterstation, AURIOL Wetterstation, Mebus Wetterstation, Intertechno Funkschalter, Oregon Scientific Wettersensoren, Bresser Temp/Hydro Sensor, Hama TS33C, TFA Temp/Hydro Sensor, Lacrosse TX2/TX3 Sensoren, TFA 30320902, Eurochron eas800z, Technoline WS6750/TX70DTH, FreeTec Außenmodul NC-7344, CTW600, CTW602, WH1080, Visivon remote pt4450, Einhell HS 434/6, Flamingo FA20RF / FA21RF / FA22RF Rauchmelder, mumbi m-FS300, TFA 30.3200, Livolo, Smartwares RM174RF/2 (RM174RF-001CPR) 4500177571, Smartwares SH5-TSO-A, X10 Security Devices, Somfy RTS .

Wer nicht Löten mag, kann Bauteile mit PINs und Female Jumper Kabel kaufen und die Schaltung zusammenstecken. Der CUL kann dann mit der entsprechenden Firmware geflasht werden und mit FHEM betrieben werden.

Versionen

Zunächst sollte man sich entscheiden, ob man 868 oder 433Mhz verwenden möchte. Das hängt insbesondere von den verwendeten Endgeräten ab. Intertechno verwendet 433Mhz, Homematic 868Mhz. Man kann zwar zwischen den Frequenzen hin und herschalten, aber die Reichweite ist nicht so gut in der fremden Frequenz. Der Cul kann kurzzeitig auch Frequenzen zum Senden umschalten, empfängt aber permanent nur auf einer Frequenz.

Materialliste

Bei dem Arduino mit einem Atmega328 Microcontroller ist darauf zu achten, daß er einen echten FTDI Chip hat um Ärger zu vermeiden und keinen CH340. Letzterer kann durch Treiber von FTDI beschädigt werden. Unter Linux könnte man einen CH340 betreiben, er besitzt jedoch keine eigene ID im Gegensatz zum FTDI. Der CC1101 sollte auch für die entsprechende Frequenz ausgelegt sein. Damit ergibt sich

Bauteil
Arduino Nano FT232RL mit USB Kabel (Amazon, Aliexpress)*
CC1101 868 oder 433 Mhz (Amazon, Aliexpress)*


Verdrahtung

Die Verdrahtung ist wie folgt vorzunehmen.

Arduino CC1101
VCC 3,3 V VDD
PIN GND GND
PIN D02 GDO2
PIN D03 GDO0
PIN D10 CSn (SS)
PIN D11 SI (MOSI)
PIN D12 SO (MISO)
PIN D13 SCK

Flashen der Firmware

Nun kann man unter Linux die Firmware auf den Arduino flashen. Das flashen der Firmware funktioniert über das FHEM Frontend. Nun kann der Arduino angesteckt werden. Mit dem Befehl

ls -l /dev/serial/by-id

kann man die ID des Arduinos erfragen. Die Antwort ist zum Beispiel

total 0
lrwxrwxrwx 1 root root 13 Nov 30 19:17 usb-FTDI_FT232R_USB_UART_12345678-if00-port0 -> ../../ttyUSB0

wobei 12345678 für die ID steht.

Dann updaten wir FHEM. Dazu geben wir in die Kommandozeile in FHEM update ein. Danach shutdown restart.

Jetzt können wir das Signalduino Modul aktualisieren. Dazu wieder in die FHEM Kommandozeile update all https://raw.githubusercontent.com/RFD-FHEM/RFFHEM/master/controls_signalduino.txt eingeben

Jetzt können wir den Signalduino in FHEM anlegen:  define sduino SIGNALduino /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_12345678-if00-port0@57600  wobei 12345678 für die ID steht.

Falls auf unserem Linux System noch kein avrdude installiert ist, können wir das mit sudo apt-get install avrdude nachholen.

Zunächst sagen wir FHEM was wir für ein Modell haben. Wir haben einen Arduino Nano mit CC1101. Also tragen wir in die FHEM Kommandozeile attr sduino hardware nanoCC1101 ein.

Ich möchte die stable Firmware, alternativ ginge aber auch die testing. Also trage ich attr sduino updateChannelFW stable ein. Und nun laden wir uns die Firmware runter. Dazu exekutieren wir get sduino availableFirmware.

Und nun sind wir soweit, der Signalduino kann geflasht werden set sduino flash nanoCC1101.

Fertig!

Ich bin von einem CUL 433 auf einen Signalduino umgestiegen. Das war ganz einfach. Man muss den CUL löschen und für sämtliche Geräte dann über  attr <Gerät> IODev sduino  angeben.

Damit kann man nun Funkrauchmelder koppeln, Funksteckdosen schalten oder einen Chatbot mit Telegram einrichten!

Pro Tipp: Stellt sicher, daß ihr den Optiboot Bootloader auf dem Board habt. Damit läuft Euer cul stick sehr stabil.

English Version

How do I build a signalduino?

  1. Buy a Arduino Nano and CC1101
  2. Wire Arduino Nano and CC1101
  3. Connect the Arduino Nano to the PC
  4. Flash the firmware

Idea

A signalduino is assembled with some soldering experience relatively simple and cheap for a few euros and forms the basis for the SmartHome. With the signalduino you can control or receive the most different automation devices, like e.g. onrad Wetterstation KW9110, TCM Wetterstation (97001 und 21xxx Serie), ABS Wetterstation (ABS 700), Prologue Wetterstation, Rubicson Wetterstation, NC_WS Wetterstation, GT-WT-02 Wetterstation, AURIOL Wetterstation, Mebus Wetterstation, Intertechno Funkschalter, Oregon Scientific Wettersensoren, Bresser Temp/Hydro Sensor, Hama TS33C, TFA Temp/Hydro Sensor, Lacrosse TX2/TX3 Sensoren, TFA 30320902, Eurochron eas800z, Technoline WS6750/TX70DTH, FreeTec Außenmodul NC-7344, CTW600, CTW602, WH1080, Visivon remote pt4450, Einhell HS 434/6, Flamingo FA20RF / FA21RF / FA22RF Rauchmelder, mumbi m-FS300, TFA 30.3200, Livolo, Smartwares RM174RF/2 (RM174RF-001CPR) 4500177571, Smartwares SH5-TSO-A, X10 Security Devices, Somfy RTS .

If you don’t like soldering, you can buy components with PINs and female jumper cables and plug the circuit together. The CUL can then be flashed with the appropriate firmware and operated with FHEM.

Versions

First you should decide if you want to use 868 or 433Mhz. That depends in particular on the end devices used. Intertechno uses 433Mhz, Homematic 868Mhz. You can switch between the frequencies, but the range is not so good in the foreign frequency. The Cul can also switch frequencies to transmit for a short time, but receives permanently only on one frequency.

Used Material

Part
Arduino Nano FT232RL with USB cable (Amazon, Aliexpress)*
CC1101 868 or 433 Mhz (Amazon, Aliexpress)*

Regarding the Arduino based on a Atmega328 Microcontroller you have to make sure that it has a real FTDI chip to avoid trouble and no CH340. The latter can be damaged by FTDI drivers. Under Linux you could run a CH340, but it doesn’t have its own ID in contrast to FTDI. The CC1101 should also be designed for the corresponding frequency. This results in

Wiring

The wiring is as following

Arduino CC1101
VCC 3,3 V VDD
PIN GND GND
PIN D02 GDO2
PIN D03 GDO0
PIN D10 CSn (SS)
PIN D11 SI (MOSI)
PIN D12 SO (MISO)
PIN D13 SCK

Firmware flashing

Now you can flash the firmware on the Arduino under Linux. For example you download the a-culfw firmware and unpack it. Now you can plug in the Arduino. With the command

ls -l /dev/serial/by-id

you can ask for the Arduino’s ID. The answer is for example

total 0
lrwxrwxrwx 1 root root 13 Nov 30 19:17 usb-FTDI_FT232R_USB_UART_12345678-if00-port0 -&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt; ../../ttyUSB0

with 12345678 as the ID.

Then we update FHEM. To do this, we enter update in the command line in FHEM. After that 12345678shutdown restart.

Now we can update the signalduino module. To do this, enter update all https://raw.githubusercontent.com/RFD-FHEM/RFFHEM/master/controls_signalduino.txt in the FHEM command line.

Now we can create the signalduino in FHEM: define sduino SIGNALduino /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_12345678-if00-port0@57600 where 12345678 is the ID.

If there is no avrdude installed on our Linux system yet, we can do that with sudo apt-get install avrdude.

First, we tell FHEM what model we have. We have an Arduino Nano with CC1101. So in the FHEM command line we enter attr sduino hardware nanoCC1101.

I would like to have the stable firmware, but alternatively I would like to have the testing firmware. So I enter attr sduino updateChannelFW stable. And now we download the firmware. For this we execute get sduino availableFirmware.

And now we are ready, the signalduino can be flashed set sduino flash nanoCC1101.

Done!

I switched from a CUL 433 to a signalduino. This was quite simple. You have to delete the CUL and then specify sduino for all devices via attr <device> IODev.

Now we can pair smoke detectors, switch on / off wireless socket outlets or create a Chatbot with Telegram!

Pro Tip: Make sure that your board uses the optiboot bootloader to ensure maximum stability.

*Affiliate links

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Nach oben ↑

%d Bloggern gefällt das: