Skip to main content

ADS-B Exchange Cursor-on-Target Gateway.

Project description

Screenshot of ADS-B PLI in ATAK.

The adsbxcot ADS-B Exchange Cursor on Target Gateway transforms Automatic Dependent Surveillance-Broadcast (ADS-B) aircraft position information into Cursor on Target (CoT) Position Location Information (PLI) for display on Situational Awareness (SA) applications such as the Android Team Awareness Kit (ATAK), WinTAK, RaptorX, et al.

For more information on the TAK suite of tools, see: https://www.civtak.org/

Installation

The ADS-B Exchange to Cursor on Target Gateway is provided by a command-line tool called adsbxcot, which can be installed either from the Python Package Index, or directly from this source tree.

Install from the Python Package Index (PyPI):

$ pip install adsbxcot

Install from this source tree:

$ git clone https://github.com/ampledata/adsbxcot.git
$ cd adsbxcot/
$ python setup.py install

Usage

The adsbxcot command-line program has several runtime arguments:

usage: adsbxcot [-h] [-c CONFIG_FILE] [-d] [-U COT_URL] [-S COT_STALE] [-A ADSBX_URL] [-X API_KEY] [-I POLL_INTERVAL] [-F FILTER_FILE]

optional arguments:
  -h, --help            show this help message and exit
  -c CONFIG_FILE, --CONFIG_FILE CONFIG_FILE
  -d, --DEBUG           Enable DEBUG logging
  -U COT_URL, --COT_URL COT_URL
                        URL to CoT Destination. Must be a URL, e.g. tcp:1.2.3.4:1234 or tls:...:1234, etc.
  -S COT_STALE, --COT_STALE COT_STALE
                        CoT Stale period, in seconds
  -A ADSBX_URL, --ADSBX_URL ADSBX_URL
                        ADS-B Exchange API URL.
  -X API_KEY, --API_KEY API_KEY
                        ADS-B Exchange API Key
  -I POLL_INTERVAL, --POLL_INTERVAL POLL_INTERVAL
                        For JSON API: Polling Interval
  -F FILTER_FILE, --FILTER_FILE FILTER_FILE
                        FILTER_FILE

Troubleshooting

To report bugs, please set the DEBUG=1 environment variable to collect logs.

Unit Test/Build Status

adsbxcot’s current unit test and build status is available via Travis CI:

https://travis-ci.com/ampledata/adsbxcot.svg?branch=master

Source

The source for adsbxcot can be found on Github: https://github.com/ampledata/adsbxcot

Author

adsbxcot is written and maintained by Greg Albrecht W2GMD oss@undef.net

https://ampledata.org/

License

adsbxcot is licensed under the Apache License, Version 2.0. See LICENSE for details.

Running as a Daemon

First, install supervisor:

$ sudo yum install supervisor
$ sudo service supervisord start

Create /etc/supervisor.d/adsbxcot.ini with the following content:

[program:adsbxcot]
command=adsbxcot -U https://adsbexchange.com/api/aircraft/v2/lat/36.7783/lon/-119.4179/dist/400/ -X xxx -I 5 -C 127.0.0.1 -P 8087

And update supervisor:

$ sudo supervisorctl update

Filtering

New in the latest version of adsbxcot is the concept of filtering. Filters can be specified in a configuration file or with a csv ‘known craft’ file.

Using the filter configuration file:

Either:

A) On the command line specify the filter configuration with the ‘-F filter.ini’ flag, where ‘filter.ini’ is the name of your filter configuration file.

B) In the config.ini file, specify the filter configuration with FILTER_CONFIG=filter.ini, again, where filter.ini is the name of your filter configuration file.

In either case, the filter configuration file is laid out as follows:

[FLIGHT]
include = xxx
exclude = yyy

[ICAO]
include = xxx
exclude = yyy

[REG]
include = xxx
exclude = yyy

Please note that each section is mutually exclusive. You can only use one filter method at a time and you should only specify one filter type at a time.

For example, to filter only ICAOs 1234 and 4567, create a filter.ini as follows:

[ICAO]
include = 1234, 4567

Then start adsbxcot with ‘-F filter.ini’ or add FILTER_CONFIG=filter.ini to the config.ini file.

Another example, to exclude all United Flight 1010 from your feed:

[FLIGHT]
exclude = UAL1010

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

adsbxcot-1.3.1.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

adsbxcot-1.3.1-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file adsbxcot-1.3.1.tar.gz.

File metadata

  • Download URL: adsbxcot-1.3.1.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

File hashes

Hashes for adsbxcot-1.3.1.tar.gz
Algorithm Hash digest
SHA256 923f615344ad7a2e037ecee843f651c1c9c57a57a6dbe8586eecc214ddaf168f
MD5 7580b2755d64808b26c5279c0368cace
BLAKE2b-256 eb84a156636dcac835ff7918f390b3961ad1c35ca31a3299e042389318223891

See more details on using hashes here.

File details

Details for the file adsbxcot-1.3.1-py3-none-any.whl.

File metadata

  • Download URL: adsbxcot-1.3.1-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

File hashes

Hashes for adsbxcot-1.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bb09ba6fa220f52c4ec5d1e8eb1702cf6bfcd431c606ab1aac98c15a3b3b6b62
MD5 a4f6cdbe8141d2c54b09f771a4562410
BLAKE2b-256 4744453ddcdd8f6e69446be539a55605f5f82c9b7c3be460d4dcd00f92d4e2b4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page