Virtual Radar Server auf RPi

Nachdem wir Flugdaten mittels dump1090 empfangen können, kümmern wir uns nun darum die Daten etwas schöner anzuzeigen. Dank des Virtual Radar Servers ist dieses relativ einfach machbar. Der VRS ermöglich es die maximale Reichweite eures Empfängers anzuzeigen und kann z.B. die Kursplot, in Abhängigkeit von der Flughöhe, einfärben. Ebenfalls ist es hier einfach möglich die Daten mehrerer Empfänger, in einem Merged Feed, zusammenzufassen und anzeigen zu lassen. Da ich nun zwei Empfänger habe, ist gerade dieses Feature für mich interessant.

 

Installation des Virtual Radar Server

Da der VRS auf .NET setzt, müssen wir Mono installieren. Nachfolgen habe ich alle notwendigen Befehle aufgeführt um den Server zu installieren, dabei werden die Dateien in /opt/virtualradar abgelegt. Passt dieses euren Wünschen an und wählt einen entsprechenden Namen und Passwort für den Admin-Account.

apt-get install mono-complete
cd /opt
mkdir virtualradar
cd virtualradar/
wget http://www.virtualradarserver.co.uk/Files/VirtualRadar.tar.gz
wget http://www.virtualradarserver.co.uk/Files/VirtualRadar.WebAdminPlugin.tar.gz
wget http://www.virtualradarserver.co.uk/Files/VirtualRadar.LanguagePack.tar.gz
tar xvf VirtualRadar.tar.gz
tar xvf VirtualRadar.WebAdminPlugin.tar.gz
tar xvf VirtualRadar.LanguagePack.tar.gz
mono VirtualRadar.exe -nogui -createAdmin:username -password:password

Per default läuft der Webserver auf Port 8080. Wenn ihr dieses ändern wollt, müsst ihr nur den Port in der Datei ~/.local/share/VirtualRadar/InstallerConfiguration.xml anpassen.

Testweise könnt ihr nun den Virtual Radar Server mit mono VirtualRadar.exe -nogui starten. Die Weboberfläche ist dann über http://yourip:8080/VirtualRadar/desktop.html, bzw. die Admin-Oberfläche über http://yourip:8080/VirtualRadar/WebAdmin/Index.html erreichbar.

Damit der Server automatisch gestartet wird, erzeugen wir ein Script, welches automatisch beim Reboot gestartet wird.

vi /opt/virtualradar/vrs.sh

[code]
#!/bin/sh
mono /opt/virtualradar/VirtualRadar.exe -nogui
[/code]

Anschließend noch mittels chmod +x /opt/virtualradar/vrs.sh ausführbar machen.

Mittels crontab -e fügt ihr nun folgende Zeile ein:

[code]
@reboot /opt/virtualradar/vrs.sh
[/code]

Nun noch ein abschließender Reboot und der VRS sollte laufen.

Konfiguration

Noch etwas Konfigurationsarbeit und ihr seid bereit. Wählt euch auf die Admin-Oberfläche auf und wählt auf der linken Seite Options. Wählt nun den Bereich Receiver Locations und erzeugt eine neue Location unter Angabe der Koordinaten. Anschließend geht ihr in den Bereich Receivers und passt die Einstellungen dort gegebenenfalls an. Damit weiß der Server wo euer Receiver steht und kann einen Reichweitenplot erstellen.

 

Reichweitenplot

