Add airspy_adsb protocol doc
This commit is contained in:
43
protocols/airspy_adsb.md
Normal file
43
protocols/airspy_adsb.md
Normal 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/)
|
||||||
Reference in New Issue
Block a user