Custom Image – ADS-B receiver


Build your own ADS-B receiver today!

ADSBexchange.com offers a custom Pi feeder image with stats, maps, US sectionals, and a wifi-based configuration interface. It is configured to eliminate SD card writes. The image is a true setup with no updates needed feeder image. The goal is, “it just works”.

If you want a feeder that can stay active in harsh conditions and needs minimal maintenance, then the ADSBx feeder image is a good place to start.

Compatible Hardware:

Raspberry Pi 3
Raspberry Pi 4
Raspberry Pi Zero 2 W
Raspberry Pi Zero W (with graphs disabled)

See hardware for a more detailed discussion of suggested DIY hardware.

Hardware is available from https://adsb.store, Amazon, ebay, or other online electronics vendors. Minimum to get started is a Raspberry Pi and ADSBx 1090 kit. If possible, use an official Raspberry Pi power supply.

This image is based on Raspbian Lite and if you need to, you can install other programs via SSH, see the section about SSH.

As a goodwill to the enthusiast community and for ease of adoption, the ADSBx image can feed other select ADS-B aggregators, see step 9 “other feed clients”.

Latest Release:
https://downloads.adsbexchange.com/downloads/adsbx-8.2.220910.zip

md5sums:
906eb981388976f77f745f4cc94e94c6 adsbx-8.2.220910.img
5a5b82e7645ed0884beb29a969cab80a adsbx-8.2.220910.zip

http://www.adsbexchange.com


24 Hours of Traces
tar1090 map
graphs1090 statistics
tar1090 / graphs1090 to visualize data


Getting Started – WiFi/GUI Setup:

Step 1: After downloading the file above, write it to a MicroSD card. Recommended software for this is “Raspberry Pi Imager”. Under “Operating System”, choose “Use Custom” and pick the image file you downloaded above.

Step 2: Insert SD card into Pi, connect all hardware and allow the Pi to boot up. On first boot, filesystem is expanded to fill the entire SD card. This may take up to 5 mins depending on the size of your SD card. Do not interrupt this process. Subsequent boots should take approximately 60 seconds (based on Pi 4 performance).

Note: If you intend to use an Ethernet Cable for your Pi’s network connection, skip ahead to Step 5.

Step 3: Once Pi has booted, you will see a WiFi network called “ADSBx-config”. Join this network using your smartphone or computer. Since the Pi does not yet have an internet connection, you will likely need to tell your smartphone to “stay connected” (android), or “keep using wifi” (iOS).

The “ADSBx-config” network only exists for 15 minutes after boot (if the pi has no internet connectivity) for security reasons.  If it still has no network connection after that, it shuts down.  Power-cycling the Pi will reactivate it.

Step 4: Once connected to the wireless network named “ADSBx-config”, using a web browser, open: http://www.adsbexchange.local. Click on “WiFi Setup”, select your network and input your password. The device will reboot and connect to the configured wifi.

Step 5: Assuming the configuration is correct the Pi will connect to your WiFi. You can now access the feeder over your LAN / WiFi by going to: http://www.adsbexchange.local

Step 6: Visit http://www.adsbexchange.local. Choose “Configure receiver/Location” to configure GPS location and other feeder parameters. Click “Save and Reboot”

Note: To find your lat/lon coordinates, and mean sea level (MSL) altitude in your area, you can use the site linked on the config page, https://www.freemaptools.com/elevation-finder.htm.

One option, “Use Custom LED indications” can re-purpose the LED lights on your pi:

  • Green LED – blink frequency proportional to # of aircraft with position being received.
  • Red LED, number of blinks:
    1 blink – Zero planes with position detected
    2 blinks – Receiver location not set, or 978 UAT service enabled but not running
    3 blinks – Readsb service failed
    4 blinks – No connection to ADS-B Exchange servers
    5 blinks – CPU Temperature and/or power supply voltage failure

Step 7: Verify your feeder is connected and sending data to ADS-B Exchange by going to https://www.adsbexchange.com/myip (bottom link on your feeder’s menu). If everything is working as expected, you will see two green smiley faces.

Step 8: Adding Optional 978 UAT: This is for Unites States only, other countries do not have 978. If you are using a second SDR for the 978 UAT frequency in the US, choose the “assign SDRs to services” option to ensure the correct SDR is used by the correct software.

Step 9: Optional: Other Feed ClientsOther Feed Clients


Web UI / SSH Password:
  • You can change the default password for your pi using the “Change password” option in the webinterface menu.
  • The initial / default password is “adsb123”.
  • Changing the password in the webinterface will also change the password for SSH access using the user “pi”.
  • Changing the passwrod for the user “pi” will also change the password for the webinterface.
SSH access:

The image ships with SSH already enabled (contrary to the images available from raspbberypi.com).
To login use the username “pi” and default or changed password (see above).

This image is based on Raspbian Lite. Thus you can install most other software with some exceptions: Software like pihole and some other software suites which take over the webinterface are not compatible.

Go to command line information.


Technical Info (aka, stuff you probably don’t even need to know)

  • All MLAT participants will receive a back-feed of any aircraft where their data was used in the calculations.
  • A list of the software on the image can be seen HERE

Reporting Issues

Feel free to report any issues you encounter with this script using the forum or contact ADSBx here.

That’s it, your traffic should appear on the Global Radar Page after sending data for an hour. (sometimes this can take longer)