Rademacher Rollläder mit dem Pi steuern?

  • Hallo zusammen,

    hat von euch schon jemand Erfahrung mit der Steuerung von Rademacher Fernotron Funkrolläden über den Raspberry gemacht? Der Handsender nennt sich Rademacher Easy Comfort 2406 und kann bis zu 7 Motorn steuern. Er arbeitet mit 433MHz.
    Weiterhin habe ich ein FHEM-System installiert, in das ich die Funkmotoren gerne einbinden möchte.

    Folgender Status bisher:
    1.) Laut Hersteller-Anfrage lässt sich Fernotron nicht in eine Hausautomatisierung einbinden.
    2.) Der Funkcode lässt sich mit dem RFSniffer nicht auslesen!

    Hat jemand eine gute Idee oder schon eine Lösung parat?

    Grüße
    Tom

  • Hallo Thomas,

    wenn das Protokoll unbekannt ist, oder nicht anderweitig vom Hersteller unterstützt wird, dann bleibt Dir nicht viel mehr übrig, als Dein Glück mit Capture & Replay zu versuchen. D.h. Du schneidest die Rohsignale eines jeden Tastendrucks mit und spielst sie anschließend wieder ab. Das klappt aber nur bedingt. Verwendet das unterliegende Protokoll sog. Rolling-Codes, dann hast Du (fast) keine Chance. Beim Rolling-Code merkt sich der Empfänger, ob er einen Code bereits empfangen hat und weist eine später folgende Kopie ab. Im einfachsten Fall implementieren Sender und Empfänger einen Zähler, der vom Sender immer weiter erhöht wird. Bis es dann irgendwann mal zum Zählerüberlauf kommt (und das kann ganz schön lange dauern), wird der Code vom Empfänger abgewiesen und somit nicht mehr funktionieren. Allerdings muß beim Design solcher Protokolle i.d.R. davon ausgegangen werden, daß sich der Empfänger durchaus auch ein Paket "einfängt", welches einen höheren Zyklenzähler beinhaltet jedoch von einer "Störquelle" stammt. Insbesondere auf dem 433MHz Frequenzband funken alle, Rolladenfernbedienungen, Autoschlüssel, Wetterstationen, Steckdosen, Temperatursender... Handelt sich der Empfänger also auf diesem Weg zufällig einen von ihm verstandenen Code mit hoher Zyklennummer ein, dann müßte der legitime Sender erst bis zu dieser Nummer vorstoßen, bevor seine Aktionen vom Empfänger wieder ausgeführt werden. Aus diesem Grund implementieren manche Empfänger einen "kleinen" Zyklenbereich. D.h nach wenigen (im Falle meines Autos sind es etwa 4-5) gültigen und aufeinanderfolgenden Codes akzeptiert der Empfänger wieder niedrigere Zyklennummern (die aber höher liegen, als die 4-5 bereits gesendeten). Als Anwender erkennt man das daran, daß das Auto nicht aufgehen will, obwohl man direkt daneben steht, die Batterie im Autoschlüssel neu ist und man erst mit dem 5. Druck das Auto aufschließen kann. Besitzt man also 5 solcher aufeinanderfolgender Pakete und spielt sie nacheinander ab, dann wird der Code akzeptiert werden. Soviel zum Thema "Sicherheit im Kfz". Allerdings haben die Hersteller mittlerweile dazugelernt und das Nachfolgemodell meines Autos läßt sich nicht mehr so leicht austricksen.
    Verwenden Sender und Empfänger ein Key-Chellenge Verfahren (der Sender muß dazu aber auch einen Empfänger bereitstellen), dann funktioniert so ein Verfahren überhaupt nicht mehr.

    Zurück zu Deinem Problem. Zum Aufnehmen und Abspielen hatte ich mir ein kleines Programm geschrieben, welches eben jenes macht. Das half mir nicht nur mein Auto zu kontrollieren, sondern auch die Signale eines Funkthermometers zu entschlüsseln bzw. Funk-Türgongs von Ald* und Lid* per 433MHz Sender auszulösen. Das Programm (Tranceiver) ist Bestandteil der Hubo-Demo Programme und eigentlich sehr klein. Du kannst es entweder >>> hier <<< als Teil der Hubo Library herunterladen oder lädst Dir das komplette Image >>> hier <<< herunter.

    Das Aufnehmen der Codes erfolgt per:

    Code
    sudo ~/HuboDemo/Transceiver/./Transceiver.out r  myfile.csv


    das Apspielen durch:

    Code
    sudo ~/HuboDemo/Transceiver/./Transceiver.out w  myfile.csv

    Aufgenommen wird solange, bis eine Pause von mind. 1s besteht. Auf diesem Weg besitzt man die Möglichkeit, mehrere Tastendrücke hintereinander abzusetzen. Das ist für den Rolling-Code wichtig, aber auch dafür, wenn man Makros basteln will.

    Schöne Grüße und viel Erfolg

    schnasseldag

  • Hallo und danke für die sehr umfassende und nach zweimaligem Lesen dann auch schlüssige Antwort.
    Trotzdem frage ich mich, warum der RFSniffer keine Signale aufzeichnet. Unterstützt dieser nur ganz bestimmte Protokolle und keine Rohsignale? Was macht das Hubo-433MHz-Modul anders?

    Ich habe noch eine weitere Rolladen-Fernbedienung von der Fa. Jaroli**. Diese verhält sich genauso kryptisch am RFSniffer und auch hier lautete die wenig aufschlussreiche Antwort der Hersteller-Hotline, das System würde nicht von einer Hausautomatisierung unterstützt.

    Das kann es doch wohl nicht gewesen sein, oder! Heißt das, Fernbedienung öffnen und Drähte an die Tasten löten?

  • Hallo Thomas,


    Trotzdem frage ich mich, warum der RFSniffer keine Signale aufzeichnet. Unterstützt dieser nur ganz bestimmte Protokolle und keine Rohsignale?

    So scheint es. Folgt man dem Source des dem RFSniffer zugrundeliegenden RCSwitch (z.B. >>> hier <<<), dann sieht man ab Zeile 52...

    ...daß hier nur ganz bestimmte Protokolle basierend auf einer ganz bestimmten Codierung unterstützt werden. Folgt Dein Gerät nicht einem dieser 5 Protokolle, dann wird RCSniffer dafür keinen gültigen Code finden und ausspucken.


    Was macht das Hubo-433MHz-Modul anders?

    Hier muß man zwischen Hardware und Software unterscheiden. Hubo steht für eine modulare IO-Erweiterung für den Raspberry Pi. Unter diese Erweiterungen fällt unter anderem auch eine Option für einen 433MHz Sender. Zur Hardware gibts eine C++ Bibliothek, welche die Verwendung/Programmierung der Hardware sehr vereinfacht. Um den Einstieg zu erleichtern, habe ich neben der reinen Bibliothek noch mehr als 2 Dutzend Beispiele reingepackt und auch ein Image mit openHAB- und Fhem-Server erstellt. Eines dieser Beispiele (Transceiver) zeichnet die Bitfolgen von Sendern auf. D.h. es werden einfach die High- und Low-Zeiten in µs gemessen und in eine Datei geschrieben. Diese Datei kann dann (ebenfalls) über das Programm auf einem Sender (z.B. auf der Hubo Hardware oder auch sonstwo) zeitgetreu abgespielt werden. Transceiver sucht also nicht nach etwas Bekanntem, sondern schreibt einfach weg, was kommt und spielt es wieder ab. Dabei ist es dann eben auch egal, wenn etwas Unbekanntes kommt.


    Ich habe noch eine weitere Rolladen-Fernbedienung von der Fa. Jaroli**. Diese verhält sich genauso kryptisch am RFSniffer und auch hier lautete die wenig aufschlussreiche Antwort der Hersteller-Hotline, das System würde nicht von einer Hausautomatisierung unterstützt.

    Das kann es doch wohl nicht gewesen sein, oder! Heißt das, Fernbedienung öffnen und Drähte an die Tasten löten?


    Na ist doch klar. Die wollen auch von etwas leben und haben sich ihr eigenes kleines proprietäres Protokoll überlegt. Einmal eingebaut, ist man ein- für allemal geködert :(
    Wenn Du hier eine Schnittstelle benötigst, dann kann es sein, daß Du um's Öffnen, Drähte anlöten und Relaisbedienung nicht umhin kommst (so das überhaupt geht).

    Viel Glück - laß mal was hören, was dabei rausgekommen ist!

    Schöne Grüße

    schnasseldag

  • Hallo Thomas,

    aufgrund Deines Beitrags und weiterer ähnlicher Anfragen hatte ich mich hingesetzt und eine kleine Anleitung geschrieben, wie man Funkcodes einfacher Protokolle aufzeichnen, verstehen und dann ggf. nutzen kann. Vielleicht helfen Dir die Beiträge >>> Teil 1 <<< und >>> Teil 2 <<< bei Deinem Vorhaben ja weiter. Vermutlich ist der erste Beitrag hinreichend für Deine Rolladensteuerung.

    Viel Erfolg!

    schnasseldag

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!