Wie weit kann der Empfang von Transpondersignalen von Flugzeugen maximal gehen?

In einen Beitrag Raspberry Pi: Höhenunterschiede mit heywhatsthat.com visualisieren hatte ich vor 4 Jahren schon mal über die visualisierung der Höhenunterschiede berichtet. Mit der Seite kann aber auch die maximal mögliche Empfangsreichweite visualisiert werden. Also: Wie weit kann der Empfang von Transpondersignalen von Flugzeugen maximal gehen, wenn wir berücksichtigen das die Erde eine Kugel ist?

Das hängt ja von der Höhe der Antenne, dem Empfangsort, die Flughöhe der Flugzeuge, dem Wetter und auch der Landschaft ab. Wer direkt vor einem Berg seine Antenne hat, empfängt halt auch nicht viel. Dann gibt es auch noch andere Parameter, wie Antennenart, Empfindlichkeit, stärke des Sendesignals und andere Dinge, die wir heute hier nicht berücksichtigen wollen.

Folgende vier Schritte sind nötig:

1. Auf die Seite heywhatsthat.com gehen

2. Auf den Reiter „New panorama“ klicken:

3. Auf der Maske 1. die Latitude z.B. 52.438837 2. die Longitude z.B. 9.742816 des Antennenortes eingeben. 3. die Höhe der Antenne z.B. 54 m und „above sea level“ markieren 4. einen Titel z.B. Langenhagen www.wenzlaff.info und 5. nicht vergessen auf Metric zu schalten, dann abschließend auf 6. Submit request klicken. Dann eine Minute wegschauen, da Werbung eingeblendet wird:

4. Auf der Seite dann oben Rechts auf den Reiter „Up in the Air“ klicken „Wie weit kann der Empfang von Transpondersignalen von Flugzeugen maximal gehen?“ weiterlesen

Mehrfach lesen auf 1090 Mhz mit einem Raspberry Pi via rtl_map aktuell ohne B737 Max 8 und Max 9 Signale

Wie hier beschrieben kann das rtl_map Programm für die Darstellung der Frequenz verwendet werden.

Jetzt gibt es in dem Programm rtl_map seit ein paar Tagen einen neuen Parameter -n. Mit diesem kann nun die Anzahl der lese Vorgänge angegeben werden. Ok, dann mal eine Messung 10 Wiederholen (ca. 5000 Werte) und in eine Datei schreiben:

rtl_map -f 1090000000 -D -C -n 10 – > capture.dat

und dann die Grafik wie oben mit Gnuplot erzeugen.

Hier noch alle Parameter von rtl_map:

Graphische Darstellung des 1090 MHz Frequenzspektrum mit SDR auf einem Raspberry Pi mit rtl_map und Gnuplot in EDDV

Wir wollen so ein Darstellung von 500 Messungen bei 1090 MHz mit einer Sample-Rate von 2048000 Hz erstellen (Messung 2.3.2019, 12:05 Uhr in Langenhagen):

Zuerst holen wir uns den Quellcode des rtl_map und bauen uns die Anwendung. Dann installieren wir das Programm.

Entweder diese Befehl ausführen oder aber laden und das Script ausführen. „Graphische Darstellung des 1090 MHz Frequenzspektrum mit SDR auf einem Raspberry Pi mit rtl_map und Gnuplot in EDDV“ weiterlesen

SDR auf den Pi: Generieren von Wasserfall Diagrammen mit rtl_power und heatmap.py nicht nur für ACARS Frequenzen

Mit einem SDR kann man Frequenzen überwachen. Mit rtl_power kann man dann CSV Dateien schreiben und diese dann mit einem Python Script in eine schöne übersichtliche Wasserfall Grafik umwandeln. Da kann man dann leicht sehen was für Aktivität auf den jeweiligen Frequenzen los war. Hier in Hannover ist halt nicht so viel los. Und das alles auf einen kleine Raspberry Pi.

Ich hatte vor einem Jahr schon mal davon berichtet, wie das mit meinem Java Programm geht. Nun wollte ich mal das Python Script ausprobieren was ich auf GitHub gefunden habe.

Wir nehmen mal die ACARS Frequenzen, andere siehe in dieser Tabelle.

Hier ein Auszug was so auf den Frequenzen läuft:

Wir starte rtl_power im Frequenzbereich 131 MHz bis 132 MHz, schreiben alle 10 Sekunden das Ergebnis in 1 KHz Schritten in die airband-131.000-131.999M-1k-12h.csv Datei und lassen das ganze 12 Stunden laufen. Als Korrekturfaktor gebe ich 48 ppm mit, das ist für andere Sticks natürlich ein anderer Wert, kann aber auch weggelassen werden.

