Adsb2aprs

Aus DXL-Wiki
Zur Navigation springen Zur Suche springen

Beschreibung von adsb2aprs

adsb2aprs ist ein Tool welches Flugzeugdaten im ADSB Format auf der Frequenz 1090 MHz von dump1090 auswertet und daraus APRS-Objekte erstellt und über AXUDP weitergibt. Die AXUDP Pakete können dann von jedem AXUDP fähigen Tool weiterverarbeitet werden, beispielsweise von aprsmap, udpgate4, udpbox oder udpflex.

Adsb2aprs-map.png

Darstellung der erzeugten APRS-Pakete in aprsmap

Man sollte keinesfalls diese Objekte in das APRS-IS-Netzwerk einspeisen, da diese Vielzahl an Daten unter Umständen zu einer sehr großen Datenflut führen können. Außerdem ist deren Informationsgehalt auf einer Amateurfunkkarte auch zweifelhaft. Man sollte sich dies also entweder nur lokal "ansehen", z.B. in APRSMAP, oder die Daten auf einer eigenen Webseite zur Ansicht bereitstellen. Aber bitte niemals ins APRS-IS einspeisen.

Vorbereitungen

dump1090 ist nicht Bestandteil der dxlAPRS Tools und muss vorher wie folgt installiert werden.

Wechsel in das Home Verzeichnis

cd ~

Installation der librtlsdr-dev, wird für das kompillieren von dump1090 benötigt

sudo apt-get install librtlsdr-dev

Klonen des Github repositorys von dump1090 (Achtung, es gibt verschiedene Versionen. Diese hier lässt sich jedenfalls einwandfrei dekodieren)

git clone https://github.com/joergsteinkamp/dump1090

Wechsel in das dump1090 Verzeichnis

cd dump1090

dump1090 kompillieren

make

Nun befinden sich in ~/dum1090 die Programmdateien.

Übersicht der Parameter von adsb2aprs

adsb2aprs -h

dump1090 basestation format tcp output to aprs object beacon

 -a <meter>          correct altitude -a 50 (0)
 -b <seconds>        aprs minimum send intervall -b 10 (20)
 -c <comment>        append text to beacon
 -h                  help
 -I <mycall>         Sender of Object Callsign -I OE0AAA
 -k                  keep tcp connection
 -s <symbol>         aprs symbol (/^)
 -t <url:port>       connect dump1090 tcp server (127.0.0.1:30003)
 -u <ip>:<port>      send AXUDP -u 127.0.0.1:9001 use udpgate4 or aprsmap as receiver
 -v                  verbous
example: -t 127.0.0.1:30003 -I YOURCALL-11 -u 127.0.0.1:9002 -k -v -c 1090MHz
before this start "dump1090 --net"


Starten von adsb2aprs

Vor dem Start von adsb2aprs muss dump1090 gestartet werden (individuellen Programmpfad beachten!):

dump1090 --aggressive --net --interactive
  • Der Parameter "aggressive" ermöglicht eine tiefere Dekodierung, benötigt aber mehr CPU-Power.
  • Der Parameter "net" aktiviert die Netzwerkfunktionen, die wir für die Verbindung mit adsb2aprs benötigen. Es wird der Port 30003 TCP verwendet.
  • Der Parameter "interactive" zeigt auf dem Bildschirm eine Übersicht der empfangenen Daten an. Kann bei headlessbetrieb weggelassen werden.

adsb2aprs wird wie folgt gestartet:

adsb2aprs -I MYCALL -t 127.0.0.1:30003 -u 127.0.0.1:9105 -k -v
  • Parameter "I" bezeichnet das Absenderrufzeichen, mit dem die APRS-Objekte in das APRS-NETZ eingespeist bzw. an ein APRS-Programm weitergeleitet werden
  • Parameter "t" bezieht sich auf die Quelle der Daten, also die Schnittstelle zu dump1090 (TCP 30003)
  • Parameter "i" nenn das Ziel, also Rechner-IP und Port, für die Übertragung der AXUDP APRS Pakete (Gleicher PC, Port 9105 - da lauscht z.B. APRSMAP)
  • Parameter "k" sorgt dafür dass das Programm nicht abbricht wenn z.B. dump1090 sich beendet (keep connection)
  • Parameter "v" zeigt die ADSB Rohdaten an Bildschirm an (nicht notwendig bei headlessbetrieb).

Auführliche Parameterbeschreibung

Parameter Beschreibung
a <meter> Korrigiere Objekhöhe, z.B. -a 50 (Standard = 0).
b <seconds> Minimales APRS Sendeintervall, z.B. -b 10 (Standard = 20).
c <Kommentar> Fügt diesen Text der Bake hinzu.
h Hilfetext.
I <mycall> Rufzeichen des Absenders, der das APRS-Objekt veröffentlicht, z.B. -I OE0AAA.
k Sorgt dafür dass das Programm nicht abbricht wenn z.B. dump1090 sich beendet (keep connection).
s <symbol> Auswahld es APRS Symbols für die erzeugten Objekte (Standard = /^ ).
t <url:port> Verbindung mit dem dump1090 TCP Server (Standard = 127.0.0.1:30003).
u <ip>:<port> Sende AXUDP Pakete an das Ziel, z.B. -u 127.0.0.1:9001 (Benutze udpgate4 oder aprsmap als Empfänger.
v Zeige Daten in der Bildschirmausgabe

Beispielausgaben

Beipsielausgabe von dump1090 mit "Interactive"-Parameter zum mitlesen:

Dump1090.png

Beispielausgabe von adsb2aprs:

Adsb2aprs.png

Antennen für ADSB Empfang

Um die Informationen auf 1090 MHz zu empfangen, braucht es nicht unbedingt eine Spezialantenne. Allerdings sind die bekannten 2m/70cm Rundstrahlantennen von Diamond etc. sehr ungeeignet. Erste Test mit einer X30 führten bei einer Beobachtungsdauer von Abends bis MOrgen zu keinen Ergbnissen, es war einfach NULL Empfang da. Ganz anders sieht es aus bei Rundstrahlantennen, welche das 23cm Band mit abdecken. Hier ist zumindest "etwas" Empfang möglich, da es eine Resonanz in der "Nähe gibt", da der 23cm Bereich von 1240 bis 1300 MHz geht. Es ist also nicht so weit von der Resonanz weg wie eine reine 2m/70cm Antenne. Trotzdem geht es sehr schlecht.

Noch besser wäre natürlich eine spezielle Antenne für ADSB Empfang auf 1090 MHz, davon gibt es auf den üblichen Marktplätzen einiges zu kaufen. Man kann sich aber selbst einen einfachen Dipol basteln. Bei einer Schenkellänge von je ca. 6,5cm kommt man auf ca. 13cm Gesamtlänge und erhält einen wunderbaren Halbwellendipol für ADSB Empfang.

1090dipol.jpg