ADSB.im logo

ADSB.im

Simple to use ADSB Feeder Images
(not just) for common Single Board Computers

Two Stage Setup

Introduction
In many (most?) instances, a simple integrated feeder is a very good solution to tracking the planes around your house (or wherever you have installed your feeder). There are a few situations, however, where some people prefer a different setup. The most common ones are
  • a very low end SBC, maybe mounted close to an antenna, that gets bogged down feeding multiple aggregators (especially feeding multiple commercial aggregators that each tend to need their own container and therefore consume more memory)
  • concerns about the amount of data written to the SD card in the feeder SBC, or the desire for more robust backups of the data created by the feeder SBC
  • the desire to have multiple feeders running in different locations and manage the data sharing from a single system (including having a local combined map of the coverage of all the feeders)
For the third use case above, it is important to feed the data from each feeder individually to each aggregator. Trying to combine data locally (which some people want to do in order to "game the metrics" that some of the aggregators provide) actually messes with the MLAT calculations and overall weakens the quality of the data collected. For example, aggregators can use MLAT information to detect planes that have transponders that are failing or affected by some of the GPS spoofing happening around the world, especially near conflict zones. This becomes much harder if people send combined data from multiple feeders that confuse these MLAT calculations. So please don't do this. The adsb.im feeder image is intentionally not offering any options to do this.
Defining some terms used
Since it can be rather confusing to talk about scenarios like this, here are some terms that are used in the rest of this document (and in the UI):
SBC
A single board computer like a Raspberry Pi or an OrangePi
SDR
A software-defined radio, usually a USB stick or a small device connected to USB via cable -- your antenna connects to the SDR
Integrated Feeder
A single system (usually an SBC) that has an SDR connected to an antenna attached and that feeds one or more aggregators.
Micro Feeder
A system (usually an SBC) that has an SDR connected to an antenna attached and does not by itself feed aggregators.
Stage 2 Instance
A separate instance of the adsb.im Feeder Image (sometimes running on an SBC, but often running in a VM or as application on some other system) that has no SDR attached, but instead receives data from one or more Micro Feeders and feeds the data (individually, see above) to one or more aggregators.
Creating a Stage 2 Instance
The recommended approach would be to create a new adsb.im Feeder Image installation from scratch; converting an existing feeder image could cause unintended effects. Most of the testing is done running a Stage 2 Instance in a VM, additionally some testing is done with a Raspberry Pi 5 and an Orange Pi 5 Plus using NVMe storage. The rest of this chapter assumes that you already have an Integrated Feeder running and are interested in converting this to a two stage system.
  1. Boot the new instance and enter the name for your Stage 2 (something like DND_Stage2 is what I tend to end up with) as well as your location (that will be the initial center of the combined map).
  2. Select "Stage 2" at the bottom of the Setup page and click on Submit.
  3. Initial Stage 2 setup
    Initial Stage 2 setup
  4. At this point you will be forwarded to the Stage 2 Setup page. Here you add the Micro Feeder(s) that you want to consume data from.
  5. Enter the IP address of the existing Integrated Feeder that you want to use as the data source and click on "Check Micro Feeder". Yes, you are pointing this at an Integrated Feeder right now -- we'll convert that system to a Micro Feeder later.
  6. Pick a Micro Feeder to connect to
    Pick a Micro Feeder to connect to
  7. Assuming that this is a v2 adsb.im Feeder Image, you will now be presented with the name of that feeder in red plus three options for the integration:
    • Import Settings: name, location, and data sharing settings are imported - the Stage 2 Instance will continue to feed the same aggregators with the same data which should allow for a seamless transition
    • Full Import: just like in the previous scenario, all settings are imported, but additionally the historical data, graphs and statistics are imported as well. This can take quite a while, especially from a feeder that has been up and running for a long time. Please be patient.
    • Manual: no settings are imported, you have to enter all data again from scratch
  8. Import Micro Feeder settings
    A caption for the above image.
  9. If the feeder you are connecting to isn't an adsb.im Feeder Image, you'll still be able to connect to it, but you'll have to set things up manually.
  10. Once you have all Micro Feeders added (you can of course come back here at any time later to make changes), pick the settings for the semi-anonymous aggregators that you prefer and click on "I'm Done Here".
  11. Complete Stage 2 setup
    Complete Stage 2 setup
The stage 2 system will now add all the necessary containers and set things up accordingly. Depending on how many Micro Feeders you added and how many commercial aggregator those are feeding, this once again can take a while. When that process has completed, you will be presented with a slightly modified UI.
On the Stage 2 Instance home page you'll see the (potentially expanded) grid of aggregators. If you have more than one Micro Feeder, this will present you with information on all of them in one chart.
The main menu bar will have converted the "Map Options" and "Data Sharing" entries to drop down menues that give you access to the settings for each of the micro feeders. And the "Addtl Maps" menu entry will give you access to individual maps and graphs for each of the Micro Feeders. The Main Map will now show the combined data from all of the configured feeders.
Once this is all working and looking good, you can connect to the feeder images for the Micro Feeders (an easy way to do this is to return to the Stage 2 Setup page and click on the name of the Micro Feeder in the table) and go to the Basic Setup page for each of them and convert it to a Micro Feeder at the bottom of that page. Click Submit and you should be done.
Micro Feeder considerations
In most cases, you'll have your first Micro Feeder on your local network, but of course it's reasonable to expect that all additional ones will be somewhere else. The easiest way to deal with this tends to be to simply set up one of the free VPN services. The adsb.im Feeder Image supports two of them out of the box. Tailscale (which seems to be better for latency in my experience) and Zerotier (which may be marginally easier to set up initially). I'll link to more in depth documentation for that later.
Ongoing Use
Once things are set up, you usually don't need to go back to the Micro Feeder address - except for occasional system updates (assuming you didn't automate that already). Maps, statistics, aggregator status, etc., are all accessible from the Stage 2 Instance web interface.
Running Stage 2 Instance
Running Stage 2 Instance