This method assumes you have Raspberry Pi OS (preferably the Lite version) already installed and booted on your Raspberry Pi, with WiFi already configured during the initial OS image creation (so no additional WiFi setup is needed here). It’s ideal if you want to add PiAware to an existing setup. You’ll install via FlightAware’s repository. Since you’re using an RTL-SDR dongle for 1090 MHz ADS-B reception only, we’ll include steps to properly initialize the device by blacklisting conflicting kernel drivers (this prevents the Raspberry Pi from treating the RTL-SDR as a TV tuner, which could block its use for ADS-B). No setup for 978 MHz (UAT) is included, as it’s not needed.
Prerequisites
- Raspberry Pi with Raspberry Pi OS installed (download from https://www.raspberrypi.org/software/operating-systems/ and flash to an SD card if starting fresh).
- Access to the Pi via SSH or a directly connected monitor/keyboard (enable SSH by creating an empty file named
sshin the/bootpartition before the first boot if needed). - Internet connection via WiFi (already set up) or Ethernet.
- RTL-SDR USB dongle (e.g., a generic RTL2832U-based SDR) connected to the Pi’s USB port.
- 1090 MHz antenna connected to the RTL-SDR dongle.
Installation Steps
- Boot the Raspberry Pi and log in via terminal or SSH (default username:
pi, default password:raspberry—change the password immediately for security using thepasswdcommand). - Update the system to ensure everything is current:
sudo apt update
sudo apt full-upgrade
sudo reboot
After rebooting, log back in.
- Initialize the RTL-SDR dongle by blacklisting conflicting drivers. This step creates a configuration file that tells the system not to load certain modules that could interfere with the dongle. Use a text editor like nano (which is beginner-friendly) to create and edit the file:
sudo nano /etc/modprobe.d/rtl-sdr-blacklist.conf
In the nano editor, paste or type the following lines exactly (you can copy-paste if using SSH):
blacklist dvb_usb_rtl28xxu
blacklist rtl_2832
blacklist rtl_2830
blacklist r820t
Save the file by pressing Ctrl+O (then Enter to confirm the filename), then exit with Ctrl+X. Reboot the Pi to apply the changes:
sudo reboot
Log back in after reboot. This blacklist ensures the RTL-SDR is available for ADS-B use with dump1090-fa.
- Install the PiAware repository package. This adds FlightAware’s software sources to your system. Use the latest version available (check https://flightaware.com/adsb/piaware/install for the current package name and replace “9.0” below if needed): (NOTE – the wget command is all one line and contains the two lines shown below it. The line beginning with “sudo” is a separate line.)
sudo apt install -y wget
wget https://flightaware.com/adsb/piaware/files/packages/pool/piaware/p/piaware-support/piaware-repository_9.0_all.deb
sudo dpkg -i piaware-repository_9.0_all.deb
sudo apt update
- Install PiAware (the main software for feeding data to FlightAware):
sudo apt install -y piaware
- Install dump1090-fa (this decodes ADS-B signals from your RTL-SDR dongle at 1090 MHz; it will automatically detect and use the connected RTL-SDR):
sudo apt install -y dump1090-fa
- Configure PiAware to use the RTL-SDR for 1090 MHz only (no changes needed for 978 MHz since it’s disabled by default in this setup). Restart the service to apply:
sudo piaware-config receiver-type rtlsdr
sudo systemctl restart piaware
sudo systemctl restart dump1090-fa
- Set up your feeder ID. The feeder ID is a unique 32-character identifier (like a serial number) assigned to your specific PiAware installation. Its function is to link the ADS-B data your receiver collects and sends to FlightAware’s servers with your personal FlightAware account. This allows you to:
- View real-time statistics about your receiver’s performance (e.g., aircraft tracked, messages received) on the FlightAware website.
- Earn benefits like a free Enterprise account upgrade (which provides ad-free access and more features) based on your contributions.
- Ensure your data is credited to you if you’re participating in the FlightAware community. To get a feeder ID:
- If this is a new installation, visit https://flightaware.com/adsb/piaware/claim in a web browser. PiAware will automatically detect your running feeder (via your public IP) and assign a new ID. Copy the 32-character ID provided.
- If you have an existing FlightAware account with a previous feeder, log in at https://flightaware.com/adsb/stats/user/ and find your ID there, or use the claim page to link it. Once you have the ID, configure it in PiAware (replace
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxbelow with your actual ID):
sudo piaware-config feeder-id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
sudo systemctl restart piaware
Verification
- Check the overall status of PiAware (it should show the services running and connected to FlightAware):
piaware-status
- Verify dump1090-fa is detecting aircraft (look for “rtlsdr: using device” and aircraft counts):
sudo journalctl -u dump1090-fa
- View a local web map of detected aircraft: Open http://:8080 in a browser (find your Pi’s IP with
hostname -I). - After 10-15 minutes, check your stats on https://flightaware.com/adsb/stats/user/ (log in with your FlightAware account). If data isn’t appearing, restart services with
sudo systemctl restart piawareandsudo systemctl restart dump1090-fa, or review logs withjournalctl -u piaware. Ensure your antenna has a clear view of the sky for best results.
