= AltOS Telemetry
+Keith Packard <keithp@keithp.com>; Bdale Garbee <bdale@gag.com>
+:revnumber: v{version}
+:revdate: 01 Jan 1970
+:copyright: Bdale Garbee and Keith Packard 2021
+:stylesheet: am.css
+:linkcss:
:doctype: article
:toc:
:numbered:
+:pdf-stylesdir: .
+:pdf-style: altusmetrum
+:pdf-fontsdir: fonts
+
+ include::header.adoc[]
== Packet Format Design
which device has transmitted the packet, when it was transmitted
and what the rest of the packet contains.
- === TeleMetrum v1.x, TeleMini and TeleNano Sensor Data
+ === TeleMetrum v1.x, TeleMini v1.0 and TeleNano Sensor Data
.Sensor Packet Type
[options="border",cols="1,3"]
|====
|Type |Description
|0x01 |TeleMetrum v1.x Sensor Data
- |0x02 |TeleMini Sensor Data
+ |0x02 |TeleMini v1.0 Sensor Data
|0x03 |TeleNano Sensor Data
|====
- TeleMetrum v1.x, TeleMini and TeleNano share this same
+ TeleMetrum v1.x, TeleMini v1.0 and TeleNano share this same
packet format for sensor data. Each uses a distinct
packet type so that the receiver knows which data
values are valid and which are undefined.
|32
|====
- === TeleMetrum v2 Sensor Data
+ === TeleMetrum v2 and newer Sensor Data
.TeleMetrum v2 Packet Type
[options="border",cols="1,3"]
|0x0B |TeleMetrum v2 Calibration Data
|====
- TeleMetrum v2 has higher resolution barometric data than
+ TeleMetrum v2 and newer have higher resolution barometric data than
TeleMetrum v1, and so the constant calibration data is
split out into a separate packet.
- TeleMetrum v2 Sensor Data packets are transmitted once per second on the
+ TeleMetrum v2 and newer Sensor Data packets are transmitted once per second on the
ground, 10 times per second during ascent and once per second
during descent and landing
- TeleMetrum v2 Calibration Data packets are always transmitted once per second.
+ TeleMetrum v2 and newer Calibration Data packets are always transmitted once per second.
- .TeleMetrum v2 Sensor Packet Contents
+ .TeleMetrum v2 and newer Sensor Packet Contents
[options="border",cols="2,3,3,9"]
|====
|Offset |Data Type |Name |Description
|32
|====
- .TeleMetrum v2 Calibration Data Packet Contents
+ .TeleMetrum v2 and newer Calibration Data Packet Contents
[options="border",cols="2,3,3,9"]
|====
|Offset |Data Type |Name |Description
|32
|====
+ === TeleMini v3.0 Sensor Data
+
+ .Sensor Packet Type
+ [options="border",cols="1,3"]
+ |====
+ |Type |Description
+ |0x11 |TeleMini v3.0 Sensor Data
+ |====
+
+ TeleMini v3.0 uses this
+ packet format for sensor data.
+
+ Sensor Data packets are transmitted once per second on
+ the ground, 10 times per second during ascent and once
+ per second during descent and landing
+
+ .Sensor Packet Contents
+ [options="border",cols="2,3,3,9"]
+ |====
+ |Offset |Data Type |Name |Description
+ |5 |uint8_t |state |Flight state
+ |6 |int16_t |v_batt |battery voltage
+ |8 |int16_t |sense_a |apogee continuity sense
+ |10 |int16_t |sense_m |main continuity sense
+ |12 |int32_t |pres |pressure sensor (Pa * 10)
+ |16 |int16_t |temp |temperature sensor (°C * 100)
+ |18 |int16_t |acceleration |m/s² * 16
+ |20 |int16_t |speed |m/s * 16
+ |22 |int16_t |height |m
+ |24 |int16_t |ground_pres |Average barometer reading on ground
+ |28 |pad[4] |pad bytes |
+ |32
+ |====
+
+
=== Configuration Data
.Configuration Packet Type
|CC1111
|10mW transceiver with integrated SoC
- |TeleDongle v0.2, TeleBT v1.0, TeleMetrum v1.x, TeleMini
+ |TeleDongle v0.2, TeleBT v1.0, TeleMetrum v1.x, TeleMini v1
|CC1120
|35mW transceiver with SW FEC
- |TeleMetrum v2, TeleMega
+ |TeleMetrum v2, TeleMega v1
|CC1200
|35mW transceiver with HW FEC
- |TeleDongle v3.0, TeleBT v3.0
+ |TeleMetrum v3, TeleMega v2, TeleDongle v3.0, TeleMini v3, TeleBT v3.0, TeleGPS v2
|CC115L
|14mW transmitter with SW FEC
- |TeleGPS
+ |TeleGPS v1
|====