Tracking Profiles - davewalker5/ADS-B-BaseStationReader GitHub Wiki
The application supports use of "Tracking Profiles" - pre-defined sets of tracking parameters stored in JSON format that:
- Supply receiver location and elevation
- Define the criteria used to filter which aircraft are tracked and displayed
Tracking profiles can be used in any context, though they are probably best used when observing at an airport, for example, to focus on aircraft landing or taking off.
The following is an example profile for aircraft landing at Heathrow Airport (LHR):
{
"Name": "London Heathrow - Landing",
"ReceiverLatitude": 51.47060012817383,
"ReceiverLongitude": -0.46194100379944,
"ReceiverElevation": 83,
"MaximumTrackedDistance": 15,
"MinimumTrackedAltitude": 200,
"MaximumTrackedAltitude": 5000,
"TrackedBehaviours": [
"Descending"
]
}
The parameters are as follows:
| Parameter | Units | Data Type | Description |
|---|---|---|---|
| Name | - | string | Description of the profile |
| ReceiverLatitude | degrees | double | Latitude of the receiver in decimal format |
| ReceiverLongitude | degrees | double | Longitude of the receiver in decimal format |
| ReceiverElevation | feet | int | Receiver elecation in metres |
| MaximumTrackedDistance | Nm | int | Maximum distance at which aircraft will be tracked |
| MinimumTrackedAltitude | ft | int | Minimum altitude at which aircraft will be tracked |
| MaximumTrackedAltitude | ft | int | Maximum altitude at which aircraft will be tracked |
The receiver coordinates and elevation are set to those for the airport, where it's assumed the receiver is located. Those details can be found for many major airports using the following site:
A tracking profile is specified using the "--tracking-profile" command line option:
BaseStationReader.Terminal --tracking-profile /path/to/json/file
When a profile is provided, the application settings are built as follows:
- The application settings file is loaded
- Values specified on the command line are then applied
- If a tracking profile is specified, it's loaded and used to override values specified in the first two steps