Forum: Mikrocontroller und Digitale Elektronik Problem mit 433MHz Modulen (XY-MK-5V)


von Kai M. (bitboy)


Lesenswert?

Guten Abend zusammen,

es gibt zwar mehrere Themen zu den Modulen aber eine eine wirkliche 
Erklärung dazu konnte ich nicht finden.

Ich habe 3 verschiedene, aber bauähnliche Module hier, 2 (KT-JSMK-2B, 
9921A) sind aus Funksteckdosen, das dritte ist das genannte XY-MK-5V.

An allen 3 habe ich einen 17,3 cm langen geraden Draht als Antenne 
angelötet. Wobei die Antenne nicht wirklich einen Unterschied zu machen 
scheint.

Auf dem Arduino benutze ich die Bibliothek RCSwitch und als Code das 
mitgelieferte Beispiel "ReceiveDemo_Advanced".

Problem: Der Empfang ist enorm schlecht, im Bereich von wenigen cm 
selten mal 1m.

Versucht habe ich es mit 2 Fernbedienungen A und B wobei B besser 
empfangen wird.

Ein RXB6 als Empfänger funktioniert hier deutlich besser.

Der Grund warum ich das mache ist eine defekte Funksteckdose die ich 
gerne reparieren würde und die zu Fernbedienung A gehört. In diese passt 
der RXB6 aber physikalisch nicht rein und außerdem haben die anderen 
Module in einer Funksteckdose schonmal funktioniert und hatten in dieser 
auch keine Antennen.

Der RXB6 scheint kein Problem zu haben das Signal der Fernbedienung A zu 
empfangen, trotzdem kann ich mir nicht 100% sicher sein, dass diese 
immer ein sauberes Signal liefert. Um im Arduino mit einem der anderen 
Module und dieser Fernbedienung etwas zu empfangen darf diese nicht 
weiter als 10 bis 20cm weit weg sein.

PS: Dass eine Funksteckdose den Aufwand nicht wert ist, ist mir klar. Es 
geht mehr darum zu verstehen warum das so ist.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Das sind 'dumme' Module mit Pendelempfänger, die schon durch eine 
Fremdantenne verstimmt werden. Auf dem Empfänger sollte sich ein 
Trimmkondensator zum Abgleich befinden, der aber sehr empfindlich 
reagiert und nur mit dem richtigen Equipment (Oszi, Testsender) 
einigermassen abgeglichen werden kann.
Alternativ bleibt nur 'Versuch macht kluch', also Trimmkondensator ganz 
wenig drehen und Reichweite prüfen. Ist sie schlechter, wars die falsche 
Richtung. Wird sie besser, ganz kleines Stückchen weiterdrehen usw.

von Florian (Gast)


Lesenswert?

Ich weiß, es hilft nicht direkt. Aber die Dinger sind großer Schrott. 
Wenn es klappt schön aber bei mir klappt es oft auch nicht. Liegt 
einfach an den Teilen.

von Kai M. (bitboy)


Lesenswert?

Danke für die Antworten. An Messmitteln fehlt es dafür. Habe nur ein 
DSO150, dieses billig-Oszi. Angeschlossen am Datenpin liefert jedes 
Modul so viele falsche Signale, dass es von einem brauchbaren anhand vom 
Oszi nicht zu unterscheiden ist bzw kaum.
Den einzigen Unterschied den ich feststelle ist dass bei einer 
empfangenen Sendung ein längeres Stück mit 0V angezeigt wird.

Ist es auch möglich, dass sich die Dinger über die Zeit selbst 
verstellen?
Die Leiste ist deutlich über 10 Jahre alt und auch im Einsatz.
Damit ich eine Vorstellung hab: Um wieviel muss man drehen? Viertel? 
Achtel? Weniger?


Dass die Module Mist sind hab ich häufiger gelesen, ich frage mich dann 
nur wie es die Hersteller geschafft haben, dass es über ein paar Meter 
funktioniert.


