Mit dieser Low-Cost-Funk-Erweiterung „RaspyRFM-II“ für den Raspberry PI ist es möglich die Telegramme von vielen verschiedenen funkunterstützten Geräten (Funkthermometer, Energiekostenmessgerät, Handsender, Funksteckdosen) zu empfangen und zu senden. Das Aufsteckmodul besteht aus einem RFM69CW Funkmodul, welches direkt mit der SPI Schnittstelle des Raspberry PI verbunden ist. Mit einem Python-Modul kann man das Funkmodul sehr einfach in eigenen Projekten angesprochen werden, um die Daten z.B. an Smartmetering- (Volkszaehler.org oder openenergiemonitor.org) oder Hausbussysteme (FHEM) übergeben zu können.
Beispiele für funkunterstützte Geräte
- Funksteckdosen (z.B. FS20, Intertechno, Brennenstuhl, …)
- Funkthermometer (z.B. TX29-IT, TX35-IT, TX62-IT)
- Funkenergiekostenmessgeräte (z.B. EMT7110)
Eigenschaften
- Frequenzbereich 434 MHz oder 868 MHz
- Modulationsarten OOK und FSK
- SPI Schnittstelle, programmierbar in C, C++, Python…
- Sendeleistung 13 dBm max.
- SMA Antennenbuchse
- Programmierbeispiele in Python mitgeliefert
Neu: Doppelmodul
Nun ist auch ein Doppelmodul verfügbar, welches jeweils ein Modul für 434 MHz und 868 MHz enthält. Damit kann über die beiden SPI Kanäle des Raspberry PIs auf zwei unterschiedlichen Frequenzbändern gearbeitet werden. Auf Anfrage kann das Modul auch mit zwei 868 MHz Modulen bestückt werden, etwa um TX29 und TX35 Module gleichzeitig empfangen zu können.

