III. Der RasPi als RTL-SDR Server mit einem DVB-T USB-Stick

RasPi als ADS-B Flugtransponder Mode S Decoder

Mit Fertigstellung der RTL-SDR-Installation und ggf. der Kalibrierung im vorherigen Part II, kann nun der ADS-B Decoder dump1090 installiert werden.

  1. Laden wir erst einmal den Sourcecode herunter:
git clone git://github.com/MalcolmRobb/dump1090.git
  1. Mit nachfolgenden Befehlen wechseln wir in das Installationsverzeichnis und starten den Kompilierungsvorgang mit der Installation:
cd dump1090
make
  1. Es gibt nun wieder mehrere Optionen mit dem ADS-B Decoder Dump1090 durchzustarten.
  2. Wechseln wir erst in das Installationsverzeichnis
cd ~/dump1090

  1. Alle verfügbaren Optionen des ADS-B Decoders werden mit folgendem Befehl angezeigt:
./dump1090 --help
  1. Eine Liste der gerade erreichbaren Flugzeuge mit Ihren Transpondern wird erstellt mit:
./dump1090 --interactive
  1. Um die Daten im metrischen Format anzeigen zu lassen. Geben wir folgendes auf der Kommandozeile des Terminals ein:
./dump1090 --interactive --metric
  1. Sogar im Webbrowser lassen sich die Flugzeuge auf einer Karte mit Google Maps durch das integrierte http Interface betrachtet werden. –aggressive bedeutet hier zusätzliche Rechenleistung.
./dump1090 --enable-agc --aggressive --net --net-http-port 8080
ADS-B
ADS-B
  1. Mit nachfolgender Zeile wird DUMP1090 in beiden Modi sowohl Interaktiv als auch Servermode über Port 8080 gestartet.
./dump1090 --enable-agc --aggressive --interactive --interactive-ttl 300 --net --net-http-port 8080 --ppm -6 --modeac
  1. Starten wir nun im Netzwerk von einem PC den Browser mit <IP-Adresse:Port>. Bei mir derzeit mit:

http://192.168.1.49:8080

  1. Starten wir den Browser jedoch lokal vom Raspberry Pi per SSH, lautet die Adresse mit die der Browser gefüttert werden muss:

http://127.0.0.1:8080

  1. Ist erst alles einmal gestartet und läuft auch einwandfrei, können wir noch einige Tunings durchführen.
  2. Im Unterordner public_html editieren wir die Datei config.js um u. a. unsere lokale Position zu hinterlegen. Die Geolokation lässt sich am simpelsten über Google Maps herausbekommen. Im nachfolgenden Beispiel hier sind die Koordinaten in Rot markiert https://www.google.de/maps/@52.3772867,9.8535387,14.25z. Die Zeile Metric ändern wir von false auf true. Den CONST_ZOOMLVL ändern wir von 5 auf 7 um mehr lokale Details zu bekommen. Mit set SiteCircles=true wird die Entfernung in konzentrischen Kreisen angezeigt.
  • CONST CENTERLAT = 52.3772867
  • CONST CENTERLON = 9.8535387
  • SiteCirclesDistances = new Array(50,100,150,200)
cd public_html
sudo nano config.js
  1. Mit CTRL+x und Bestätigung mit j speichern und beenden wir unsere gewünschten Änderungen.
  2. Mit –ppm kann eine mögliche Toleranz des lokalen Oszillators wie hier bei mir z. B. mit –6 ppm ausgeglichen werden, damit einerseits eine Frequenzanzeige auch stimmig ist, andererseits der Empfänger auch korrekt abgestimmt ist, um die maximale Empfindlichkeit zu erreichen.
  3. Mit –interactive-ttl 300 setzen wir im Interactive Mode optional einen Timeout von 5 Minuten.
  4. Auch auf den telnet Ports 30002 und 30003 kann bei Bedarf interessante Kommunikation verfolgt werden.

telnet localhost 30002

  1. Der in Dump1090 verwendete Webserver verarbeitet die Daten über den Port 47806. Würden wir diese über telnet abgreifen, wäre eine anderweitige Weiterverarbeitung in greifbarer Nähe.
  2. Alternativ gibt es z. Zt. auf Github übrigens noch einen weiteren mutability Fork von Oliver Jowett. Die Installation verläuft etwas anders, ist jedoch im Repository auch gut beschrieben und nachfolgend von mir zusammengefasst ohne bislang einmal getestet worden zu sein!

wget https://github.com/mutability/mutability-repo/releases/download/v0.1.0/mutability-repo_0.1.0_armhf.deb

sudo dpkg -i mutability-repo_0.1.0_armhf.deb

  1. Anschließend folgt die etwas umfangreichere Installation, die damit beginnt einen laufenden dump1090 erst einmal zu stoppen und das neue Release herunterzuladen:

sudo /etc/init.d/dump1090.sh stop

sudo apt-get update && sudo apt-get install dump1090-mutability

  1. Sofern optional gewünscht:

sudo dpkg-reconfigure dump1090-mutability # for detailed configuration

sudo apt-get install lighttpd && sudo lighty-enable-mod dump1090 # if you want to use the external webserver integration

  1. Es gibt eine Konfigurationsdatei die auch noch angepasst werden kann:

sudo nano /etc/default/dump1090-mutability

Weiterführende Links:

2 Kommentare zu „III. Der RasPi als RTL-SDR Server mit einem DVB-T USB-Stick

  1. Hallo,

    habe 2 RTL SDR an mein Raspberry Pi 2 dran wie kann ich das Einstellen das bei gleichzeitig laufen eine als RTL-SDR Server und das andere als ADS-B.

    SDR läuft Automatisch bei start an start an und geht super aber so bald ich den ADS-B starten will….. kommt das

    Found 2 device(s):
    0: Generic, RTL2832U, SN: 77771111153705700 (currently selected)
    1: Realtek, RTL2838UHIDIR, SN: 00000001
    usb_claim_interface error -6
    Error opening the RTLSDR device: Device or resource busy

    kannst mit da bitte weiter helfen?

    Danke
    Gruß

    1. Hallo Stefan,
      Du hast 2 Devices:

      0: Generic, RTL2832U, SN: 77771111153705700 (currently selected)
      1: Realtek, RTL2838UHIDIR, SN: 00000001

      Default mäßig wird immer Gerät 0 genutzt, deshalb findest Du dahinter in Klammern (currently selected).
      Das bedeutet, dass Dein SDR-Empfänger das Gerät 0 ist. Den DVB-T Stick starte ich z. B. mit folgender Befehlszeile:

      ./dump1090 –device-index 1 –enable-agc –net –net-http-port 8080 –ppm 19 –metric –modeac –quiet &

      Zuvor musst Du natürlich ins entsprechende Verzeichnis wechseln
      cd ~/dump1090

      Mit –device-index 1 wählst Du in obiger Zeile den entsprechneden Stick aus. Mit –ppm19 korrigiere ich die Oszillatorabweichung. Diese wird bei Dir anders sein. Kannst du auch ganz weglassen.

      Leider ist es auch bei mir so, das sobald die Serververbindung zum ADS-B unterbrochen wird, der ADS-B Server neu gestartet werden muss. Dazu habe ich derzeit auch noch keine Lösung. Vielleicht läßt sich mit einem Cron Skript etwas machen. Wenn Du etwas herausbekommst, gib mir gern einen Info.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s