Kennst du Flightradar24? Damit kannst du sehen, was da so über deinem Kopf im Himmel von A nach B fliegt. Die Anwendung kannst du mit Einschränkungen kostenfrei nutzen oder aber du wirfst dem Anbieter in paar Taler zu und je nach dessen Menge bekommt du mehr oder weniger Funktionen dazu. Die Kosten variieren zwischen 13 und 500 USD. Wenn du dich selbst am Projekt aktiv beteiligst, indem du selbst einen ADS-B-Receiver betriebst – sprich die Transponderdaten der Flugzeuge empfängst und an den Hersteller übermittelst, bietet dir Flightradar24 das größte Paket (500 USD) für lau an.
Ich hatte hier noch einen RTL2838 (DVB-T)-Receiver herumliegen und dachte mir, wenn ich schon einen Proxmox-Server betreibe, warum nicht einfach beides miteinander verbinden.
Okay, neuen CT in Proxmox angelegt, gestartet und upgedated. Ich habe dafür ein schmales Alpine Linux genutzt. Dann installieren wir noch fix die usbutils mittels: apt install usbutils
Dann schaffen wir erstmal die hardwareseitigen Voraussetzungen, also CT wieder herunterfahren und auf dem Proxmox-Host einloggen. lsusb
zeigt uns die angeschlossenen Geräte an (hier sollten die nötigen usbutils schon installiert sein) .
root@pve:~# lsusb
Bus 002 Device 002: ID 0bda:8153 Realtek Semiconductor Corp. RTL8153 Gigabit Ethernet Adapter
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
Bus 001 Device 002: ID 0bda:8153 Realtek Semiconductor Corp. RTL8153 Gigabit Ethernet Adapter
Bus 001 Device 003: ID 8087:0033 Intel Corp. AX211 Bluetooth
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Wichtig im Moment ist für uns nur der RTL2838 DVB-T (kann bei dir auch ein anderer DVB-T-Stick sein) und wir notieren uns den Bus und das Device, bei mir 001/004.
Damit der LXC später darauf zugreifen kann, verpassen wir ihm die passenden Rechte:
root@pve:~# chmod 0666 /dev/bus/usb/001/004
und verifizieren das Ergebnis (rw ist wichtig):
root@pve:~# ls -l /dev/bus/usb/001/004
crw-rw-rw- 1 root root 189, 3 Sep 20 11:42 /dev/bus/usb/001/004
Hier notieren wir uns noch die 189 und passsen die LXC-Konfiguration an. Jeder LXC oder VM in Proxmox hat ja eine Nummer, in meinem Fall ist das die 116
Die passende Konfigurationsdatei finden wir unter /etc/pve/lxc/ – also in meinem Fall 116.conf
root@pve:~# nano /etc/pve/lxc/116.conf
und fügen am Ende der Datei folgende 2 Zeilen hinzu (tausche 189 / 001 /004 gegen deine Werten aus) und speichern das ganze ab (STRG-X, bestätigen mit J/Y):
lxc.cgroup2.devices.allow: c 189:* rwm
lxc.mount.entry: /dev/bus/usb/001/004 dev/bus/usb/001/004 none bind,optional,create=file
Dann starten wir wieder den Container und loggen uns ein. lsusb zeigt uns auch hier jetzt den Receiver (RTL2838 DVB-T) an:
root@FR24:~# lsusb
Bus 002 Device 002: ID 0bda:8153 Realtek Semiconductor Corp. RTL8153 Gigabit Ethernet Adapter
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
Bus 001 Device 002: ID 0bda:8153 Realtek Semiconductor Corp. RTL8153 Gigabit Ethernet Adapter
Bus 001 Device 003: ID 8087:0033 Intel Corp. AX211 Bluetooth
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Schön, wir können auch noch testen, ob das Teil grundsätzlich funktional ist, indem wir mit apt install rtl-sdr
die passende Anwendung installieren und dann mit rtl_test
schauen, ob der Receiver ein Zeichen von sich gibt (mit STRG-C kannst du die Ausgabe abbrechen). Das kannst du grundsätzlich sowohl vom Proxmox-Host als auch im LXC ausführen – sollte dasselbe Ergebnis liefern)
root@pve:~# rtl_test
Found 1 device(s):
0: Realtek, RTL2838UHIDIR, SN: 00000001
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T tuner
Supported gain values (29): 0.0 0.9 1.4 2.7 3.7 7.7 8.7 12.5 14.4 15.7 16.6 19.7 20.7 22.9 25.4 28.0 29.7 32.8 33.8 36.4 37.2 38.6 40.2 42.1 43.4 43.9 44.5 48.0 49.6
[R82XX] PLL not locked!
Sampling at 2048000 S/s.
Info: This tool will continuously read from the device, and report if
samples get lost. If you observe no further output, everything is fine.
Reading samples in async mode...
Allocating 15 zero-copy buffers
lost at least 152 bytes
Dann kommt der einfachste Teil, die den FlightRadar24-Feeder zu installieren (Anleitung vom Anbieter unter Share your ADS-B data – Real-time flight tracker | Flightradar24):
root@FR24:~# wget -qO- https://fr24.com/install.sh | bash -s
Der Client wird installiert und startet im Anschluss gleich den Konfigurationsdialog
- Im ersten Schritt fragt er dich nach deiner Mail-Adresse, das sollte dieselbe sein, mit der du dich später in das Flightradar24-Konto einloggst
- Die Frage nach dem Sharing-Key kannst du bei der Ersteinrichtung mit ENTER bestätigen, dir wird später einer automatisch zugewiesen
- Die Frage nach MLAT calculations kannst du mit yes beantworten
- Unter https://www.koordinaten-umrechner.de/ kannst du mit Hilfe der Karte deine eigene Adresse suchen und die zugehörigen Längen- und Breitengrade ermitteln, denn danach fragt dich der DIalog als nächstes.
- Dann noch die Höhe über dem Meeresspeiegel von deiner Adresse in feet (kannst du auch ganz leicht mit Google von Meter in Feet umrechnen lassen)
- Die Frage nach dem Receiver beantwortet du mit einer 1, den das wäre der DVB-T-USB-Stick.
- Die Frage nach dump1090-Argumente einfach mit ENTER quittieren und die beiden folgenden Fragen mit NO
Das war es auch schon. Die Einrichtung ist abgeschlossen, du kannst dich mit der IP-Adresse des Containers, gefolgt von Port 8754 (also bei mit http://192.168.178.142:8754) einloggen und den Status der Anwendung verfolgen. Du solltest nach relativ kurzer Zeit unter Aircraft Tracked und Aircarft Uploaded Werte größer 0 sehen.
Wenn du dich in deinem Flightradar-Konto einloggst, solltest du unter https://www.flightradar24.com/account/data-sharing deine eigene Station als online angezeigt bekommen. Sobald die ersten Daten an die Webseite übermittelt wurden, wechselt dein Basic-Status zu Business (das kann durchaus bis zu 1h dauern).
Viel Spaß – 500 USD pro Jahr gespart und etwas gutes getan 🙂