Der 433 MHz Funksender für den I2C-Bus ist jetzt fertig
Mit dem neuen Funkmodul können Sie ohne viel Aufwand 433,92 MHz Funksteckdosen z.B. von Pollin (Best.Nr. 550 666 oder 551 373) mit einer schalten.
Antenne
Das Modul kann wahlweise mit einer einfachen Drahtantenne, mit einer Funkantenne oder falls gewünscht mit einer SMA-Buchse für eine externe Antenne bestückt werden.
Protokolle
Am DIP-Schalter das gewünschte Protokoll z.B. „1 für Pollin Funksteckdosenset“ ausgewählt werden.
Weitere Protokolle z.B. für Goobay oder Brennenstuhl Funksteckdosen fügen wir im Lauf der Zeit hinzu. Über ein Firmware-Update können neue Funktionen jederzeit auf das Modul geladen werden.
Ansteuerung
Die Ansteuerung über den I2C-Bus ist sehr einfach gehalten.
Systemcode übertragen
Zuerst muss einmal der an der Steckdose eingestellte Systemcode zum Modul übertragen werden.
Bei den Pollin-Dosen wird der Systemcode an den DIP-Schaltern 1-5 eingestellt.
Der Systemcode wird im „I2C 433 MHz-Sender“ in das Register 0 abgelegt.
Das Register 0 hat 5 Byte. Der Schreibbefehl muss immer mit der Nummer des zu schreibenden Registers beginnen.
Ist der DIP-Schalter ON muss in das entsprechende Byte eine „0“ (0x00 hex) eingetragen werden.
Ist der DIP-Schalter OFF muss eine „15“ (0x0F hex) eingetragen werden.
Sind wie in dem Bild die DIP-Schalter 1-5 alle auf ON sieht der Schreibbefehl in das Register wie folgt aus:
Wire.beginTransmission(I2C_ADDR); // Start Übertragung zur I2C-433MHz-Karte Wire.write(0); // Register 0 Wire.write(0); // DIP1=ON => 0 (oder 15 wenn DIP1=OFF) Wire.write(0); // DIP2=ON => 0 (oder 15 wenn DIP2=OFF) Wire.write(0); // DIP3=ON => 0 (oder 15 wenn DIP3=OFF) Wire.write(0); // DIP4=ON => 0 (oder 15 wenn DIP4=OFF) Wire.write(0); // DIP5=ON => 0 (oder 15 wenn DIP5=OFF) Wire.endTransmission(); // Ende
Funksteckdosen ansteuern
Als nächstes wird die zu schaltende Steckdose angesteuert indem man ins Register 1 die Steckdosen-Nummer schreibt die geschaltet werden soll.
Zum AUS-schalten die einfache Nummer,
zum EIN-schalten die Steckdosen-Nummer + 128
Ist wie im Bild der DIP-Schalter A auf ON muss zum Einschalten folgender Schreibbefehl gesendet werden::
Wire.beginTransmission(I2C_ADDR); // Start Übertragung zur I2C-433MHz-Karte Wire.write(1); // Register 1 Wire.write(129); // DIPA=ON => 129 = zum Einschalten senden Wire.endTransmission(); // Ende
Zum Ausschalten muss einfach nur die Steckdosen-Nummer geschrieben werden:
Wire.beginTransmission(I2C_ADDR); // Start Übertragung zur I2C-433MHz-Karte Wire.write(1); // Register 1 Wire.write(1); // DIPA=ON => 1 zum Ausschalten senden Wire.endTransmission(); // Ende
Downloads
Datenblatt Schaltplan Beschreibung
Stückliste
1 | Widerstand 4,7 k |
1 | Widerstand 1,5 k |
1 | LED grün 2mA |
1 | NPN-Transistor BC546A |
1 | Keramik-Kondensator 100 nF |
1 | I2HFS-PIC (PIC18F13K22 programmiert) mit IC-Fassung 20 polig |
4 | Pfostenleiste 3 / 3pol + Jumper |
1 | DIP-Schalter 4pol |
1 | 433 MHz Funkmodul |
1 | 433 MHz Drahtantenne |
1 | Pfostenleiste 5polig |
1 | Anschlussklemme 4 pol steckbar oder fest |
1 | Leiterplatte bleifrei verzinnt mit Lötstopmaske |