ADS-B Cursor-on-Target Gateway.
Project description
The adsbcot ADS-B 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.
IF YOU HAVE AN URGENT OPERATIONAL NEED: Email ops@undef.net or call/sms +1-415-598-8226
ADS-B Data can be recevied from a dump1090 recevier using: 1. Aircraft JSON HTTP feed. See: https://github.com/flightaware/dump1090/blob/master/README-json.md 2. Raw TCP (via pyModeS) 3. Beast TCP (via pyModeS)
If you’d like to feed AIS data from another source, consider these:
adsbxcot: ADS-B Exchange to Cursor on Target (CoT) Gateway. Transforms ADS-B position messages to CoT PLI Events.
stratuxcot: Stratux ADS-B to Cursor on Target (CoT) Gateway. Transforms position messages to CoT PLI Events.
Installation
The ADS-B to Cursor on Target Gateway is provided by a command-line tool called adsbcot, 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 adsbcot
To support direct network streaming (raw & beast) from dump1090, you must install the extra package pyModeS.
To install with pyModeS support:
$ pip install adsbcot[with_pymodes]
Install from this source tree:
$ git clone https://github.com/ampledata/adsbcot.git $ cd adsbcot/ $ python setup.py install
Usage
The adsbcot command-line program has several runtime arguments:
usage: adsbcot [-h] -C COT_HOST [-P COT_PORT] [-S STALE] [-I INTERVAL] [-U URL] [-X ADSBX_API_KEY] optional arguments: -h, --help show this help message and exit -C COT_HOST, --cot_host COT_HOST CoT Destination Host (or Host:Port) -P COT_PORT, --cot_port COT_PORT CoT Destination Port -S STALE, --stale STALE CoT Stale period, in seconds -I INTERVAL, --interval INTERVAL For HTTP: Polling Interval -U URL, --url URL ADS-B Source URL. -X ADSBX_API_KEY, --adsbx_api_key ADSBX_API_KEY ADS-B Exchange API Key
Troubleshooting
To report bugs, please set the DEBUG=1 environment variable to collect logs.
Unit Test/Build Status
adsbcot’s current unit test and build status is available via Travis CI:
Source
The source for adsbcot can be found on Github: https://github.com/ampledata/adsbcot
Copyright
adsbcot is Copyright 2020 Orion Labs, Inc. https://www.orionlabs.io
pyModeS is an optional extra package, and is Copyright (C) 2015 Junzi Sun (TU Delft).
License
adsbcot is licensed under the Apache License, Version 2.0. See LICENSE for details.
pyModeS is an optional extra package, and is licensed under the GNU General Public License v3.0.
Examples
Connect to dump1090’s Beast TCP running on host 172.17.2.122, port 30005 & forward CoT to host 172.17.2.152, port 8087:
$ adsbcot -C 172.17.2.152:8087 -U tcp+beast:172.17.2.122:30005
Connect to dump1090’s Raw TCP running on host 172.17.2.122, port 30003 & forward CoT to host 172.17.2.152, port 8087:
$ adsbcot -C 172.17.2.152:8087 -U tcp+raw:172.17.2.122:30003
Poll dump1090’s JSON API at http://172.17.2.122:8080/data/aircraft.json with a 10 second interval & forward CoT to host 172.17.2.152, port 8087:
$ adsbcot -C 172.17.2.152:8087 -U http://172.17.2.122:8080/data/aircraft.json -I 10
Poll ADS-B Exchange’s API every 5 seconds & forward CoT to host 127.0.0.1, port 8087:
$ adsbcot -U https://adsbexchange.com/api/aircraft/v2/lat/36.7783/lon/-119.4179/dist/400/ -X SECRET_API_KEY -I 5 -C 127.0.0.1 -P 8087
Running as a Daemon
First, install supervisor:
$ sudo yum install supervisor $ sudo service supervisord start
Create /etc/supervisor.d/adsbcot.ini with the following content:
[program:adsbcot] command=adsbcot -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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.