Ein Funkmodul für den Raspberry: RaspyRFM
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, Homeassistant, ioBroker, Node Red u. a.) übergeben zu können.
Beispiele für funkunterstützte Geräte
- Funksteckdosen (z.B. FS20, Intertechno, Brennenstuhl, Logilight, emylo, Hama, uvm.)
- Funkthermometer (z.B. TX29-IT, TX35-IT, TX62-IT)
- Funkenergiekostenmessgeräte (z.B. EMT7110, Voltcraft EC3000)
- MAX! Heizungsthermostate
- Bresser 7in1 Wetterstation
- uvw.
Eigenschaften
- Frequenzbereich 434 MHz oder 868 MHz
- Modulationsarten OOK und FSK
- SPI Schnittstelle, programmierbar in C, C++, Python…
- Sendeleistung 13 dBm max.
- SMA Antennenbuchse
- Pythonmodul mit Programmierbeispielen 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.
Installation
Zunächst die SPI Schnittstelle aktivieren und den Raspberry PI neu starten:
sudo raspi-config
Anschließend die Software für das RaspyRFM installieren;
sudo apt-get install git-core
git clone https://github.com/Phunkafizer/RaspyRFM.git
cd RaspyRFM
./setup.sh
Test des Moduls:
.env/bin/python apps/scan.py
Anschlussbelegung
Das RaspyRFM mit 10-poliger Buchse wird auf den Raspberry PI von Pin 17 – 26 gesteckt. Das RaspyRFM Twin II wird mit 12-poliger Buchse geliefert und auf Pin 15-26 gesteckt.
Raspberry PI 40-pol | RaspyRFM | |
15 | GPIO 22 | Nur RaspyRFM Twin II: DIO2 2. RFM69 Modul |
16 | GPIO 23 | Nur RaspyRFM Twin II: DIO2 1. RFM69 Modul |
17 | 3,3 V | 3,3 V |
18 | GPIO 24 | Einzelmodul: DIO1 Doppelmodul: DIO0 des 2. RFM69 Moduls |
19 | MOSI | MOSI |
20 | GND | GND |
21 | MISO | MISO |
22 | GPIO 25 | DIO0 (1. RFM69 Modul) |
23 | SCK | SCK |
24 | CE0 | NSS (1. RFM69 Modul) |
25 | GND | GND |
26 | CE1 | NSS 2. RFM69 Modul (Doppelmodul) |
Software
Neben dem oben erwähntem Pythonmodul für das RaspyRFM enthält das Repository einige Anwendungen:
LaCrosse Funktemperatursensoren empfangen
Für die LaCross-Sensoren (TX29, TX35, etc.) gibt es eine Dekoderklasse welche die Daten aus dem Funktelegram gewinnt. Zu Funkthermometern mit dem RaspyRFM gibt es einen eigenen Artikel. Im Softwarepaket ist außerdem eine Anwendung enthalten mit der die empfangenen Messwerte in einem Webinterface dargestellt werden können. Dies ist in diesem Artikel genauer erklärt.
.env/bin/python apps/868gw.py
Found RaspyRFM twin
RFM69 found on CS 1
Init complete.
{'batlo': False, 'timestamp': '2021-01-11T23:28:34', 'AFC': 0, 'init': False, 'T': (-17.0, 'C'), 'RSSI': -108, 'RH': (78, '%'), 'ID': 'b0'}
{'batlo': False, 'timestamp': '2021-01-11T23:28:34', 'AFC': 0, 'init': False, 'T': (19.4, 'C'), 'RSSI': -107, 'RH': (46, '%'), 'ID': 'c0'}
{'batlo': False, 'timestamp': '2021-01-11T23:28:34', 'AFC': 0, 'init': False, 'T': (15.1, 'C'), 'RSSI': -87, 'RH': (31, '%'), 'ID': 'f8'}
{'batlo': False, 'timestamp': '2021-01-11T23:28:35', 'AFC': 0, 'init': False, 'T': (19.0, 'C'), 'RSSI': -103, 'RH': (47, '%'), 'ID': '88'}
{'batlo': False, 'timestamp': '2021-01-11T23:28:36', 'AFC': 0, 'init': False, 'T': (-0.8, 'C'), 'RSSI': -104, 'RH': (77, '%'), 'ID': '64'}
{'batlo': False, 'timestamp': '2021-01-11T23:28:36', 'AFC': 0, 'init': False, 'T': (19.1, 'C'), 'RSSI': -98, 'RH': (53, '%'), 'ID': '54'}
{'batlo': False, 'timestamp': '2021-01-11T23:28:37', 'AFC': 0, 'init': False, 'T': (19.2, 'C'), 'RSSI': -104, 'RH': (47, '%'), 'ID': '24'}
Funksteckdosen steuern & empfangen
Zum Thema Funksteckdosen mit dem RaspyRFM gibt es einen eigenen Artikel. Mit der Anwendung rcpulse
können 433 MHz Funksteckdosen gesteuert und Fernbedienungen empfangen werden.
Funkkomponenten in Node-Red einbinden
Siehe eigener Artikel zu diesem Thema.
Funkkomponenten in Homeassistant einbinden
Siehe eigener Artikel zu diesem Thema.
Wetterstation Davis Vantage Vue
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.
Beiträge zum RaspyRFM Funkmodul:
- Funksensoren
- Funksteckdosen steuern
- Übersicht Funksteckdosen
- Raumklimalogger
- Funkkomponenten in Node-Red einbinden
- Funkkomponten in Home Assistant einbinden
Hallo,
ich besitze einen RPi5 (4GB) und habe mir ihr RaspyRFM-II Dualmodul gekauft und das Modul auf die richtigen Pins gesteckt. Leider scheitert es an der Installation.
Folgende 3 Zeilen lassen sich ohne Probleme mit dem Terminal des RPi OS installieren.
sudo apt-get install git-core python3-dev python3-pip
git clone https://github.com/Phunkafizer/RaspyRFM.git
cd RaspyRFM
jedoch ist es mir nicht möglich die Installation abzuschließen:
sudo pip3 install -e . und sudo pip3 install paho-mqtt
liefern mit folgenden error ->
error: externally-managed-environment
To install Python packages system-wide, try apt install python3-xyz
also installierte ich diese mit: sudo apt install python3-dev und sudo apt install python3-paho-mqtt
das Aufrufen der Python-dateien (z.B. apps/868gw.py usw. ) funktioniert leider nicht und liefert mir immer einen Error:
Traceback (most recent call last): File “home/rpi/RaspyRFM/apps/868gw.py”, line 5, in from raspyrfm import *
ModuleNotFoundError: No module named ‘raspyrfm’
Bin für jede Hilfe dankbar!
Hallo, Danke für den Hinweis! Am besten mal den neuesten Stand clonen und dann die darin enthaltene setup.sh ausführen. Doku auf der Projektseite habe ich angepasst.
Vielen Dank! Konnte die Software nun ohne Probleme installieren und mittlerweile Steckdosen ein und ausschalten (z.B. mit: ./rcpulse.py – p hama -i 12345678 -u 1 -a on/off)
Erfolglos versuchte ich jedoch die configuration.yaml in Home Assistant für meine Hamasteckdose richtig zu programmieren:
mqtt:
switch:
– name: “Steckdose 1”
command_topic: home/rcpulse/hama/12345678/1/set
#state_topic: home/rcpulse/hama/12345678/1
payload_on: on
payload_off: off
auch mit dieser Zeile:
command_topic: home/rcpulse/hama/12345678/1/set on
Variationen mit on/off großgeschrieben ON/OFF und ohne dem state_topic machten keinen Unterschied, die Steckdose lässt sich so nicht schalten.
Die Einrichtung des mqtt clients wurde über mosquitto mit dem host: core-mosquitto, User, Passwort, Transport TCP gemacht.
Es verwundert mich sehr, warum die integration in Home Assistant solche Schwierigkeiten bereitet.
Bitte um Unterstützung.
MfG
Hallo,
mein (funktionierender) Testeintrag sieht so aus:
mqtt:
switch:
– name: “Test SW”
command_topic: “home/rcpulse/hama/12345/1/set”
state_topic: “home/rcpulse/hama/12345/1”
payload_on und payload_off muss nicht extra angegeben werden. Was ist in der Konsolenausgabe des rcpulsegw zu sehen wenn Sie den Schalter in HA umlegen?
Hallo,
hab Ihren Code übernommen.
Ich denke, dass es wahrscheinlich an der mqtt Einstellung liegen könnte.
Anbei die Ausgabe des rcpulsegw: (In rcpulsegw.conf habe ich keine Änderungen gemacht.)
RFM69 found on CS 0
Init complete.
API listening on port 1989
Connected MQTT with result code Not authorized
Exception in thread paho-mqtt-client-:
Traceback (most recent call last):
File “/usr/lib/python3.11/threading.py”, line 1038, in _bootstrap_inner
self.run()
File “/usr/lib/python3.11/threading.py”, line 975, in run
self._target(*self._args, **self._kwargs)
File “/home/rpi/RaspyRFM/.env/lib/python3.11/site-packages/paho/mqtt/client.py”, line 4523, in _thread_main
self.loop_forever(retry_first_connection=True)
File “/home/rpi/RaspyRFM/.env/lib/python3.11/site-packages/paho/mqtt/client.py”, line 2297, in loop_forever
rc = self._loop(timeout)
^^^^^^^^^^^^^^^^^^^
File “/home/rpi/RaspyRFM/.env/lib/python3.11/site-packages/paho/mqtt/client.py”, line 1686, in _loop
rc = self.loop_read()
^^^^^^^^^^^^^^^^
File “/home/rpi/RaspyRFM/.env/lib/python3.11/site-packages/paho/mqtt/client.py”, line 2102, in loop_read
return self._loop_rc_handle(rc)
^^^^^^^^^^^^^^^^^^^^^^^^
File “/home/rpi/RaspyRFM/.env/lib/python3.11/site-packages/paho/mqtt/client.py”, line 3047, in _loop_rc_handle
self._do_on_disconnect(packet_from_broker=False, v1_rc=rc)
File “/home/rpi/RaspyRFM/.env/lib/python3.11/site-packages/paho/mqtt/client.py”, line 4383, in _do_on_disconnect
on_disconnect(
TypeError: on_disconnect() takes 3 positional arguments but 5 were given
In der rcpulsegw.conf habe ich nun den Server in “core-mosquitto” geändert und den port auf 1883 belassen, so wie in HA (unter mqtt) eingestellt. Der “apiport” wurde ebenfalls auf 1989 belassen. Die Fehler sind nun verschwunden. Beim Betätigen des Schalters unter HA gibt die Konsole nichts aus. Beim Betätigen der Fernbedienung wird die hama Steckdose wie auch unter rcpulse.py normal erkannt. Habe auch einen Fensterkontakt von Sonoff DW2, der erkannt wird, jedoch wird im log file in HA nichts zu dem Kontaktschalter ausgegeben.
Offenbar kann RaspyRFM und / oder HA keine Verbindung zum Mosquitto Broker aufnehmen. Am besten mit einem MQTT Viewer schauen ob die Nachrichten vom RaspyRFM / HA jeweils im Broker ankommen.
Sehr geehrter Herr Seegel,
Wir haben Ihre interessanten Infos bezüglich dem RaspyRFM-II Modul gefunden und sind uns nicht sicher ob dieses Modul auch mit einem Funksteckdosen Set von REV Ritter Typ 8342L Baujahr 2007 funktioniert.
Leider haben wir keinen Handsender und unser Kunde möchte, dass wir die Teile mit Nolde RED einbinden.
Auf der Platine der Funksteckdose können wir den IC1 nicht erkenntlich machen und wissen daher leider nicht welcher Chip verbaut ist.
Es hat auf der Platine der Funksteckdose 1 folgende Markierung A007RX-M 1.6mm 03/08/07 REV:01 55-6AA007-100.
Die Codierung ist fest verlötet und hat einen Bereich von A-D und 1-3.
Die Codierung ist mit B1 verlötet und auf dem Gehäuse ist B1 und J7 markiert.
Können wir mit Ihrem RaspyRFM-II Modul und der entsprechenden Software diese 3Stk REV Ritter Typ 8342L Funksteckdosen ansteuern?
Welchen Code müssen wir senden/einrichten?
Besten Dank im Voraus für Ihre Unterstützung.
Freundliche Grüsse
Rütschi Consulting
Heinz Rütschi
Hallo Herr Rütschi, diese Funksteckdosen kenne ich leider nicht und ohne die passende Fernbedienung wird das nicht einfach. Dennoch sehe ich eine Chance: Sie könnten abgleichen ob es sich bei dem IC evtl. um einen HX2262 handelt, vielleicht stimmt die Pinanzahl und Lage der Versorgungsspannungspins überein. Sollte das passen lässt sich die Kodierung anhand der Adresspins bestimmen: Jeder Eingang der mit High beschaltet ist entspricht im Code einer 1, jedes Low einer 0 und ein offener Eingang entspricht einem F. Über die beiden letzten Zeichen wird in der Regel das Ein-/Auskommando kodiert, z. B.:
./rcpulse.py -p tristate -c 0000000000FF
Viel Erfolg & schöne Grüße aus Fürth
S. Seegel
Hallo Herr Seegel
Herzlichen Dank für Ihre rasche Info und Rückmeldung, toller Service!
Ich denke das wird uns noch etwas Zeit und Energie kosten.
Nun freuen wir uns auf Ihr RaspyRFM-II Modul sowie auf eine spannende Herausforderung und RF Schnitzeljagd.
Auch wir wünschen Ihnen weiterhin viel Erfolg sowie eine gute und gesunde Zeit.
Herzliche Grüsse aus der Schweiz
Heinz Rütschi
Hallo Herr Seegel,
ich möchte das RFM69 Twin-Modul über die RadioHead Library (https://github.com/hallard/RadioHead) ansteuern. Das dort vorhandene Tool “spi_scan” findet auch beide Module:
pi@raspi:~/RadioHead/examples/raspi/spi_scan $ sudo ./spi_scan
Checking register(0x42) with CS=GPIO06 => Nothing!
Checking register(0x10) with CS=GPIO06 => Nothing!
Checking register(0x42) with CS=GPIO07 => Nothing!
Checking register(0x10) with CS=GPIO07 => SX1231 RFM69 (V=0x24)
Checking register(0x42) with CS=GPIO08 => Nothing!
Checking register(0x10) with CS=GPIO08 => SX1231 RFM69 (V=0x24)
Checking register(0x42) with CS=GPIO26 => Nothing!
Checking register(0x10) with CS=GPIO26 => Nothing!
Können Sie mir hier weiter helfen?
CS habe ich in Ihrer Doku gefunden. Aber mit dem IRQ und dem RST PIN’s bin ich mir unsicher. Folgende Einstellungen erwartet die Lib:
// Module 1 on board RFM69 433 MHz
#define MOD1_LED_PIN NOT_A_PIN // no LED
#define MOD1_CS_PIN RPI_V2_GPIO_P1_24 // Slave Select on CE0 so P1 connector pin #24
#define MOD1_IRQ_PIN RPI_V2_GPIO_P1_22 // ???
#define MOD1_RST_PIN RPI_V2_GPIO_P1_23 // ???
// Module 2 on board RFM69 868 MHz
#define MOD2_LED_PIN NOT_A_PIN // no LED
#define MOD2_CS_PIN RPI_V2_GPIO_P1_26 // Slave Select on CE1 so P2 connector pin #26
#define MOD2_IRQ_PIN RPI_V2_GPIO_P1_18 // ???
#define MOD2_RST_PIN RPI_V2_GPIO_P1_23 // ???
Vielen Dank und Grüße,
Jürgen Smolka
Hallo Herr Smolka,
der Resetpin des RFM69 ICs ist beim RaspyRFM nicht nach außen geführt. Ich kann leider nicht sagen ob die RadioHead Bibliothek auch ohne den Reset Pin funktioniert. Die Pinbelegung des RaspyRFM (Duo) können Sie hier nachschlagen:
https://github.com/Phunkafizer/RaspyRFM/blob/master/raspyrfm/rfm69.py
Es ist zu beachten dass es leider verschiedene Arten den Nummerierung gibt:
1. Pinnummer am Stecker des Pi (1-26 bzw. 1-40)
2. GPIO Nummer der CPU des PIs
3. Weitere bibliotheksspezifische Benamungen
Mit IRQ_PIN ist bei der RadioHead Bibliothek vermutlich der DIO0 Anschluss des RFM69 gemeint.
Viele Grüße
S. Seegel
Guten Tag Herr Seegel,
offenbar ist auf dem RaspyRFM-II nicht die high power Variante des RFM69 installiert, so dass “nur” eine Sendeleistung von +13dBm erreicht werden kann.
Gibt es denn auch Pläne, das RFM69HW zu verbauen? Ist das RFM69HW pinkompatibel zu dem verbauten RFM69?
Vielen Dank!
mfg
D. Fries
Wie ich gerade festgestellt habe, wäre wenn dann das RFM69HCW der passende Ersatz, da offenbar das RFM69CW verbaut ist, richtig? Ich denke, ich werde mal einen Umbau wagen.
Hallo Dominik,
das RFM69HCW hat 16 Pins, im Gegensatz zum RFM69CW (14 Pins). So ist es leider hier nicht möglich das RFM69HCW zu verwenden.
Schöne Grüße
Stefan
Tatsache, danke für die Antwort.
Und ich gehe davon aus, es wird auf absehbare Zeit kein RaspyRFM mit einem H(C)W-Modul geben?
Mittlerweile gibt es einen RaspyRFM Barebone:
https://www.seegel-systeme.de/produkt/raspyrfm-iv-barebone/
Auf diesem kann anstelle des RFM69CW auch ein RFM69HCW bestückt werden.
Tatsächlich ist eine Art Scanner als Softwarebeispiel dabei. Dabei werden OOK Impulse empfangen und mit einigen verbreiteten Protokollen abgeglichen und ggf. dekodiert. Da es zahlreiche Protokolle gibt kann ich nicht sagen ob das mit den Velux-Rollläden klappt.
Hallo Herr Seegel,
ich habe Ihr Funkdoppelmodul RaspyRFM-II (Bestellnummer #7575 vom 16. Januar 2021) gekauft. Meine ersten Schritte habe ich mit der Variante 433 MHz gestartet. Parallel zu Ihrem Modul habe ich mit dem Microcontroller BQZLR (https://www.amazon.de/433Mhz-Wireless-Transmitter-Receiver-Module/dp/B00EQ1U5XQ?ref_=ast_sto_dp) gesnifft. Die Ergebnisse sind leider nicht vergleichbar :
Ihr Funkmodul liefert:
rx: {‘protocol’: ‘tristate’, ‘class’: ‘switch’, ‘params’: {‘code’: ‘0FFF0FFFFFFF’}}
rx: {‘protocol’: ‘logilight’, ‘class’: ‘switch’, ‘params’: {‘id’: 86357, ‘unit’: 3, ‘command’: ‘off’}}
rx: {‘protocol’: ‘pcpir’, ‘class’: ‘switch’, ‘params’: {‘id’: 31, ‘unit’: 14, ‘command’: ‘on’}}
Ergebnis des alternativen Microcontroller ist:
[DECcode: 1381717, BINcode: 000101010001010101010101]
Adr./ Id/ Code (oder wie auch immer es zu nennen ist): 000101010001
Steckdose (A bis D), in diesem Fall: 01010101
On/Off: 0101
Ich hätte folgende Fragen oder besser gesagt bitte ich um Hilfe bei volgenden Fragen:
1: könnten Sie mir die Ergebnisse erklären? Ich fürchte nämlich, dass eine “Übersetzung” nicht direkt möglich ist.
2: in Ihrer Anleitung, bzw. in apps/rcprotocols.py verwenden Sie diverse Parameter (s. unten) können Sie mir diese kurz erklären, bzw. Hinweise geben, wo ich weitere Infos finde?
PARAM_ID = (‘i’, ‘id’)
PARAM_HOUSE = (‘o’, ‘house’)
PARAM_GROUP = (‘g’, ‘group’)
PARAM_UNIT = (‘u’, ‘unit’)
PARAM_COMMAND = (‘a’, ‘command’)
PARAM_CODE = (‘c’, ‘code’)
PARAM_DIPS = (‘d’, ‘dips’)
3: kann man Ihr Doppelmodul parallel betreiben? Wozu dient die Angabe der ModulNr. (Parameter “–module”)? Für dual RaspyRFM soll 1-2 eigegeben werden.
Ich danke Ihnen für jegliche Hilfe im Voraus.
Ota Vales
ota@vales.one
Hallo Herr Vales, vielen Dank für Ihre Nachricht.
Zu 1: Es gibt zahlreiche Verfahren wie eine lose Reihe von Bits dargestellt werden kann, etwa dezimal, hexadezimal, Reihenfolge der Bitwertigkeit, uvm. Noch dazu geben in den meisten Fällen die Hersteller die genauen Protokolldefinitionen nicht heraus, so dass es deswegen keine einheitliche Darstellungsform geben kann.
Zu 2: Die Parameter und welche davon verwendet werden hängen vom benutztem System ab. Beim Intertechno-32 Protokoll etwa gibt es nur ID (fest in der Fernbedienung kodiert), Unit (Kanal 1-3/4) und Command (on/off). Das Brennenstuhl RCS1000 verwendet einen DIP Schalter, dessen Stellung mit dem Parameter DIPS angegeben werden kann. Die alten Intertechno-Steckdosen haben jeweils ein Drehrad für Hauscode und Unit. In rcprotocols.py kann man bei den jeweiligen Gerätetypen nachsehen welche Parameter verwendet werden.
Zu 3: Das Doppelmodul kann parallel betrieben werden. Der Parameter module gibt an welche Chipselect-Leitung verwendet wird. Bei einem einfachen Modul ist das immer -m 1. Wenn Sie etwa das lacrosse Script mit einem Doppelmodul verwenden wollen muss -m 2 angegeben werden damit der zweite Funkchip auf dem Modul angesprochen wird. Gleichzeitig können Sie z. B. rcpulse.py starten, welches durch -m 1 auf die 433 MHz “Hälfte” des Doppelmoduls zugreift.
Schöne Grüße
S. Seegel
Hallo Herr Seegel,
danke vielmals für Ihre Antwort. Ich habe aber immer noch Fragen.
Ich fasse mich kurz. Ich habe versucht, ein weiteres Protokoll zu implementieren. Der Empfang funktioniert zu 100%, das Senden zu 00%.
Frage 1:
Gibt es bei spidev oder sonstwo eine wichtige Konfigurierung , die ich machen muss? (ich bin kein spi-Experte und habe daher auch Ihr Produkt gekauft)
Frage 2:
Wenn ich das Ergebnis der Pulstranformation (s. meine Analyse unten) als Bitstring über meinen Microcontroller BQZLR verschicke, funktioniert es.
Was muss ich berücksichtigen, bzw. was habe ich falsch gemacht?
Ergebnis meine Analyse/Hintergrundinformation:
Im Dokument https://www.seegel-systeme.de/2015/09/05/funksteckdosen-mit-dem-raspberry-pi-steuern/ beschreiben Sie die Protokolle, bzw. die Transformation von Bit-Codes zu Pulsen. So z.B. bei Logilight Funksteckdosen:
24 Bit Daten, jedes Bit besteht aus High-/Low-Bits der Länge 4, repräsemntiert durch “1” bzw. “0”. D.h. z.B. Daten-Bit “1” ([3, 1]) wird als eine Bitreihenfolge 1110 repräsettiert (mal Zeitkonstante ergibt die Pulse).
Syncpuls = [1, 31] hiesse “ein High-Puls und 31 Low-Pulse”.
Das ergibt: 1000 0000 0000 0000 0000 0000 0000 0000
Das ergibt in Summe die Bit-Länge von 128, bzw. Länge der Variable self._ookdata (= bytearray()) von 16 Bytes (== 128 Bits)
Danke Ota Vales
Hallo Herr Vales,
1. Wenn grundsätzlich Daten mit dem RFM69 ausgetauscht werden können (Register schreiben und lesen) ist von der Seite alles in Ordnung.
2. Am besten wäre es die Aussendungen, etwa mit einem einfachen SDR, zu vergleichen. Ich hatte einen Fall wo eine Funksteckdose recht wählerisch bei der verwendeten Zeitbasis war, aber das ist nur eine von vielen Möglichkeiten. Den Abstand zwischen den Framewiederholungen nehmen manche Geräte auch genauer als andere. Ihre Erläuterungen sind soweit korrekt.
Schöne Grüße
S. Seegel
Hallo Herr Seegel,
danke für Ihre Antwort. Leider bin ich immer noch erfolglos.
Ich habe es mit meinem anderen SDR bereits am Anfang verglichen. Es funktioniert bestens, Ihr System empfängt und erkennt die Befehle auch richtig. Genauso die Befehle der Fernbedienung.
In der Zwischenzeit habe ich mir ein Osciloskop besorgt. Ich habe erwartet, daß ich auf dem Pin 19 (MOSI) das Ergebnis der Transformation als Pulse mit meinem Osciloskop anschauen kann. Stattdessen sehe ich einen nicht näher identifizierbaren Muster von High/Low-Pulses. Egal, ob ich etwas sende oder nicht?!?
Ich hätte folgende Fragen:
1. Was sieht man auf den Pins MOSI bzw. MISO?
2. Kann ich irgendwo das Endergebnis der Transformation als ein moduliertes OOK-Signal sehen?
3. Kann sein, dass die HW kaputt ist?
Was soll ich tun? Was würden Sie mir raten?
Danke Ota Vales
Hallo Herr Vales,
das Funkmodul kommuniziert mit dem Raspberry PI über eine SPI Schnittstelle, über welche die zeitdiskret abgetasteten Daten aus einem Zwischenspeicher (FIFO) im Funkmodul ausgelesen werden. Das nicht dekodierte OOK Signal wird nicht an den Raspberry geschickt wie bei einfachen 433 MHz Funkmodulen.
Schöne Grüße
S. Seegel
Hallo.
Ich es möglich über das Tool auch die Last an den Steckdose zu tracken?
Hallo,
mit entsprechender Softwareerweiterung sollte das möglich sein, habe es aber selber noch nicht ausprobiert.
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