Hallo Leute,
ich habe mir bei Ebay diese Module geleistet und wollte damit bißchen
rumspielen. Als erstes wollte ich mit meinem Usbee Logic Analyzer die
Daten anschauen. Habe die Module an die Versorgungsspannung und Logic
Analyzer angeschlossen. Leider werden gar keine Daten angezeigt, wenn
ich auf der REV Fernbedienung die Knöpfe drücke. In der Fernbedienung
ist folgernder Chip verbaut:
http://pdf1.alldatasheet.com/datasheet-pdf/view/103035/ETC/HS2260A.html
und soll ein Derivat eines PT2260 sein. Dazu gibt es folgendes
Datenblatt: http://www.spelektroniikka.fi/kuvat/PT2260.pdf
Ach ja, eine 17.3 cm Antenne ist auch dran und ich sitze mit der
Fernbedienung direkt davor, dabei werden die Funksteckdosen im
Nebenzimmer geschaltet. Jemand eine Idee warum man nichts mit dem
XY-MK-5V empfangen kann? Ich habe 3 x RX+TX Paare von dem Modul keiner
der Module empfängt was. Zumindest ist mein Logic analyser der Meinung
Ok, schlauer geworden. Halte ich die Fernbedienung ganz nah ran,
empfängt die Schaltung was. Das sind aber gerade mal 20cm...
Habe Arduino mal aufgesetzt und mit der RCSwitch Lib gehorcht was die
Fernbedienung überträgt. Soweit alles ok. Nun bleibt die Frage über die
Reichweite. Auf +/-1mm kommt es doch bei der Antenne nicht an.
Update: Also, nach dem ich mit dem Arduino ausgelesen habe, was die
Fernbedienung sendet, habe ich TX Modul aqusprobiert. Hier bin ich mehr
als zufrieden. Sogar ohne Antenne schafft das Teil locker 10M bit zur
Steckdose. Mit einer Antenne geht es quer durch die ganze Wohnung mit
der Spannungsversorgung vom Arduino. Die Antenne muss ebenfalls 17.3cm
sein. Habe diese zu einer kurzen Spirale gewickelt, geht auch wunderbar.
Ich poste Mal Arduino Code, um die 3 Steckdosen Marke REV von Bauhaus zu
schalten:
1
#include<RCSwitch.h>
2
3
#define BAUHAUS_REV_PACKET_LENGTH 24
4
#define BAUHAUS_REV_1_ON 7721996
5
#define BAUHAUS_REV_1_OFF 7721987
6
7
#define BAUHAUS_REV_2_ON 7697420
8
#define BAUHAUS_REV_2_OFF 7697411
9
10
#define BAUHAUS_REV_3_ON 7691267
11
#define BAUHAUS_REV_3_OFF 7691276
12
13
#define FS1000A_TX_PIN 10 // Digital pin of Arduino
Update: Heute auf Arbeit mit einem Kollegen das RX Modul am Logic
Analyzer angeschaut. Das Ding hat ein breitbandiges Rauschen bei
Frequenzen von 350-450MZh. Ich glaube, mir wurden B-Ware Empfänger
geliefert, da ich online über Reichweiten von 30-50 Meter/Indoor lese.
Ich werde mal ein Pärchen vom anderen Zulieferer kaufen und dann noch in
mal schauen, wie der Empfang ist.
Nachdem ich diese ebay-Module auch mal ausprobiert hatte (Stichworte:
Arduino, UART, VirtualWire, etc...), sah ich mir den "ATAD"-Ausgang ;-)
des Empfängers mal am Oszi an: keine einzige "1" noch "0" vom Sender!
(Stichwort: "Blink-LED") - stattdessen nichts wie chaotische Einsen und
Nullen als "Rausch"-(Müll)-Verstärkung!
Dann kam ich auf die Idee, dass die +5 Volt vom USB und auch die vom
uC(Arduino) durch digitales Rauschen sicherlich "verschmutzt" sind =>
Verstärkung durch den Empfänger!, (das "Digital"-Rauschen kann man schön
am Oszi sehen, wenn man in die 5V-Spannung "hineinzoomt"! - habe daher
den Empfänger ("XY-MK-5V") zuerstmal an den 3,3V-Ausgang des Arduino
drangehängt - schon besser!
Aber erst, als ich die 3,3V-Spannungsversorgung des Empfängers mit einem
TL431 (=2,5V-Ref. + NPN-Transistor + Widerstände) UND mit einem
10uF-Kondensator so weit "geglättet" hatte, dass man im Oszi kaum noch
"VCC-Rauschen" sah, ging der "0,5s-Blink"-Empfang dann auf wundersame
Weise bis ins nächste Zimmer!
Eine SEHR glatte Versorgungsspannung des Empfängers ist daher Pflicht!
Dies kann man sicher auch mit einem 1117-3,3V-LDO machen, aber ich hatte
im Moment nur den TL431 in der Schublade... (Beispiel-Schaltung: siehe
Anhang).
Die Länge der Antenne ist zwar überall mit 17,3 cm beschrieben - aber
die Praxis zeigt dann doch: umso länger, umso besser(?)... (ich hatte
mit ca. 35cm einen wesentlich besseren Empfang als mit 17,3cm!)
Die Codierung kann man dann noch z.B. mit der "Virtual-Wire" Library
besorgen, dafür gibt's genug Beispiele, ich tendiere aber zu einer
eigenen, einfacher ohne UART (der bleibt dann für den PC frei):
3ms HIGH, dann das zu sendende Byte mit HIGH-LOW im 500uS-"Takt" (jedes
Byte = eine for-Schleife mit 8bits), diese dreimal hintereinender,
darauf ein #-Zeichen als Abschluß, das müßte dann auch auf Jedem
Digital-Pin des uC ausgegeben werden können (und empfangen werden auch!)
Den Arduino-Code poste ich demnächst hier.
Noch ein Weiteres:
Der Ausgang des Empfängers weist bei einem "HIGH" nur 2V auf, daher
reicht diese Spannung für einen (5V)-Digital-Eingang nicht. Also mit
einem vorgeschalteten NPN-Transistor verstärken oder mit einem der
Analog-Eingänge (OK, die sind beim Arduino möglicherweise zu langsam...)
oder mit dem Komparator... "empfangen". Da diese 2V beim Analog-Eingang
mit 1024 bit "nur" ca. 400 "Schritte" ausmachen, ist ein
"Soft-Fenster-Diskriminator" nötig, um die Einsen und Nullen auf
TTL-Niveau (=5V) "anzuheben". Dabei wird gleichzeitig ein evtl. noch
vorhandenes "Grundrauschen" abgeschnitten...
Mit diesem Code hier geht das ganz gut:
1
/* RF Blink - Receiver sketch
2
Written by ScottC 17 Jun 2014
3
Arduino IDE version 1.0.5
4
Website: http://arduinobasics.blogspot.com
5
Receiver: XY-MK-5V
6
Description: A simple sketch used to test RF transmission/receiver.
Hier ein (funktionierendes!) Beispiel eines 20kHz-Dimmers für einen
Power-LED-Strahler, mit Schaltung und Arduino-Code (Sender incl.
hex.file - zum Flashen per ISP ohne Bootloader für schnelleren Start).
Ein weiteres Beispiel zur Ausführung eines Power-LED-Dimmers
(Flutlichtstrahler), einmal ausgeführt auf Lochrasterplatinen oder auch
als mögliche DIY-SMD-Layout-Variante - (DIY-Ätzverfahren per
Direct-Toner) im Archiv anbei.
Das Zip-Archiv enthält auch eine kleine Programm-Korrektur: Der
Receiver-PWM-Ausgang liegt an D3 anstelle D9... Eile verursacht leicht
(Flüchtigkeits-)Fehler...
Zur Reichweiten-Verlängerung schlage ich eine Bi-Quad Draht-Antenne für
den Empfänger vor (DIY). Dazu anbei auch eine Zusammenfassung aus
Anleitungen zur einfachen Herstellung so einer Cu-Draht-Antenne, hier
für das 433-MHz-Band (=17,3cm Kantenlänge_x4 x2).
Hallo Norbert,
ich hab das dringende Bedürftnis mich zu bedanken!!! Ich hatte aufgrund
Internetrechergen einen RXB12 als Receiver-Modul benutzt (Projekt FHEM
Signalduino) und hatte keinen besseren Empfang, als mit dem primär
eingesetzten XY-MK-5V. Auch eine Verbesserung der Antenne brachte keinen
nennenswerten Erfolg. Aufgrund dieses Threads habe ich nun gerade einen
78L05 Voltage Regulator dazwischen gehängt (den hatte ich noch liegen
und es war der Weg des geringsten Widerstands ;-) ) und schon sieht die
Welt ganz anders aus: Auf einmal bekomme ich sogar Empfang aus dem 2
Stockwerke tiefer gelegenen Keller (ok - Holzbalkendecken, aber vorher
hatte es gereicht, den Sender hinter meinem Rücken zu verstecken und
schon war Schluss!). Ich bin vollauf zufrieden!
Viele Grüße!!!
Hallo,
ich habe den XY-MK-5V einmal ausprobiert.
Es gibt bei dem Modul 2 Probleme:
1. Rauschen
Die kurzen Rauschimpulse lassen sich per Software leicht herausfiltern
siehe Beispielsoftware
Zunächst müßt ihr mit einem Scope die die Anzahl der übertragenen Bits
feststellen. Dann die Länge in usec der Nullen (lange Zeit High) und der
Einsen (kurze Zeit High).
2. Antenne
Wenn ihr eine Antenne anlötet, wird der Eingangskreis eventuell leicht
verstimmt, was sich auf die Eingangsempfindlichkeit erheblich auswirkt.
Dies läßt sich aber durch nachjustieren des Trimmers leicht beheben.
Wenn ihr dass alles berücksichtig, kommt ihr locker 50 Meter (Freifeld)
weit und durch ca. drei Hauswände.
Beim Test im Freifeld ist zu beachten, die Abstimmung hat einen relativ
hohen TK, was gerade jetzt im Winter sehr stört.
Wenn ihr aber einen wirklich guten Empfang haben wollt und bis zu 1000
Meter (Freifeld) weit kommen wollt, dann nehmt den RXB8.
Ich habe getestet: XY-MK-5V, RXB6, RXB8, RX-SYN480, CS01-0-258EQ,
TDA5210
Grüsse
Willi