Forum: HF, Funk und Felder 433 MHz oder 434MHz SDR signal dekodieren


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Markus (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Heute morgen habe ich mittels eines TV-Sticks als SDR-Dekoder das obige 
AM-demodulierte Signal empfangen.

Ich vermute, es könnte sich um einen Temepratursensor handeln. Kennt 
jemand das Format?

: Verschoben durch Moderator
von Christopher J. (christopher_j23)


Bewertung
0 lesenswert
nicht lesenswert
RTL433 ist so eine kleine nette Software, die von Haus aus auch einige 
Wetterstationen unterstützt. Einfach mal drauf loslassen:

https://github.com/merbanan/rtl_433

von Markus (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Danke für den Link. Ziemlich interessant.

Ich habe mal folgendes Kommando ausprobiert:
1
 rtl_433 -A

und erhalte
1
Detected OOK package  @ 2017-08-07 16:20:04
2
Analyzing pulses...
3
Total count:   46,  width: 35917    (143.7 ms)
4
Pulse width distribution:
5
 [ 0] count:    4,  width:   258 [256;260]  (1032 us)
6
 [ 1] count:   42,  width:   143 [141;156]  ( 572 us)
7
Gap width distribution:
8
 [ 0] count:    4,  width:   251 [251;252]  (1004 us)
9
 [ 1] count:    1,  width:  2011 [2011;2011]  (8044 us)
10
 [ 2] count:   13,  width:  1020 [993;1041]  (4080 us)
11
 [ 3] count:   27,  width:   465 [443;491]  (1860 us)
12
Pulse period distribution:
13
 [ 0] count:   31,  width:   595 [507;635]  (2380 us)
14
 [ 1] count:    1,  width:  2156 [2156;2156]  (8624 us)
15
 [ 2] count:   13,  width:  1164 [1136;1184]  (4656 us)
16
Level estimates [high, low]:  16002,     80
17
Frequency offsets [F1, F2]:   18569,      0  (+70.8 kHz, +0.0 kHz)
18
Guessing modulation: Pulse Width Modulation with multiple packets
19
Attempting demodulation... short_limit: 200, long_limit: 492, reset_limit: 2012, demod_arg: 0
20
pulse_demod_pwm(): Analyzer Device
21
bitbuffer:: Number of rows: 15 
22
[00] {5} 08 : 00001
23
[01] {1} 80 : 1
24
[02] {3} e0 : 111
25
[03] {1} 80 : 1
26
[04] {5} f8 : 11111
27
[05] {2} c0 : 11
28
[06] {6} fc : 111111
29
[07] {1} 80 : 1
30
[08] {2} c0 : 11
31
[09] {3} e0 : 111
32
[10] {4} f0 : 1111
33
[11] {2} c0 : 11
34
[12] {4} f0 : 1111
35
[13] {6} fc : 111111
36
[14] {1} 80 : 1

Ich weiß noch nicht ganz, wie ich das interpretieren soll aber
ich würde aber eher glauben, dass das Signal eine Art 
Manchestercodierung ist und nicht PWM.

von Markus (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier noch der Wasserfallgraph.
Man sieht das kleine Datenpaketchen bei 433MHz und Sekunde 12.

von Christopher J. (christopher_j23)


Bewertung
0 lesenswert
nicht lesenswert
Dem Wasserfalldiagramm nach glaube ich eher, dass es sich um FSK 
handelt. Man erkennt ganz gut den Frequenzsprung im Bereich wo das Paket 
gesendet wird. Also sehr wahrscheinlich keine Wetterstation, weil die 
soweit ich weiß meistens mit OOK modulieren. Könnte alles mögliche sein. 
Vielleicht die Funkfernbedienung von einem PKW.

RTL_433 demoduliert soweit ich weiß grundsätzlich nur OOK. Wenn du das 
eine Weile laufen lässt solltest du sehen ob da eine bei dir in der nähe 
ist, weil wirklich sehr viele Modelle unterstützt werden. Ich habe hier 
so 2-3 Stück auf dem Schirm.

: Bearbeitet durch User
von Michael M. (Firma: DO7TLA) (do7tla)


Bewertung
0 lesenswert
nicht lesenswert
Gibt es das Programm auch für Windows?
Oder gibt es ein Plugin für SDR#?

von Markus (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Es ist GnuRadio:
https://www.gnuradio.org/
Du kannst ja mal schauen, ob es eine Windows-Version gibt.

Christopher Johnson (christopher_j23) schrieb
>Dem Wasserfalldiagramm nach glaube ich eher, dass es sich um FSK
>handelt.

Das Signal aus dem ersten Post ist aber einfach mit

rtl_fm -f 433.844M -M am -r 24000 > signal.dat

aufgenommen worden. "-M am" steht hier für AM-Demodulation und es sieht 
ja ziemlich gut aus.

von Markus (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
>Könnte alles mögliche sein.
>Vielleicht die Funkfernbedienung von einem PKW.
Das scheint mir auch eher unwahrscheinlich, dazu sendet es zu 
regelmäßig.

Im Anhang mal das aktuelle Signal. Man kann es in Audacity importieren:

import->rohdaten ( int16_t, Mono )

von Christopher J. (christopher_j23)


Bewertung
0 lesenswert
nicht lesenswert
Michael M. schrieb:
> Gibt es das Programm auch für Windows?

Falls du RTL_433 meinst, kann ich dir nichts definitives sagen. Im 
Source-Code gibt es ein #ifdef WIN32_API aber ob und mit welchem Aufwand 
man es unter Windows kompiliert bekommt oder ob es sogar fertige 
Binaries gibt, weiß ich nicht.


Markus schrieb:
>>Könnte alles mögliche sein.
>>Vielleicht die Funkfernbedienung von einem PKW.
> Das scheint mir auch eher unwahrscheinlich, dazu sendet es zu
> regelmäßig.

Es könnte auch von einer Alarmanlage (im PKW) sein. Aber warum 
interessiert dich das denn so brennend, wo das her kommt?

von Michael M. (Firma: DO7TLA) (do7tla)


Bewertung
0 lesenswert
nicht lesenswert
Schade.
Extra dafür ein Linuxrechner aufsetzen wäre für mich overkill.
Da ich bereits unter Windows ein Airspy One mit SDR# am laufen habe.
Auf 433MHz kann ich im Wasserfall sehr viele Datenbursts sehen.

Ich wollte mehrere Temperatursensoren aus der Nachbarschaft empfangen 
und dann die Durchschnittstemperatur berechnen.
Daher hatte ich gehofft das es eine entsprechende Windowsanwendung geben 
würde.

: Bearbeitet durch User
von Markus (Gast)


Bewertung
0 lesenswert
nicht lesenswert
>Ich wollte mehrere Temperatursensoren aus der Nachbarschaft empfangen
>und dann die Durchschnittstemperatur berechnen.

So ähnlich ist auch meine Idee. Da ich die letzten Jahre mehrere 
Wetterstationen hatte und die irgendwann den Außentemperatursensor nicht 
mehr empfangen haben, habe ich mir überlegt, einfach die vorhandenen 
Signal anderer Sensoren zu nutzen und diese z.B. mit einem Arduino und 
einem dieser 433MHz Module auszuwerten:

https://eckstein-shop.de/433Mhz-RF-Wireless-Sender-Empfaenger-Modul-Transmitter-Receiver-Kit-Arduino?curr=EUR&gclid=EAIaIQobChMItaXolofH1QIVBuAbCh08SQNHEAQYASABEgLHnPD_BwE

von Christopher J. (christopher_j23)


Bewertung
0 lesenswert
nicht lesenswert

von Markus (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Sehr gut, bin mal gespannt, ob Du damit was aus der Umgebung dekodieren 
kannst.

Ich habe gerade mal die Signalleitung am Empfänger meiner alten 
Sigma-Wetterstation angezapft. Ergebnis: ein wildes Gezappel auf der 
Datenleitung.
Wenn ich testweise einen 433MHz Sender mit Dauerstrich einschalte, geht 
die Datenleitung konstant auf 1. Damit ist denke ich bewiesen, dass die 
einfachen verbauten Empfänger mittlerweile Haufenweise Störungen aus der 
Umgebung einsammeln und deshalb die Außentemperatursensoren nicht mehr 
funktionieren.

Hier hat jemand die 433MHz Empfänger untersucht und als besseren Ersatz 
einen RXB12 vorgeschlagen:

https://blog.thesen.eu/433mhz-empfaenger-fuer-arduino-co-rxb12-vs-xy-mk-5v/

von Markus (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich sehe gerade, der Artikel bezieht sich auf einen MC-Netz Thread:
Beitrag "Re: Mit 433Mhz XY-MK-5V REV Funksteckdosen schalten"

von Georg A. (georga)


Bewertung
0 lesenswert
nicht lesenswert
Markus schrieb:
> Ergebnis: ein wildes Gezappel auf der Datenleitung.

Das ist ganz normales Rauschen und nicht unbedingt Datenmüll anderer 
EMpfänger. Da stecken ja meistens einfachste Pendelempfänger mit 2-3 
Transis drin, denen bleibt gar nichts anderes übrig als zu rauschen...

von Arduinoquäler (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Markus schrieb:
> Ich habe gerade mal die Signalleitung am Empfänger meiner alten
> Sigma-Wetterstation angezapft. Ergebnis: ein wildes Gezappel auf der
> Datenleitung.

Das kommt davon wenn man von dieser Empfangstechnik keinen
blassen Schimmer hat.

von Axel R. (Gast)


Bewertung
0 lesenswert
nicht lesenswert
man ertappt sich tatsächlich, nach den Facebook - "likeys" zu suchen.
Lasst uns das Ranking "ausweiten" haha.
 - Gefällt mir
 - Erstaunt
 - Traurig
 - Wütend
usw. :))

StromTuner

von Markus (Gast)


Bewertung
0 lesenswert
nicht lesenswert
>Das ist ganz normales Rauschen und nicht unbedingt Datenmüll anderer
>EMpfänger. Da stecken ja meistens einfachste Pendelempfänger mit 2-3
>Transis drin, denen bleibt gar nichts anderes übrig als zu rauschen...

Das es ein Pendelempfänger ist, wurde in diesem Link schon erwähnt:

https://blog.thesen.eu/433mhz-empfaenger-fuer-arduino-co-rxb12-vs-xy-mk-5v/

Allerdings glaube ich, dass Deine Erklärung falsch ist weil ich 
verschiedene Module getestet habe und bei manchen die Störungen nicht 
auftreten.

von Markus (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht kennt sich von euch jemand mit dem CC1101 aus.
Der Chip bietet intern verschiedene Demodulationsarten und eine direkte 
Signaldekodierung an.
Kann man damit z.B. OOK auswählen und die Temperatursensoren auswerten 
indem man das Protokoll extern implementiert?
Wenn der RSSI schnell genug "geupdated" wird, könnte man den eventuell 
dazu missbrauchen.

von Markus (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier mal ein erster Versuch der manuellen Signalanalyse.
Das Signal hat eine Präamble von 12 Bit, dann eine 2 Bit dauernde 
On-Periode ( wahrscheinlich um das Ende der Präamble anzuzeigen ), dann 
kommen 32 Datenbits.
Möglicherweise bin ich bei den Datenbits um 1 Bit verutscht.

von Aron A. (arone)


Bewertung
0 lesenswert
nicht lesenswert
Kennst du Universal Radio Hacker. Ich habe es noch nicht ausprobiert 
aber das könnte sowas vielleicht dekodieren.

von Markus (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Meinst Du das hier?:
https://github.com/jopohl/urh
Könnte ich mal probieren. Mal sehen ..

von Aron A. (arone)


Bewertung
0 lesenswert
nicht lesenswert
Ja genau das

von Christopher J. (christopher_j23)


Bewertung
0 lesenswert
nicht lesenswert
Markus schrieb:
> Vielleicht kennt sich von euch jemand mit dem CC1101 aus.
> Der Chip bietet intern verschiedene Demodulationsarten und eine direkte
> Signaldekodierung an.
> Kann man damit z.B. OOK auswählen und die Temperatursensoren auswerten
> indem man das Protokoll extern implementiert?
> Wenn der RSSI schnell genug "geupdated" wird, könnte man den eventuell
> dazu missbrauchen.

Ja, mit dem CC1101 geht das. Der hat sogar drei GPIO, die kannst du so 
konfigurieren, dass an einem von denen direkt das demodulierte OOK 
herauskommt, also quasi so etwas wie in dem Signalverlauf in deinem 
ersten Post.

Es gibt dafür auch eine Opensource-Firmware, wo genau das implementiert 
ist:
https://github.com/heliflieger/a-culfw

Ich benutze die z.B. um Funksteckdosen, Licht und Rollläden zu schalten. 
Empfangen geht aber auch. Die Firmware ist, naja sagen wir mal 
"durchwachsen", macht aber was sie soll. Die CUL-Firmware ist für 
verschiedenste Geräte gemacht, funktioniert aber unter anderem wunderbar 
mit einem Maple-Mini:
https://github.com/heliflieger/a-culfw/tree/master/culfw/Devices/MapleCUN

von Markus (Gast)


Bewertung
0 lesenswert
nicht lesenswert
>Ja, mit dem CC1101 geht das. Der hat sogar drei GPIO, die kannst du so
>konfigurieren, dass an einem von denen direkt das demodulierte OOK
>herauskommt, also quasi so etwas wie in dem Signalverlauf in deinem
>ersten Post.

Das hört sich gut an, danke :-)
Ich habe die Dinger schon bestellt und morgen müssten sie ankommen.
Mittlerweile bin ich der Meinung, dass die alten 433Mhz Pendelemfänger, 
wie sie früher in den billigen Wetterstationen eingebaut wurden, heute 
völlig unbrauchbar sind, weil es einfach viel mehr Störer gibt. Ich 
vermute darin den Grund, warum die Außentemperatursensoren nach und nach 
allen nicht mehr gingen.
Vielleicht kann ja jemand diese Erfahrung bestätigen.

von John (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Markus,

"... dass die alten 433Mhz Pendelemfänger, ... , heute
völlig unbrauchbar sind, ..."

Das ist in dieser verallgemeinernden Form sicher nicht zutreffend. Es 
kommt auf die Anforderungen und die Umstände an. Wenn ich 2m Distanz und 
2 Glasscheiben für die Übermittlung der Aussentemperatur zu überwinden 
habe, dann ist ein Doppeluper sicher keine günstige Lösung und der 
Pendler nach meiner Erfahrung meistens mehr als ausreichend.

In anderen Situationen kann mehr Aufwand die Empfangs Zuverlässigkeit 
verbessern. Garantiert wird dir das aber auch nicht.

Die meisten Pendler scheinen ohne Signal zu rauschen. Manche haben eine 
Rauschsperre in der hw oder sw eingebaut. Während der Präambel 
verschwindet das Rauschen bei ausreichender Feldstärke.

Das alles kannst du im Skop oder mit einer einfachen Koppelschaltung mit 
der Soundkarte des PC ansehen.

Zur Frage der Dekodierung der Temperatur: Die Dekodierung eines 
Telegramms wird nie eindeutig sein können. Sammle Telegramme über drei 
Tage verteilt ein. Das lässt sich einfach automatisieren. So kommst du 
zu einer interpretierbaren Datenbasis. Bei Minustemperaturen, beim 
Übergang zu mehr oder weniger Stellen, sieht man wieder ein wenig mehr.

von Marcel (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo allerseits,

Der Beitrag ist zwar schon etwas älter aber ich denke das passt ganz gut 
hier rein.
Hat jemand eine Idee um welches Signal es sich im angehängten Bild 
handeln kann?

Schönen Sonntag noch,

Marcel

von Michael M. (Firma: DO7TLA) (do7tla)


Bewertung
0 lesenswert
nicht lesenswert
Christopher J. schrieb:
> Habe doch was gefunden:
> https://cognito.me.uk/computers/rtl_433-windows-binary-32-bit/


Hab ich ausprobiert.
Funktioniert nicht mit dem Airspy One.
Die Exe Datei wirft eine Fehlermeldung wenn ich in den Ordner die 
Airspy.dll aus dem SDR# Ordner einfüge.
Auch ein Austauschen der rtlusb.dll bringt eine Fehlermeldung.

Beim starten der Exe geht kurz das CMD Fenster auf und schließt sich 
gleich wieder.

von Hörer (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Michael M. schrieb:
> Hab ich ausprobiert.
> Funktioniert nicht mit dem Airspy One

Schon mal daran gedacht, dass eine explizit für RTL-SDR Sticks 
geschriebene Software nur mit eben solchen Sticks funktioniert?

Der Airspy One nutzt zwar den gleichen Tunertyp (Rafael Micro R820T2) 
wie viele RTL-SDRs aber eben einen 12-bit ADC, un nicht den 8-bittigen 
RTL2832U.

von Michael M. (Firma: DO7TLA) (do7tla)


Bewertung
0 lesenswert
nicht lesenswert
Dann muss ich mal schauen ob ich noch einen RTL2832U Stick rumfliegen 
habe und mit diesen das ganze testen.

[Edit]

Hab noch ein Stick gefunden.
Mit Zadig den USB Treiber Installiert und danach die Exe gestartet und 
schon Purzeln die Temperaturen nur noch so rein.

: Bearbeitet durch User
von Michael M. (Firma: DO7TLA) (do7tla)


Bewertung
0 lesenswert
nicht lesenswert
Ist es möglich die Frequenz von dem Programm zu ändern?
Hierbei dachte ich an das 868MHz SRD Band.
In diesen Funken auch eine ganze reihe Funkthermometer.

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Markus schrieb:
> ... aber ich würde aber eher glauben, dass das Signal eine Art
> Manchestercodierung ist und nicht PWM.

Das kann kaum sein. Bei Manchestercodierung müsste pro Bit ein Wechsel 
vorhanden sein. Das passt nicht zu den langen konstanten Pegeln nach dem 
Einpegelsignal.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.