Dann wandeln wir die erzeugte CSV Datei mit dem Python Script heatmap.py um. Wir schreiben alle 15 Minuten für die Y-Achse einen Zeit-Label und verwende die twente Palette, die gefällt mir am Besten:

An dem Diagramm sehen wir auch, das der Scann-Prozess nach 3 Stunden abgebrochen ist. Aber drei Stunden reichen auch:

Es können auch noch andere Paletten verwendet werden: „SDR auf den Pi: Generieren von Wasserfall Diagrammen mit rtl_power und heatmap.py nicht nur für ACARS Frequenzen“ weiterlesen

Diskrete Fourier-Transformation (DFT) mit FFTW 3.3.8 auf dem Raspberry Pi compilieren und installieren

Für manche (SDR) Projekt wird die FFTW Lib für die Diskrete Fourier-Transformation (DFT) benötigt. Die kann auf dem Raspberry Pi in ca. 1 Stunde installiert werden. Der Compile dauert halt auf dem armv6 etwas.

Das geht so … „Diskrete Fourier-Transformation (DFT) mit FFTW 3.3.8 auf dem Raspberry Pi compilieren und installieren“ weiterlesen

GnuRadio Beispiel Script mit gnuradio-companion erstellen

Wenn auf einem im Netz laufenden Raspberry Pi per tcp zugegriffen werden soll, wie hier beschrieben um gnuradio Flows zu erstellen geht das durch starten von:

gnuradio-companion

Dieses kann zuvor mit sudo port install gnuradio installiert werden.

Dann den ersten Flow eines SDRs erstellen. Download des Beispiel Scriptes aus meinen GitLab Projekt. Nur noch die IP-Adresse des Pis anpassen. Es steht dort ein TODO. Oder zur Übung selbst erstellen:

Nach klick auf Start, sind die beiden Tabs mit der Zeit und der Frequenz sichtbar:

„GnuRadio Beispiel Script mit gnuradio-companion erstellen“ weiterlesen

Wie können SDR Signale vom Raspberry Pi SDR-Server per tcp im ganzen Netzwerk auf den Mac (Windows) übertragen werden?

Wir können auf dem Raspberry Pi die Signale empfangen werden und dann per tcp die Darstellung auf dem Mac (Window analog) mit gqrx durchgeführt werden. Der Raspberry Pi wird dann nicht mit GUI usw. belastet. Die Signale werden also im Netz verteilt.

Der Raspberry PI kann also zum SDR Server im Netzwerk werden und damit Funksignale an einen Client über IP senden. Dafür reicht ein einfacher DVB-T USB-Stick mit dem RTL2832U-Chipsatz. Wichtig ist beim Betrieb als Server, dass der Raspberry Pi nur das Signal empfängt und über tcp IP bereitstellt. Die eigentliche Verarbeitung, die CPU-Last kostet, erfolgt erst auf dem Client dem Mac-Rechner (Windows analog).

Auf dem Raspberry Pi das rtl_tcp installieren wie in diesem Block schon mal beschrieben. Das aktuelles Script liegt im GitLab Projekt. Dann starten mit

sudo rtl_tcp -a Adresse-des-Pi -P 48

wobei der Korrekturfaktor optional ist:

Gqrx auf dem Mac installieren über sudo port install gqrx das Gqrx installieren.

Dann gqrx starten. Es erscheint der Dialog (nachdem man auf ja geklick hat):

Dort den Verbindungsstring von oben in Device string eingeben: rtl_tcp=10.0.0.0:1234 und die anderen Parameter, es erscheint dann die GUI des gqrx Programms.

Wenn man noch nichts hört, das müsste ja bei 96.2 MHZ NDR2 sein, dann Mode und Gain wie oben auf dem Foto einstellen.

So Radio mit UKW und FM läuft. Jetzt kommen die interessanteren Frequenzen 😉

Raspberry Pi: Wie kann für ein SDR Empfänger die Frequenz Korrektur ermittelt werden um den Frequenzdrift zu kompensieren?

Da die Empfangs DVB-Sticks mit der Zeit einen Frequenzdrift haben, kann ein Korrektur-Faktor in ppm ermittelt werden. Das geht auch mit rtl_test und so brauch nicht ein extra Programm (kal) installiert werden.

Einfach rtl_test -p aufrufen und ein paar Minuten warten …

… wenn der Wert ganz aussen rechts sich nicht mehr groß ändert, kann der Faktor für diesen einen Stick verwendet werden. Das Programm dann mit Strg-C abbrechen. In meinem Fall 48 ppm.

Das kann dann bei vielen Programmen als Faktor übergeben werden, z.B. bei DUMP1090: ./dump1090 –ppm 48 –interactive