Files
adsb-tools/protocols/airspy_adsb.md

44 lines
1.1 KiB
Markdown
Raw Normal View History

2016-02-13 23:35:34 +00:00
# Airspy protocol
## Ports
* ??: server -> client feed
## Format
Textual format, similar to [raw](raw.md), but extended with MLAT and signal
level data. Unlike raw format, lines are terminated with `0x0d 0x0a` (`\r\n`).
## Frame structure
* `0x2a` (`*`)
* 7 or 14 byte frame (see [raw](raw.md))
* `0x3b` (`;`)
* 4 byte MLAT timestamp (see below)
* `0x3b` (`;`)
* 1 byte MLAT precision (see below)
* `0x3b` (`;`)
* 2 byte big-endian RSSI
* `0x3b 0x0d 0x0a` (`;\r\n`)
## MLAT timestamp
The MLAT timestamp included in each frame is the big-endian value of a counter
at the time of packet reception. The counter runs at a rate determined by the
precision value multiplied by 2 MHz (e.g. `0x0a` means `10 * 2 MHz = 20 MHz`).
This counter isn't calibrated to external time, but receiving software can
calculate its offset from other receiving stations across multiple packets, and
then use the differences between station receive timing to calculate signal
source position.
## Examples
* `*5DA7DA1CE30DE5;D03B5A4B;0A;7AF3;\r\n`
* `*8DA07CD89915908778A01E4B4C86;D03D33F9;0A;8437;\r\n`
## Implementations
* [Airspy ADSB decoder](http://airspy.com/download/)