PS: Hab mal welche bestellt die unter dem Namen RXB12 zu finden sind. 
Dauert leider ne Weile bis die da sind.

: Bearbeitet durch User
von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Kai M. schrieb:
> Um wieviel muss man drehen? Viertel?
> Achtel? Weniger?

Weniger. Höchstens ein paar Grad und dann wieder testen. Wie gesagt, 
verstimmen sich die Dinger schon durch eine andere Antenne und sind 
recht zickig. Also Datenausgang ans Oszi und damit auf die Ferne die 
Qualität beurteilen. Ohne Signal kommt aus diesen Empfängern beinhartes 
Rauschen, nur mit Signal sollte dann ein Zug von Rechtecksignalen über 
den Oszi ziehen.

: Bearbeitet durch User
von Kai M. (bitboy)


Lesenswert?

Ich kann drehen soviel ich will. Mehr als einen Meter wird es nicht.
Es bleibt ein Rätsel wie Andere damit mehrere Meter erreicht haben :/

von Hans B. (Gast)


Lesenswert?

Bisher hab ich nur gute Erfahrungen auch mit Billigempfängern f. 433MHz 
gemacht.
(Reichweiten min. 15....30m auch bei schlechten Antennen)
Aber es gibt einige Fallen, die ohne Oszi nur schwer zu finden sind 
z.B.:
Richtige Betriebsspannung und glatte Spannungsversorgung (keine 
Schaltnetzteilversorgung od. Schaltnetzteil in der Nähe)
Keine weiteren Empfänger im Nahbereich. (einige Meter)
Microcontroller im Nahbereich stören manchmal. Bürstenmotore ebenfalls.
Die Ausgangspegel vieler Module bleiben deutlich unter der 
Betriebsspannung (bis etwa 1,5V weniger weil kein rail/rail OP) und das 
kann auch dazu führen, dass die erforderlichen Logikpegel für den µ-C 
nur im Nahbereich erreicht werden. (eine einfache Transistorstufe löst 
das Problem)
Die Zeiten der HI/LO Pegel sind am Empfängerausgang oft deutlich anders 
als die gesendeten HI od. LO Impulslängen.
Die Modulationsfrequenz darf oft nur im Bereich von etwa 0,5....3 kHz 
liegen.

von Kai M. (bitboy)


Lesenswert?

Jemand hat in einer Amazonbewertung folgendes geschrieben: "These 
receivers are nearly deaf. A good 433MHz super-regenerative receiver has 
a measured detection threshold of about -90dBm. These require a signal 
100 times stronger to hear anything, -70dBm. This is because the RF 
amplifier transistor has incorrect bias components installed and is 
inoperative. To identify: Look at the three resistors near the antenna 
connection at the short edge of the board. A good receiver has two 
resistors marked "221" and one marked "563". Bad receivers have two 
resistors marked "102" and one marked "103". This causes excessive base 
current and saturates the transistor. And all receivers were tuned 
off-frequency 3-5 megahertz high. Buy at your own risk."

https://www.amazon.com/-/de/gp/customer-reviews/R3BUQPV42GMMJ6/ref=cm_cr_arp_d_viewpnt?ie=UTF8&ASIN=B017AYH5G0#R3BUQPV42GMMJ6


Die 3 Widerstände auf meinem, an der Kante wo die Antenne sitzt, sind 
mit 563, 221 und 102 beschriftet.

@Hans B.
Danke für die Ergänzungen. Dass eine sehr saubere Spannungsversorgung 
nötig ist, hatte ich schonmal gelesen. Sowohl in der Leiste als auch bei 
meinem Test-Arduino sieht es sehr glatt aus.
Das Datensignal ist deutlich niedriger als die Eingangsspannung, das 
stimmt. Hab noch 2,5V im Kopf. Das mit dem Transistor klingt hilfreich. 
Wäre ein Versuch wert. In der Leiste gehts vom Datenpin in einen 
PT2272-M4 Decoder.