Installation
Auf einer aktuellen Raspbian-Installation ist GPIO für Python bereits installiert. Weiterhin wird py-spidev benötigt:
sudo su apt-get install git-core python-dev apt-get install python-pip pip install spidev
Dann noch mit
sudo raspi-config
die SPI Schnittstelle aktivieren und den Raspberry PI neu starten.
Anschlussbelegung
Das RaspyRFM wird auf den Raspberry PI von Pin 17 – 26 gesteckt.
17 -> 3,3 V
18 (GPIO 24) -> DIO1 bei Einzelmodul, DIO0 Slave bei Doppelmodul
19 (MOSI) -> MOSI
20 -> GND
21 (MISO) ->MISO
22 (GPIO 25) -> DIO0
23 (SCK) -> SCK
24 (CE0) -> NSS Master
25 -> GND
26 (CE1) -> DIO2 bei Einzelmodul, NSS Slave bei Doppelmodul
*1 DIO1 über Jumper SJ1
*2 DIO2 über Jumper SJ2
Software
Es gibt eine in Python geschriebene Klasse, mit der das Modul sehr einfach parametriert werden kann (Frequenz, Baudrate, Bandbreite, Frequenzhub, Modulationsart, …). Hier ist ein Initialisierungsbeispiel:
from rfm69 import Rfm69 import rfm69 rfm = Rfm69() #rfm = Rfm69(1, 24) #für zweites Modul (868 MHz) beim Doppelmodul rfm.SetParams( Freq = 868.300, #MHz center frequency Datarate = 9.579, #kbit/s baudrate, 17.241 for some others ModulationType = rfm69.FSK, #modulation SyncPattern = [0x2d, 0xd4], #syncword Bandwidth = 200, #kHz bandwidth LnaGain = 0x80, Preamble = 2 #Preamblelength in bytes )
LaCrosse Funktemperatursensoren
Für die LaCross-Sensoren (TX29, TX35, etc.) gibt es außerdem eine Dekoderklasse welche die Daten aus dem Funktelegram gewinnt. Zu Funkthermometern gibt es einen eigenen Artikel. Der Code um alle in Reichweite befindlichen Sensoren anzuzeigen sieht so aus:
data[] while 1: data = rfm.ReceivePacket(7) obj = rawsensor.CreateSensor(data) print(str(obj))
Funksteckdosen
Über Funksteckdosen mit dem RaspyRFM gibt es einen eigenen Artikel.
Artikel zum RaspyRFM Funkmodul:
Wetterstation
Bei Wetter Scharnhausen gibt es ein interessantes Projekt bei dem die Daten der Wetterstation Davis Vantage Vue empfangen werden, und so Temperatur, Windrichtung- und geschwindigkeit, Feuchtigkeit und Regen misst. Im Quellcode von Wetter Scharnhausen muss nur der IRQ Pin von 16 auf 22 geändert werden.
Hallo,
Die App PowerSwitch auf Android hat die Möglichkeit RaspyRFM als Gateway einzustellen. Meine Frage, muss ich zum Ansteuern Nach Installation auf dem Rasberry noch zusätzlich irgendwas Programmieren? Denn Die Kodierung für die Steckdosen (z.B. Brennstuhl) Stelle ich ja in der App ein. Muss ich die zusätzlich noch im Raspberry einstellen?
Hallo,
auf dem Raspberry muss nur das connair Skript laufen, welches beim RaspyRFM dabei ist. Weitere Einstellungen zu den Steckdosen ist auf dem Raspberry nicht nötig, das wird alles In der PowerSwitch App gemacht.
Können Sie einen Funk-Türkontakt (Reed) mit Batterie empfehlen, mit dem das RaspyRFM zusammenarbeitet?
Gruß,
C. Meyer
Hallo Herr Seegel,
oben wird das Doppelmodul angekündigt. Haben Sie schon einen ungefähres Datum, wann das Modul verfügbar ist?
Viele Grüße
Julian Wagner
Hallo Herr Wagner,
das Doppelmodul wird in ca. 4 Wochen verfügbar sein.
Schöne Grüße
Stefan Seegel
Hallo Herr Seegel,
gibt es schon ein Beispiel wie damit Daten an das openenergiemonitor-Projekt (also an emoncms) übergeben werden können?
Beste Grüße,
Martin
Hallo Martin,
Beispielcode wie die empfangenen Messwerte zum emonscms übermittelt werden, werden mitgeliefert.
Hallo,
als Neuling auf diesem Gebiet bitte ich um die Beantwortung der folgende Frage:
Sie bieten das Modul mit 434 MHz an. Ist es trotzdem möglich, problemlos mit Sendern, die 433 Mhz verwenden, zu kommunizieren oder muss hier noch zusätzlich etwas eingestellt werden ?
Beste Grüße
Christoph Held
Hallo Herr Held,
es gibt eine Unzahl an verschiedenen Sendern, die sich durch Modulation, Baudrate, Frequenzhub, Protokoll u.a. unterscheiden, so dass die Frage pauschal nicht beantwortet werden kann. Sie können mit Kenntnis dieser Parameter selber die Ansteuerung für das RFM69 programmieren. Die Frequenz 433 MHz ist an sich kein Problem.
Schöne Grüße
S. Seegel
Hallo,
Kann ich das 868 Modul genau wie einen CUL-Stick der Firma Busware an meinem RPI betreiben um es für FHEM zu nutzen?
Ich habe bereits eine 433 CUL mit Intertechno Schaltern im Einsatz und möchte nun zusätzlich Homematic Kompeneten verwenden.
Hallo Axel,
hardwareseitig würde das gehen, es gibt aber noch keine Softwareunterstützung dafür. Man bräuchte z.B. ein Pythonskript, welches mit einer Socket die CUL Kommandos für das RFM69 umsetzt. Vielleicht finden sich ja (bei FHEM) ein paar Mitstreiter die das zusammen umsetzten können.
Grüße
Stefan Seegel
I’d like to order this module, but it looks like you’re not shipping to Belgium. Any suggestion to solve this problem ?
Dear Paul,
I added belgium to the shop, now you can order.
Kindly regards
Stefan
Hallo,
zur Info:
die Software scheint das spi-bcm2708 Modul zu benötigen, das oftmals nicht mehr automatisch geladen wird. (Bei normal aktiviertem SPI mittels dtparam=spi=on wird spi-bcm2835 geladen, das 2708 ist nicht ladbar.)
Deshalb in die config.txt:
dtoverlay=spi-bcm2708-overlay
Falls man z.B. in openElec die libs verwenden möchte ohne lange zu compilen:
GPIO:
http://www.barryhubbard.com/raspberry-pi/howto-raspberry-pi-install-rpi-gpio-openelec-rev-a-b-b/
SPI:
https://github.com/TIGAL/BBB-mikroBUS-Cape/raw/master/Examples/py-spidev/build/lib.linux-armv7l-2.7/spidev.so
Und beides in den python Scripts laden wie im GPIO Artikel beschrieben…
Vielen Dank für die Info!
Hallo,
fein das die Module wieder lieferbar sind
Sind die Antennen inkl. odern müssen diese separat mit bestellt werden?
Hallo Jürgen,
die Antennen können separat erworben werden.
Grüße
Stefan
Schon bestellt und erhalten 🙂
Ist eine Ansteuerung über die WepApp(Mod) oder über Powerswitch schon einmal realisiert worden? https://power-switch.eu/
LG, Jörg Sprenger
Hallo Jörg,
Du kannst mir der mitgelieferten connair.py ein Brennenstuhl Brematic emulieren, damit funktioniert auch der Power-Switch.eu.
Hallo Herr Seegel
Wann werden neue RaspyRFM-Module lieferbar sein?
MfG, Jörg Sprenger
Hallo Herr Sprenger,
die Module sind nun wieder verfügbar!
Hallo,
wann kann mit der Auslieferungen vom Funkmodul RaspyRFM-II mit 868MHz gerechnet werden?
Gruß
Jürgen
Hallo,
wann wird das Funkmodul RaspyRFM-II mit 868MHz wieder verfügbar sein?
viele Grüße
Axel Hallbauer
Hallo Herr Hallbauer
das Modul in der 868 MHz Ausführung ist derzeit in Produktion. Ich werde Ihnen Bescheid geben.
Grüße
S. Seegel
Hallo Herr Hallbauer,
die Module sind nun wieder verfügbar!
Frage:
Gibt es fuer das RaspyRFM-II Modul den Beispiel-Code auch in c (c++)
MfG
und den besten Wünschen fuer 2016
L. Weiss
Es gibt einen Linuxkerneltreiber in C:
https://github.com/gkaindl/rfm12b-linux
Schöne Grüße
S. Seegel
Hallo, ist schon absehbar, wann es das RaspyRFM-II mit 868 MHz wieder geben wird? Im Shop ist es momentan als „nicht verfügbar“ gekennzeichnet. Würde gern eins bestellen!
Vielen Dank und beste Grüße,
Peter
Hallo Peter,
eine neue Charge Leiterplatten ist schon, bestellt so dass es den RaspyRFM 868 in einigen Wochen wieder geben wird.
Schöne Grüße
Stefan Seegel
Hallo,
ich interessiere mich für das RaspyRFM. Frage: wird die Software für den Raspberrry Pi mitgeliefert?
MFG
P. Ritz
Hallo,
es wird eine Pythonbibliothek mitgeliefert um das RFM69 ansprechen zu können. Zusätzlich gibt es Beispielcode, um Funkthermometer zu empfangen und um Intertechno Funksteckdosen steuern zu können.
Schöne Grüße
S. Seegel