Garagentor-Antrieb Chamberlain steuern mit 433MHz

  • Hallo zusammen,
    da ich nirgendwo fündig wurde wie ich meinen Garagentor-Antrieb Marke Chamberlain bedienen kann habe ich ein kleines C++ -Programm geschrieben, das sowohl die Codes mittels 433MHz-Receiver liest wie auch über einen 433MHz-Transmitter senden kann.
    Als C++ -Neuling ist wahrscheinlich nicht alles so wie's ein Profi machen würde (bin empfänglich für konstruktive Kritik).
    Mein Problem:
    Der Sender generiert jedes Mal einen neuen Schlüssel. Da habe ich schon 100 gelesen und einige getestet, es funktioniert. Wie lange die gesperrt bleiben weiss ich noch nicht. Nun möchte ich gerne noch den Key dazu rausfinden und komme nicht weiter. Wer hilft ??

    Zum Projekt:
    1. Ich habe mir einen Aurel RX-4M50RR30SF bei Conrad beschafft (die Produkte aus Fernost funktionieren schlecht).Achtung Spannungsteiler nötig !!
    2. Die Sender aus Fernost funktionieren einwandfrei.
    3. Ein Takt des Chamberlain-Senders beträgt 2ms und sendet 0001 =1 oder 0011 =2 oder 0111 =3. Ich zähle die die pos. Impulse
    4. Das senden wird eingeleitet durch einen kurzen Impuls (ca. 0.1ms), danach längere Pause zuerst 130ms später ca. 60ms
    5. Die Signale werden 4 mal gesendet.
    6. für empfangen: ./433MHz_rw r
    7. für senden z.B.: ./433MHz_rw w 11111113213211213311 12313131321223223233

    Danke für eure Hilfe

    und hier noch gleich die 150 passende Keys welche mit dem gleichen Chamberlain-Butten erzeugt wurden[/align]

  • leider lässt sich der C++ Code nicht kompilieren.
    Das ist die Ausgabe wenn ich versuche den Code ausführbar mache:

    Code
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../arm-linux-gnueabihf/crt1.o: In function `_start':
    (.text+0x34): undefined reference to `main'
    collect2: ld returned 1 exit status

    A: Was ist dein dunkelstes Geheimnis?
    B: Das kann ich dir nicht sagen.
    A: sudo was ist dein dunkelstes Geheimnis?

  • Hallo petit_miner,
    als totaler Anfänger von C++ ist leider meine Hilfe nur beschränkt.
    Ich denke aber, dass ich nichts aussergewöhniches programmiert habe.
    Ich compiliere mit :
    g++ 433_rw.cpp -o 433_rw -lwiringPi im Directory: /home/pi/wiringPi und
    dar Source-File heisst natürlich 433_rw.cpp (das .txt muss weg) und
    g++ ist im /usr/bin (ist scheinbar eine GNU, ich habe das nicht bewusst geladen)
    Wenn's nicht geht werde ich die compiliere Fassung hochladen.
    Gruss
    Kalim

    Einmal editiert, zuletzt von kalim (22. Oktober 2014 um 11:20)

  • Das Ausführen des Codes ist jetzt kein Problem aber welches Modell hast du als Öffner?
    Und was steht auf deinen Handsendern welche Frequenz haben die?
    Und an welchen GPIO Port hast du den Sender angeschlossen?
    Weil bei mir scheint es momentan nicht zu funktionieren.

    A: Was ist dein dunkelstes Geheimnis?
    B: Das kann ich dir nicht sagen.
    A: sudo was ist dein dunkelstes Geheimnis?

  • Hallo petit_miner ,
    dem GPIO ist es grundsätzlich egal, was da angeschlossen wird, nur die Spannung muss stimmen (für Input 3.3V).
    Im Programmcode siehst du, dass der Receiver am GPIO 24 (WiringPi 5, PIN 18) und
    der Transceiver am GPIO 17 (WiringPI 0, PIN 11) hängt.
    Ich benutze als Sender einen CHAMBERLAIN Model 84335EML, Typ 1A5478 (3 Knöpfe=3Tore möglich, 433MHz), aber auch das ist egal.
    Falls du irgendein Signal empfängst, so muss die Ausgabe etwa so aussehen (1E=10Microsec):
    -163189;14;
    -13040;59;-137;58;-142;59;-42;154;-46;150;-47;149;-97;102;-48;151;-49;150;-50;144;-99;100;-50;150;
    -50;149;-50;146;-150;47;-100;100;-150;50;-98;98;-100;100;-100;97;-150;50;
    -5951;153;-47;151;-144;53;-147;50;-147;53;-98;101;-49;147;-148;52;-148;49;-148;52;-49;147;-99;100;
    -149;51;-100;97;-99;97;-149;51;-50;149;-50;149;-51;143;-149;51;-100;99;
    usw.
    wobei neg. Zahlen entspricht logisch 0, pos. Zahlen logisch 1.
    Werden nur Sterne gezeigt heisst das, dass ein Durchgang ( je 1s) keine Signaländerung empfangen wurde.

Jetzt mitmachen!

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