Add airspy_adsb protocol doc

This commit is contained in:
Ian Gulliver
2016-02-13 23:35:34 +00:00
parent c7a1760ea5
commit 9c848bb83b

43
protocols/airspy_adsb.md Normal file
View File

@@ -0,0 +1,43 @@
# 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/)