Ziel des Projektes ist es, einen Raspberry Pi so zu konfigurieren, dass er die von Flugzeugen abgesendeten Daten empfängt und an Flightradar24 übermittelt. Als Empfänger soll ein DVB-T-USB-Stick zum Einsatz kommen.
Inhalt
Betriebssystem
Als Betriebssytem verwende ich diesmal Raspbian Buster Lite um zur Abwechslung auch einmal etwas mit Debian zu machen, außerdem läuft die benötigte Software fr24feed auf einem Raspberry NUR unter Debian. Üblicherweise ist Ubuntu Server LTS das OS meiner Wahl.
Installation
Ich lade das Image herunter und schreibe es mit Etcher auf eine 32GB große SanDisk Extreme microSD-Karte, die gerade herumliegt.
Bei Raspbian Lite ist standardmäßig SSH deaktiviert, angesichts der fehlenden GUI finde ich das etwas fragwürdig. Ich aktiviere ich es folgendermaßen.
Auf der boot-Partition der soeben beschriebenen SD-Karte erstelle ich eine Datei mit einem einzelnen Leerzeichen als Inhalt und nenne sie ssh (Ohne Dateiendung!). Geht auch unter Windoof mit dem Editor.
Die Karte schiebe ich in den Raspberry Pi 3 B und verbinde ihn mit Netzwerk und Strom.
Das Betriebssystem ist standardmäßig auf DHCPv4 eingestellt und bekommt somit von meinem Router eine IPv4-Adresse zugewiesen.
Ich benutze Putty, um mich per SSH auf den Raspberry Pi zu verbinden und melde mich mit den Standard-Zugangsdaten an, bei diesem Image sind das pi/raspberry. Danach ändere ich das Passwort:
passwd
Ich aktualisiere das Betriebssystem mit den beiden Befehlen
sudo apt update
sudo apt upgrade
Benutzer ändern (optional)
Ich möchte einen anderen Benutzernamen verwenden und lege dazu einen neuen Benutzer namens newuser an, dabei vergebe ich ein sicheres Passwort und füge ihn zur Gruppe der Sudoers (Administratoren) hinzu:
sudo useradd -m newuser
sudo usermod -aG sudo newuser
Ich öffne eine neue Session in Putty und melde mich mit dem neuen Benutzer an. Nachdem das klappt, beende ich die erste SSH-Session und lösche dann den alten User pi und sein home-Verzeichnis.
sudo userdel -r pi
Netzwerk
Hostnamen ändern (optional)
Ich ändere zwecks besserer Erkennbarkeit den Hostnamen mittels hostnamectl und füge dann noch die Einträge 127.0.0.1 adsb und ::1 adsb zur Datei /etc/hosts hinzu.
sudo hostnamectl set-hostname adsb
sudo nano /etc/hosts
IP-Adressen vergeben
Die Netzwerkkonfiguration erfolgt bei Raspbian Buster in der Datei /etc/dhcpcd.conf.
Statische IP-Adressen sind bei meiner Anwendung aber nicht nötig, daher belasse ich die Einstellungen auf DHCPv4 bzw SLAAC.
ADS-B-Empfänger
ADS-B ist ein System, über welches Flugzeuge ihre Flugdaten kontinuierlich und unverschlüsselt abstrahlen. Diese Daten beinhalten z.B. Flugnummer, Geschwindigkeit und Höhe. Die Plattform Flightradar24 trägt diese Daten weltweit zusammen und stellt sie in einem Portal zu Verfügung. Jeder kann sich daran beteiligen, indem er selbst einen solchen Empfänger betreibt. Dieser Einsatz bleibt, wie später erwähnt, nicht unvergolten.
Praktischerweise haben viele DVB-T-Empfänger den Chipsatz R820T2 eingebaut, der eine Verwendung als SDR ermöglicht und somit als preisgünstiger ADS-B-Empfänger verwendet werden kann.
Ich verwende dieses Produkt für ca. 14€: DVB-T-Empfänger (SDR). Ich schließe den Stick per USB am Raspberry an und prüfe mit dem Befehl lsusb, ob er erkannt wird:
lsusb
Ausgabe (in der ersten Zeile wird der DVB-T-Stick angezeigt):
Bus 001 Device 004: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Installation der Software fr24
fr24 ist das Programm, das die Daten vom Empfänger liest und an Flightradar24 übermittelt. Folgender Befehl führt ein Skript aus, das das Programm herunterlädt und die Installation startet.
sudo bash -c "$(wget -O - https://repo-feed.flightradar24.com/install_fr24_rpi.sh)"
Die Installation klappt problemlos, anschließend muss man eine eMail-Adresse angeben. Das ist sehr wichtig, nachdem man einen kostenlosen Business-Account von Flightradar24 bekommt, sobald man Daten liefert. Dieser muss dann unter derselben eMail-Adresse laufen!
Abschließend muss man die Position und die Höhe der Antenne angeben (Vorsicht! Die Höhe will in Fuß angegeben werden), außerdem kann man einen Rohdatenfeed über die Ports 30002 und 30003 aktivieren. Das ist optional, damit könnte man die Daten auch lokal weiterverarbeiten.
Flightradar24
Ich erstelle einen Account mit der vorher angegebenen eMail-Adresse und siehe da, dieser wird umgehend automatisch zu einem Business-Account hochgestuft, der normalerweise 499$ pro Jahr kostet.
Optionale Schritte
Firewall
Mit folgenden Befehlen installiere ich ufw, ein Tool zur Firewallkonfiguration, erlaube SSH auf der Firewall und aktiviere diese anschließend. Alles andere wird automatisch blockiert.
sudo apt install ufw
sudo ufw allow ssh
sudo ufw enable
Antenne
Will man den Empfänger ernsthaft betreiben und nicht nur einen kostenlosen Business-Account abstauben, so empfiehlt sich die Verwendung einer für die Frequenz optimierten Antenne und eine entsprechende Montage derselben. Ich habe auf eBay eine passende Antenne gefunden:
Wenn du Feedback loswerden möchtest, nutze bitte das Kontaktformular.
Falls dir mein Beitrag weitergeholfen hat, würde ich mich sehr über einen kleinen Kaffee freuen. Oder du nutzt einen meiner Empfehlungslinks und sparst dir damit etwas Geld: Hetzner Cloud (20€ Guthaben), Ufodrive (30€ Rabatt), aWATTar. Außerdem habe ich eine Wunschliste bei Amazon.