RTL-SDR - ADS-B
ADS-B (Automatic Dependent Surveillance–Broadcast) works on 1090 MHz. It’s a broadcast signal by aircrafts.
Install
sudo apt update
sudo apt install -y dump1090-mutability
Run
dump1090-mutability
dump1090-mutability --interactive
dump1090-mutability --ifile file
Plug in a RTL-SDR dongle and run the following command.
dump1090-mutability --interactive
Output.
Hex Mode Sqwk Flight Alt Spd Hdg Lat Long RSSI Msgs Ti\
-------------------------------------------------------------------------------
39E4AC S 7612 AFXXXET 35000 427 210 37.522 -3.995 -23.4 75 0
4CAE61 S 4020 RYXXXSA 37000 435 227 37.000 -4.133 -23.6 57 0
Web interface
It’s possible to run web interface and see a map.
sudo apt install -y lighttpd
Enable the dump1090
module.
sudo lighty-enable-mod dump1090
sudo systemctl force-reload lighttpd
Go to http://localhost/dump1090.
I see the map but don’t see the aircrafts. There is an error message:
Problem fetching data from dump1090.
AJAX call failed (error: Not Found). Maybe dump1090 is no longer running?
The displayed map data will be out of date.
Note: TODO: Look at the link https://www.reddit.com/r/RTLSDR/comments/1615ko0/dump1090mutability_on_ubuntu_2204_doesnt_produce/ and this one https://es.flightaware.com/adsb/piaware/install.
Issue
Before the dump1090-mutability
installation, I cloned the https://github.com/MalcolmRobb/dump1090.git
repository and tried to compile it, but without success.
make
Output.
gcc -g -o dump1090 dump1090.o anet.o interactive.o mode_ac.o mode_s.o net_io.o `pkg-config --libs librtlsdr` -lpthread -lm
/usr/bin/ld: interactive.o:/home/digitalnerd/dump1090/dump1090.h:373: multiple definition of `Modes'; dump1090.o:/home/digitalnerd/dump1090/dump1090.h:373: first defined here
/usr/bin/ld: interactive.o:/home/digitalnerd/dump1090/dump1090.h:238: multiple definition of `tDF'; dump1090.o:/home/digitalnerd/dump1090/dump1090.h:238: first defined here
/usr/bin/ld: mode_ac.o:/home/digitalnerd/dump1090/dump1090.h:373: multiple definition of `Modes'; dump1090.o:/home/digitalnerd/dump1090/dump1090.h:373: first defined here
/usr/bin/ld: mode_ac.o:/home/digitalnerd/dump1090/dump1090.h:238: multiple definition of `tDF'; dump1090.o:/home/digitalnerd/dump1090/dump1090.h:238: first defined here
/usr/bin/ld: mode_s.o:/home/digitalnerd/dump1090/dump1090.h:373: multiple definition of `Modes'; dump1090.o:/home/digitalnerd/dump1090/dump1090.h:373: first defined here
/usr/bin/ld: mode_s.o:/home/digitalnerd/dump1090/dump1090.h:238: multiple definition of `tDF'; dump1090.o:/home/digitalnerd/dump1090/dump1090.h:238: first defined here
/usr/bin/ld: net_io.o:/home/digitalnerd/dump1090/dump1090.h:373: multiple definition of `Modes'; dump1090.o:/home/digitalnerd/dump1090/dump1090.h:373: first defined here
/usr/bin/ld: net_io.o:/home/digitalnerd/dump1090/dump1090.h:238: multiple definition of `tDF'; dump1090.o:/home/digitalnerd/dump1090/dump1090.h:238: first defined here
collect2: error: ld returned 1 exit status
make: *** [Makefile:24: dump1090] Error 1