17 Gedanken zu „Virtual Radar Server auf RPi“

  1. Hallo,
    ich habe ein kleines Problem… soweit ist alles installiert und geupdatet, wenn ich aber
    mono VirtualRadar.exe -nogui -createAdmin:username -password:password
    diese Zeile eingebe, bekomme ich eine Fehlermeldung!

    WARNING: The runtime version supported by this application is unavailable.
    Using default runtime: v4.0.30319
    [ERROR] FATAL UNHANDLED EXCEPTION: InterfaceFactory.ClassFactoryException: SQLiteConnectionStringBuilderWrapper does not implement ISQLiteConnectionStringBuilder
    at InterfaceFactory.ClassFactory.Register (System.Type interfaceType, System.Type implementationType) [0x0007c] in :0
    at InterfaceFactory.ClassFactory.Register[TI,TM] () [0x00000] in :0
    at VirtualRadar.SQLiteWrapper.Implementations.Register (InterfaceFactory.IClassFactory factory) [0x00006] in :0
    at VirtualRadar.Program.Main (System.String[] args) [0x000c3] in :0

    Hast Du vielleicht noch eine Idee? Im Netzt habe ich nicht wirklich was dazu gefunden.

    Gruss
    Marco

    Antworten
  2. Hallo,

    die Einrichtung ist klappte dank deiner Anleitung ohne Probleme.
    Wie kann ich denn nun die Flaggen einfügen oder auch die Airline Logos?
    Weißt Du wie das gemacht wird?

    Gruß und danke bereits für die Hilfestellung!

    Antworten
  3. Hallo Björn,

    vielen Dank für die schnelle Hilfe! Hat funktioniert! 🙂

    Nun hab ich aber noch ein weiteres Problem.

    Ich habe die Koordinaten von meinem Standort in den Receiver Einstellungen hinterlegt und dann auch dem Receiver zugewiesen.
    Allerdings wird mein Standort auf der Karte nicht angezeigt. Der blaue Punkt steht weiterhin in England.

    Wie hast du es eingestellt, dass dein Standort korrekt auf der Map angezeigt wird?
    Meine Koordinaten lauten:

    Breitengrad: 52.2815691
    Längengrad: 7.4434092

    So hab ich es auch eingegeben, aber es will einfach nicht funktionieren.

    Muss man ein anderes Koordinaten Format nehmen oder werden die Koordinaten ganz woanders hinterlegt?

    Gruß und nochmals vielen Dank für die Hilfe!

    Antworten
    • Hallo René,

      das ist eine gemeine Sache. Der Standort ist deiner und nicht der des Empfängers.
      Gehe in der Webansicht auf Menü -> Optionen -> Allgemein -> Aktueller Standort
      Aktivieren den Punkt „Setze aktuellen Standort“ und du kannst den Marker verschieben.

      Antworten
  4. Ich habe einen RPi 4 und darauf „dump1090-mutability_1.15~dev“ installiert.
    Damit füttere ich „ADS-B Exchange“ (https://adsbexchange.com), die einzige Seite die keine Daten filtert und somit auch militärische Operationen sichtbar sind.
    How to feed: https://adsbexchange.com/how-to-feed/

    Hinweis: „dump1090-mutability“ wurde vor 5 Jahren zuletzt aktualisiert.
    Siehe: https://github.com/mutability/dump1090

    Es gibt einen Fork der aktueller ist (dump1090-fa), den habe ich allerdings noch nicht getestet.
    Somit weiß ich nicht ob man damit auch ADS-B Exchange füttern kann.
    Link: https://github.com/flightaware/dump1090

    Antworten
    • Es gibt verschiedene Argumente für oder gegen einen ADS-B-Feed.
      Eigentlich mag ich den kommerziellen Ansatz von https://www.flightradar24.com nicht.
      Doch Feeder bekommen einen Business-Account im Wert von USD 499.99 jährlich.
      Der Aufwand ist einmalig etwa eine Viertelstunde um den Feed einzurichten.
      Gerade im Winterurlaub war ich froh, weltweit unbeschränkt auf alle Daten zugreifen zu können: Die besonders nervigen Flüge einer privaten Hubschrauberfirma endeten meist beim Krankenhaus, entpuppten sich also als Rettungsflüge, worauf sie mich weniger stressten. 😉

      Der Fork von dump1090-fa kommt von FlightAware, und diese haben wohl die zurzeit aktivste Community betreffend Feeder. Im Forum https://discussions.flightaware.com/ werden auch die Unterschiede zwischen dem originalen mutuabilitiy und dem fa-Fork erklärt. Ja, man kann damit ADS-B-Exchange füttern.
      Im FlightAware-Forum bekam, ich bisher den besten Support, darum liefere ich (nach ebenfalls sehr kurzer einmaliger Einrichtung) meinen Feed dorthin.

      Ich möchte keine Werbung für diese Firmen / Organisationen machen, sondern nur meine persönlichen Gründe warum ich meine Daten wohin liefere. Auch https://opensky-network.org/ als kleinere Non-Profit-Organisation gehört dazu.

      Grüsse aus der Schweiz
      Bobby

      Antworten
  5. Neuer Stand:
    Inzwischen habe ich das veraltete „dump1090-mutability“ gegen „dump1090-fa“ ausgetauscht.
    Hardware wurde auch neu eingekauft: der „FlightAware ProStick Plus“ mit eingebautem Verstärker und Filter bringt locker 50% mehr Reichweite als mein alter RTL-SDR.COM v1 Stick (bis knapp 400km mit einer DIAMOND D-130J Antenne auf dem Hausdach.

    Installation „dump-1090fa“:
    https://github.com/wiedehopf/adsb-scripts/wiki/Automatic-installation-for-dump1090-fa

    Installation „tar1090“ (verbessertes Webinterface für dump1090-fa welches seit gestern auch auf adsbexchange.com Standard ist):
    https://github.com/wiedehopf/tar1090

    Weitere Add-Ons (Graphs & Timelapse):
    https://github.com/wiedehopf/adsb-scripts/wiki/wiedehopf's-projects

    Installation geht schnell & problemlos.

    Viel Spaß!

    Antworten
  6. Hallo Björn,
    Ich habe mir auch einen VRS unter Windows eingerichtet Laptop. Mein Problem ist, dass nicht bei allen Flugzeugen die Operator-Flagge zugeordnet wird.
    So teilweise scheint dafür das Callsign verwendet zu werden, aber vermutlich nicht ausschließlich.
    Weist Du zufällig, wie das Muster der Dateinamen der Flaggen sein muss, dass es den Flugzeugen zugeordnet werden kann?
    Oder Hast Du zufällig eine funktionierende Sammlung an OperatorFlaggen?

    Antworten
  7. Nach einem Hardware-Wechsel wollte ich das Ding neu installieren, und sah, dass jemand ein Script auf GitHub eingerichtet hat.
    Solche Scripts gibt es mittlerweile viele, einige sind eine Verschlimmbesserung der manuellen Installation, aber dieses ist so gut, dass ich es hier weiterempfehlen kann:
    Virtual Radar Server Installation Script (This script is a very helpful tool to easily install Virtual Radar Server on Linux.).
    Ist auch sehr gut dokumentiert, läuft locker neben meinem PiHole, vereinfacht die Installation spürbar.

    Gruss
    Bobby

    Antworten
    • Moin Bobby,

      genau das hatte ich vor ein paar Wochen benutzt, da ich über VRS ein Polar/ Reichweiten Plot erstellen, so wie Björn. Allerdings schein es eine Option in der „Map“ bei mir nicht zu geben, was ich so in all den ganzen Foren, und zwar Menü -> „receiver range“.

      Hat der irgendjemand eine Idee woran das liegen könnte?

      Gruß Stephan

      Antworten
    • Hallo Ronny,

      direkt aktuell wohl nicht. Stand aber mal auf der ToDo des Entwicklers. Es geht aktuell nur mit einem Proxy (z.B. NGINX) vor dem VRS, dieses habe ich aber selber nicht im Einsatz.

      Grüße,
      Björn

      Antworten
  8. Das Programm über die „Zeitschaltuhr“ cronjobs zu starten gefällt mir nicht, daher benutze ich systemctl
    Dazu: eine Datei mit dem Namen virtualradar.service im Verzeichnis /etc/systemd/system/ erstellen mit folgendem Inhalt:

    [Unit]
    Description=Virtual Radar Service
    After=network.target

    [Service]
    Type=simple
    ExecStart=/bin/sh -c „mono /root/vr/VirtualRadar.exe -nogui“
    WorkingDirectory=/root/vr
    User=root
    Group=root
    Restart=always

    [Install]
    WantedBy=multi-user.target

    dann nur noch neu einlesen mit

    sudo systemctl daemon-reload

    aktiveren und starten
    sudo systemctl enable virtualradar.service
    sudo systemctl start virtualradar.service

    Antworten

Schreibe einen Kommentar