von Hans B. (Gast)


Lesenswert?

Ich hatte einen Fall, da erreichte der HI-Ausgangspegel etwa 80% der 
Versorgung. Das hat genau dem min. HI-Pegel des µ-C entsprochen. Es 
funktionierte dann nur einen halben Meter weit!
Als Unterschied zwischen verschiedenen Modulen ist mir auch aufgefallen:
Manche Module haben ohne Signal starkes Rauschen - andere wieder nur 
sporadische Spikes.
Das kommt von der üblichen Signalaufbereitung im Empfänger:
Das NF-Signal (typ. etliche mV bis wenige zig-mV) wird mit einem OP 
verstärkt und dann mit einem Komparator "digitalisiert".
Bei manchen Empfängern wird der Komparator durch einen Widerstand 
"vorgespannt" damit nur stärkere Signale durchkommen. (geringere 
Empfindlichkeit aber für den µ-C -je nach code- einfacher zu 
verarbeiten)
Manche Empfänger haben neben dem Komparator_Ausgang noch zusätzlich 
einen analogen Ausgang.

von Kai M. (bitboy)


Lesenswert?

So zwischenzeitlich sind die Module aus China da. Am Arduino ein 
deutlich, deutlich besserer Empfang, in die Leiste eingelötet leider 
noch das gleiche Bild. Wirklich schalten tut diese nur selten bzw 
zufällig.

Ich habe es mal umgekehrt gemacht und den Funkteil der Leiste mit 5V vom 
USB Anschluss versorgt. Das Problem scheint der Decoder zu sein. 
Empfängt der ein gültiges Funksignal wird kurz ein Pin auf High gesetzt, 
dann wieder auf Low. Das passiert nur selten. Aber wenn schaltet es 
auch. Der IC zur Auswertung funktioniert also.

In der Fernbedienung ist ein SC2260-r4 als Encoder mit einem 5,1M Ohm 
Widerstand bei "rosc".

Im Empfänger ist ein PT2272-M4 mit 270k Ohm als "rosc".

Je nachdem welches Datenblatt man zurate zieht passen die Widerstände 
nicht ganz zusammen. War aber schon ab Werk so.
Hab leider auch keine passenden da um mal verschiedene Kombinationen zu 
versuchen und zu schauen ob es besser wird.


PS: Diese ICs arbeiten mit Tristate, also High, Low und Floating (F). 
Nutzt man im Arduino die RCSwitch Bibliothek ist genau dieses auch in 
der Software zu erkennen. Bzw ist Teil des empfangenen Tristate Codes.

mySwitch.sendTriState("FFF0F1F00100");

bedeutet also, dass
A0 unverbunden ist (floating)
A1 unverbunden ist (floating)
A2 unverbunden ist (floating)
A3 auf LOW
A4 unverbunden ist (floating)
A5 auf High
A6 unverbunden ist (floating)
A7 auf LOW


Edit: In diesem Beitrag gibts auch Bilder dazu: 
https://dzrmo.wordpress.com/2012/07/08/remote-control-pt2272-for-android/

: Bearbeitet durch User
von Matthias S. (Firma: matzetronics) (mschoeldgen)


Angehängte Dateien:

Lesenswert?

Kai M. schrieb:
> In der Fernbedienung ist ein SC2260-r4 als Encoder mit einem 5,1M Ohm
> Widerstand bei "rosc".
>
> Im Empfänger ist ein PT2272-M4 mit 270k Ohm als "rosc".

Gut, das ist etwas extrem, aber es ist richtig, das der Dekonderchip 
etwa 2- 30 mal so schnell getaktet wird wie der Koder.
Im Datenblatt des PT2270 von Princeton Tech. wirds erklärt. Sind aber 
über 900k PDF, deswegen lass ich das Hochladen mal sein und poste nur 
die Tabelle.

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.