ADS-B Signale mit dump1090 decodieren und an Flightradar24 senden

Yay, ich habe heute meinen DVB-T Stick aus China bekommen. Nein, ich freue mich nicht jetzt endlich fernsehen zu können, das interessiert mich eigentlich eher gar nicht. Der DVB-T Stick hat eine Eigenschaft, die mich ganz besonders interessiert. Es handelt sich um einen Newsky TV28T V2 mit RTL2832U & R820T Chipsatz und die Besonderheit liegt darin, dass der Chipsatz auf der Frequenz 1090Mhz ADS-B Signale empfangen kann. Das sind praktisch Statussignale zu Flugbewegungen im Luftraum, die von ausgestatteten Flugzeugen direkt ausgesendet werden. Der Stick hat knapp unter 11€ gekostet und ist damit ideal für Einsteiger in diesem Bereich. Selbst die beigefügte Mini-Antenne hat bei mir Flugzeugsignale in maximalen Entfernungen von 200km Luftlinie noch empfangen und dump1090 hat es korrekt decodiert. Für bessere Ergebnisse sollte man sich allerdings eine gute, für den 1090Mhz Bereich geeignete Antenne bauen/kaufen. Anleitungen gibt es im Netz genug. Das werde ich wohl ebenfalls machen, aber dazu schreibe ich später noch einen Blogpost.

Jetzt gehts erstmal an die Einrichtung des Flugradar-Mitlesers. Meinen Stick möchte ich an meinem enorm sparsamen Homeserver, einer auf ARM basierenden Cubox, betreiben. Der hat momentan Debian Wheezy mit einem 3.6.9er Kernel drauf. Analog sollte die kleine Anleitung hier auch mit einem Raspberry PI und Raspian funktionieren. Der Stick wurde sofort erkannt und die Installation konnte losgehen.

Zunächst wird der Treiber für den Stick installiert. Dafür werden folgende Packete benötigt.

apt-get install git-core cmake libusb-1.0-0-dev build-essential

Anschließend habe ich als Root den Treiber geladen, kompiliert und installiert:

git clone git://git.osmocom.org/rtl-sdr.git
cd rtl-sdr
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON
make
make install
ldconfig

Wenn alles korrekt abgelaufen ist sollte ldconfig ohne Fehler beenden und der Stick müsste im nächsten Schritt verwendet werden können.

Wir importieren nun noch Regeln für das neue Gerät in die udev-Regeln (auch als Root)

cd ~
cp ./rtl-sdr/rtl-sdr.rules /etc/udev/rules.d/
reboot

Nun wechseln wir wieder ins Home-Verzeichnis und installieren dump1090. Ich nehme an das geht auch als User sauber durch.

cd ~
git clone git://github.com/MalcolmRobb/dump1090.git
cd dump1090
make

Das wars! Der eigene kleine Plane Plotter ist bereit und wir können beginnen die Signale zu decodieren. Dafür geben wir

./dump1090 --interactive

ein und sehen hoffentlich eine Tabelle mit einigen Fliegern so wie ich hier in Dresden:

dump1090Das ist jetzt zwar ganz nett, aber irgendwie möchte man vielleicht noch etwas mehr mit den Daten machen z.B. sie auf einer Karte visualisieren oder an Projekten wie Flightradar24.com oder anderen teilnehmen und seine decodierten ADS-B Daten beisteuern. Ersteres ist einfach umzusetzen. Mit folgendem Aufruf:

./dump1090 --interactive --net

wird dump1090 mit einem kleinen Webserver gestartet, der die empfangenen Daten als Overlay über eine Google/Openstreetmap Karte legt:

map_adsbJetzt wollte ich auch noch Flightradar24 füttern, habe aber gelesen, dass nur mit der Windows-Anwendung automatisch ein Sharing Key vergeben wird und man ansonsten eine Mail schreiben und lange warten muss. Lange warten kommt selbstverständlich überhaupt nicht in Frage, die Welt braucht doch unbedingt jetzt die Ergebnisse meines 11€ Sticks 😉

Also habe ich die Windows-Anwendung von der Flightradar Software Seite geladen und das „Sign Up“ durchgeführt. Eure aktuelle Position könnt ihr auf gpso.de rausfinden. Den Server, von dem Daten bezogen werden habe ich so angegeben: 10.0.0.136:30003 (IP zeigt natürlich auf die IP eures Homeservers, der die Daten fleißig entschlüsselt)

Wenn dann im folgenden Schritt die ersten Flugzeuge erkannt werden wird ein Sharing Key an eure Mail Adresse verschickt und ihr seid dabei. Das sollte dann so aussehen (vielleicht habt ihr auch ein paar Aircrafts mehr oder weniger):

flightradar_feederNun kann man sich auch noch die kostenfreie Premium Mitgliedschaft abholen indem man auf den Button der kleinen Anwendung klickt und sich mit der gleichen Mail registriert, mit der man auch den Sharing Key geholt hat. Flightradar24 erkennt das und gibt euch automatisch den Premium-Status. Aber das soll ja nur der Einstieg sein, eigentlich möchten wir die Software zur Übermittlung ja auch auf dem Homeserver laufen lassen. Es wäre ja Käse wenn die ganze Zeit ein Windows Rechner nur zu diesem Zwecke läuft.

Um die ARM-Variante zu nutzen laden wir die aktuellste Version aus dem Forum:

wget https://dl.dropbox.com/u/66906/fr24feed_arm-le_233s.tgz

Entpacken und ausführbar machen:

tar xf fr24feed_arm-le_233s.tgz
chmod +x fr24feed_arm-le_233s

Und dann aufrufen mit dem folgenden Befehl aus dem Forum:

FR24AUTHIP=83.140.247.20 ./fr24feed_arm-le_233s --fr24key=YOUR_SHARING_KEY

Super, wenn das jetzt läuft sieht es so aus und wir speisen erfolgreich Flugdaten ein:

feeder_linuxEs wird wohl noch ein Beitrag mit einer Antennenempfehlung folgen. Ich bin zwar schon recht angetan von der Leistung der kleinen Antenne, die momentan sogar nur Indoor steht, aber auf die Dauer muss da eine größere her damit es sich auch lohnt. Ein bisschen schade allerdings ist, dass ich hier in der Region vermutlich als Quelle so schnell nicht herangezogen werde, da fast alles von EDDC1 und EDDC2 abgearbeitet wird und mein Alias eine Nummer im zweistelligen Bereich hat. Trotzdem erhalte ich eine kostenfreie Premium Mitgliedschaft bei Flightradar24 und kann mich daran erfreuen, dass mein Homeserver eine weitere Aufgabe hat.

Meine dump1090 Auswertung ist auch live zu beobachten.

Wie immer viel Spaß beim nachmachen!

2 Gedanken zu „ADS-B Signale mit dump1090 decodieren und an Flightradar24 senden

  1. Pingback: Wie kann der Raspberry Pi empfangene Flugdaten an Flightradar24 senden? | Wenzlaff.de: Rund um die Programmierung

  2. Pingback: Flug Daten empfangen |

Kommentare sind geschlossen.