Forum: Mikrocontroller und Digitale Elektronik Funksteckdosen mit AVR steuern


von Jochen F. (jofra)


Lesenswert?

Ich habe mir eine ein Set Funksteckdosen (3 Stück + Sender) von REV 
gekauft mit dem Ziel, diese mit einem Atmega8 zu steuern.
Die von mir in Netz gefundenen Lösungen haben entweder die Taster 
elektronisch überbrückt oder sind direkt an den Codierchip des Senders 
gegangen. Dadurch werden sehr viele Leitungen benötigt.

Bei der Zerlegung des Senders fand ich eine Platine mit Tastern, Dioden 
und einem HS2260A-R4 Chip, ein Sendemodul (433 Mhz) auf dem SAW steht, 
das ganze betrieben mit einer 12V Batterie.

Das Sendemodul hat 4 Anschlüsse (12V, GND, LED und Signal). LED dient 
nur zum Anschalten der LED und der Signal-Anschluss ist mit dem DOUT-Pin 
des 2260 verbunden.
Im Netz fand ich ein Datenblatt zu einem PT2260-R4 Chip bei dem das 
Protokoll beschrieben war. Meine Idee war jetzt den 2260 mit einem AVR 
zu simulieren und das Signal direkt an das Sendemodul zu übergeben.

Der 2260 besitzt 8 Adresspins (A0-A7 Tristate=1,0,f) und 4 Datenpins 
(D0-D3). Aus dem Zustand dieser Pins wird ein serielles Signal erzeugt, 
das an dem DOUT-Pin ausgegeben wird.
Die Ausgabe erfolgt in der Reihenfolge: 
A0,A1,A2,A3,A4,A5,A6,A7,D3,D2,D1,D0,Sync
Eine 0 wird erzeugt durch: 1T High, 3T Low, 1T High, 3T Low
Eine 1 wird erzeugt durch: 3T High, 1T Low, 3T High, 1T Low
Ein f wird erzeugt durch: 1T High, 3T Low, 3T High, 1T Low
Ein Sync wird erzeugt durch: 1T High, 31T Low
T bezeichnet hierbei die Zeitdauer des Zustandes.

Die Pins meiner Fernbedienung waren folgendermaßen verschaltet:
A0-A3 konnten jeweils mit einer Lötbrücke vom Zustand f Auf Zustand 1 
gebracht werden. Bei mir war eine Lötbrücke bei A2.
A4, A5, A6 entsprachen den 3 Steckdosen und wurden von Zustand f bei 
Auswahl einer Steckdose auf 1 gezogen.
A7 war mit GND verbunden.
Beim Einschalten einer Steckdose geht D1 auf 1, beim Ausschalten geht D0 
auf 1.

Ich habe nun einen Ausgabepin meines Atmega8 auf den Signal-Eingang des 
Sendemoduls gelegt und das Modul mit 12V versorgt.
Auf den PIN habe ich nun zum Einschalten von Steckdose 1 folgendes 
Signal (mehrfach) gegeben: ff1f1ff00010. Durch experimentieren fand ich 
heraus, dass für T eine Wartezeit von _us_sleep(250) funktioniert.

Und siehe da, die Steckdose ging an.

Ist es eigentlich ein Problem, den Sender direkt mit dem Ausgabepin zu 
steuern, oder sollte man da was dazwischenschalten?

von JoachimB (Gast)


Lesenswert?

Hallo Jochen,

ich habe einen Pegelwandler dazwischen geschaltet. Da der 
Sendetransistor vom Modulationseingang nur die Basisvorspannung erhält, 
scheint das nicht so kritisch zu sein.

Hier weitere Details:
http://avr.börke.de/Funksteckdosen.htm
http://avr.börke.de/ARCTECHsteckdosen.htm
http://avr.börke.de/E-Funk.htm

Gruß
Joachim

von Flo P. (floh0815)


Lesenswert?

Vielen Dank für die ganzen Informationen in diesem Beitrag!

Ich hab das ganze an nen attiny45 gepackt und diesen dann mit meinem 
Linksys Router verbunden :) (und es klappt sogar! yay!)

Ein paar Bilder gibts auch: http://red-silence.de/linksys/

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.