CanSatStudio

Documentation

CanSat Telemetry Format Specification

Complete documentation for the CanSat telemetry data format used in CanSatStudio.

Overview

CanSat telemetry data follows a structured key-value format where each key represents a specific measurement or system value. Keys are organized by length and category to maintain consistency and clarity.

Structured Format

Consistent key-value pairs for all telemetry data

Category Organization

Keys grouped by function and data type

JSON Transmission

Standard JSON format for easy parsing

Real-time Processing

Optimized for high-frequency data streams

Error Handling

Comprehensive 255-code error classification system

Competition Ready

Compatible with major CanSat competitions

Extensible Design

Easy to add new sensors and measurements

Key Naming Conventions

2-CharGlobal Keys

System-wide keys that apply to all telemetry packets and provide essential metadata for every data transmission.

Examples:

tsTimestamp in milliseconds
idUnique packet identifier
seqSequential packet number
3-CharSensor Data

Direct sensor readings from onboard instruments providing real-time measurements from the CanSat's hardware sensors.

Examples:

altAltitude measurement
gfxG-Force X-axis
gfyG-Force Y-axis
gfzG-Force Z-axis
latGPS latitude coordinate
lonGPS longitude coordinate
spdCurrent speed measurement
tmpTemperature reading
prsAtmospheric pressure
volSystem voltage level
batBattery charge level
humRelative humidity
uviUV radiation index
co2Carbon dioxide level
magMagnetic field strength
luxLight intensity
4-CharExtended & Computed

Extended precision readings, computed values from sensor fusion, and system status indicators for advanced telemetry analysis.

Examples:

gyrxGyroscope X-axis rotation
gyryGyroscope Y-axis rotation
gyrzGyroscope Z-axis rotation
rollRoll angle orientation
pitchPitch angle orientation
yawYaw angle orientation
modeCurrent operation mode
rssiRadio signal strength
hdopGPS accuracy measure
satsGPS satellites in view
qualData quality score
cpuCPU usage percentage
memMemory usage percentage
errSystem error code

Data Format

Telemetry data is transmitted as JSON arrays of objects:

Sample Telemetry Datajson
[
  {
    "ts": 0,
    "id": 1,
    "seq": 0,
    "alt": 100,
    "gfx": 1.5,
    "lat": 37.7749,
    "lon": -122.4194,
    "tmp": 20.5,
    "prs": 1013.25,
    "vol": 3.7,
    "bat": 85,
    "mode": "ascent",
    "err": 0
  }
]

System Statistics

30
Total Keys
Defined in specification
255
Error Codes
Comprehensive error system
4
Categories
Global, Sensor, Computed, Status
20Hz
Max Frequency
Recommended transmission rate
~250B
Packet Size
Average JSON packet size

Quick Actions

View Error Codes

Comprehensive error classification and handling system

View Integration Guides

Learn how to implement telemetry on your platform

Browse Competition Specs

Check requirements for specific competitions

Explore Key Categories

Understand different types of telemetry data

Access Code Examples

Get started with ready-to-use implementations

Key Categories Reference

tsTimestamp
number

Timestamp in milliseconds since mission start

Unit: ms

Examples:

012345679876543
idPacket ID
number

Unique identifier for the telemetry packet

Examples:

142100
seqSequence Number
number

Packet sequence number for ordering

Range: ≥ 0

Examples:

01421000
altAltitude
number

Altitude above ground level

Unit: mRange: ≥ 0

Examples:

01005001000
gfxG-Force X-Axis
number

Acceleration along X-axis

Unit: gRange: -10 - 10Precision: 2 decimals

Examples:

01.5-0.89.8
gfyG-Force Y-Axis
number

Acceleration along Y-axis

Unit: gRange: -10 - 10Precision: 2 decimals

Examples:

01.2-0.59.8
gfzG-Force Z-Axis
number

Acceleration along Z-axis

Unit: gRange: -10 - 10Precision: 2 decimals

Examples:

01-0.39.8
latLatitude
number

GPS latitude coordinate

Unit: °Range: -90 - 90Precision: 6 decimals

Examples:

37.7749-122.4194
lonLongitude
number

GPS longitude coordinate

Unit: °Range: -180 - 180Precision: 6 decimals

Examples:

-122.419437.7749
spdSpeed
number

Velocity measured by GPS

Unit: m/sRange: ≥ 0

Examples:

05.215.850
tmpTemperature
number

Temperature reading

Unit: °CRange: -40 - 85Precision: 1 decimals

Examples:

-200202550
prsPressure
number

Atmospheric pressure

Unit: hPaRange: 0 - 1100Precision: 1 decimals

Examples:

05001013.251100
volVoltage
number

Battery voltage

Unit: VRange: 0 - 15Precision: 2 decimals

Examples:

03.7512
batBattery Level
number

Battery charge percentage

Unit: %Range: 0 - 100Precision: 1 decimals

Examples:

0255075100
humHumidity
number

Relative humidity percentage

Unit: %Range: 0 - 100Precision: 1 decimals

Examples:

30456085
uviUV Index
number

UV radiation index

Range: 0 - 15Precision: 1 decimals

Examples:

03711
co2CO2 Level
number

Carbon dioxide concentration

Unit: ppmRange: 300 - 5000

Examples:

40080012002000
magMagnetic Field
number

Magnetic field strength

Unit: μTRange: 0 - 100Precision: 1 decimals

Examples:

25456585
luxLight Intensity
number

Ambient light intensity

Unit: luxRange: ≥ 0

Examples:

0100100010000100000
gyrxGyroscope X-Axis
number

Angular velocity around X-axis

Unit: °/sRange: -2000 - 2000Precision: 1 decimals

Examples:

0100-150500
gyryGyroscope Y-Axis
number

Angular velocity around Y-axis

Unit: °/sRange: -2000 - 2000Precision: 1 decimals

Examples:

0100-150500
gyrzGyroscope Z-Axis
number

Angular velocity around Z-axis

Unit: °/sRange: -2000 - 2000Precision: 1 decimals

Examples:

0100-150500
rollRoll Angle
number

Computed roll angle

Unit: °Range: -180 - 180Precision: 1 decimals

Examples:

045-3090
pitchPitch Angle
number

Computed pitch angle

Unit: °Range: -90 - 90Precision: 1 decimals

Examples:

030-4560
yawYaw Angle
number

Computed yaw angle

Unit: °Range: 0 - 360Precision: 1 decimals

Examples:

090180270360
errError Code
number

System error code (0-255). 0 indicates no errors, 1-31 system errors, 32-95 sensor errors, 96-127 communication errors, 128-255 mission errors

Range: 0 - 255

Examples:

014896144254255
modeOperation Mode
string

Current operation mode

Examples:

pre-launchascentapogeedrogue-deploymain-deploydescentlandingrecoveryabort
rssiSignal Strength
number

Radio signal strength indicator

Unit: dBmRange: -120 - 0

Examples:

-30-60-80-100
hdopGPS Accuracy
number

Horizontal dilution of precision

Unit: mRange: 0 - 50Precision: 1 decimals

Examples:

12.5510
satsGPS Satellites
number

Number of GPS satellites in view

Range: 0 - 20

Examples:

04812
qualData Quality
number

Overall data quality score

Unit: %Range: 0 - 100

Examples:

859298100
cpuCPU Usage
number

System CPU utilization

Unit: %Range: 0 - 100Precision: 1 decimals

Examples:

15356085
memMemory Usage
number

System memory utilization

Unit: %Range: 0 - 100Precision: 1 decimals

Examples:

25457090