Ground segment nominal UTC ----.--.-- --:--:--

Telemetry Hub

Ingest, decode, validate and retain spacecraft telemetry. Frames arrive at your station, leave at 8.4 Mbps over a single TLS stream, and land in your own object storage as CDF, CSV or Parquet — with the untouched frame kept alongside every decoded value.

CCSDS 133.0-B Space Packet Protocol CDF / CSV / Parquet AWS · GCP · S3 Idempotent writes
190 ms
Median ingest latency
99.98 %
Ingest availability
4.2 M
Packets per day
90 d
Included retention

Architecture

Five stages between the antenna and your object storage. Each one is separately observable, and each one fails in a way the next one can absorb.

Block diagram of the Helion ground segment with RF terminal, baseband decoding, ingest and platform stages
Fig. 1 — Ground segment reference architecture. HA-GS-0071 rev B.
01

Ingest edge

A regional collector terminates mutual TLS from the station and buffers the stream on local disk before acknowledging. The acknowledgement means the frame is on durable storage at the edge, not that it has been committed downstream. A station that loses uplink mid-pass retransmits from its own queue; the edge deduplicates on spacecraft, APID and sequence counter.

02

Frame validator

Primary header checks run first: version, spacecraft identifier, virtual channel, frame count and the frame length against the declared size. The secondary header follows, then the CRC where the frame carries one. Each rejection carries a reason code and lands in the rejection ledger, visible in the API and exportable as a CSV.

03

Packet demultiplexer

Valid frames are split into space packets on the packet length field in the primary header. Packets are routed by APID to the spacecraft's mission dictionary. An APID with no mapping is written to an unmapped bucket with its bytes intact, which turns an incomplete dictionary into a visible queue instead of a silent loss.

04

Decoder

The secondary header is interpreted according to the spacecraft's declared header type: a packed time code, a coarse-fine time pair, or a raw counter to be scaled. Payload fields are scaled and offset into engineering units, and the scale factors are recorded with the value so a later change to the dictionary does not rewrite history.

05

Commit and export

Decoded parameters are committed to a columnar store keyed by spacecraft, APID, parameter and spacecraft time. The raw frame is written to your object storage bucket under a deterministic path. The write is idempotent: the same frame submitted twice produces one record and one object.

06

Query and delivery

The API exposes parameter history over HTTP, filtered by spacecraft, APID, parameter and time range. Scheduled exports write CDF, CSV or Parquet to your bucket on a cron expression you define, and the API can trigger an on-demand export of a single pass.

Protocols

Helion speaks the framing your flight team already uses. Where a standard leaves room, the choice is yours and it is recorded in the spacecraft registry.

CCSDS transport frames

Frames are accepted per CCSDS 133.0-B, including the Orbit Data Messages, and are validated on the fields that matter operationally: the frame count sequence, the virtual channel identifier and the declared length. A station may send the primary header with the secondary header flag unset for telecommand or engineering data that does not need one.

Virtual channels are carried through to the archive. If your spacecraft separates telemetry into four virtual channels, you can query them separately or together without unpacking anything at the storage layer.

Space Packet Protocol

Within a frame, packets follow the Space Packet Protocol: a six-byte primary header carrying the version, the type, the spacecraft identifier, the APID, the sequence flags and the packet length. Helion uses the sequence flags to detect loss and duplication within a virtual channel, and the APID to route the payload.

Where a spacecraft uses a non-standard packet length convention, the registry records that convention per virtual channel, and the decoder is driven by the registry rather than by a hard-coded assumption.

Secondary headers

Telemetry, telecommand and engineering secondary headers are supported in their packed forms. Time code interpretation covers the CCSDS packed time code with an explicit epoch per spacecraft, so a spacecraft that counts from a mission epoch rather than a calendar epoch decodes to the right instant.

SLE and CFDP

Space Link Extension is accepted over TCP and UDP for stations that already speak it, covering the service of telemetry, telecommand and file service delivery. CFDP is terminated for bulk transfer scenarios, with the file delivery checkpoints used to confirm receipt before the file is processed.

Legacy frames. Frames from pre-CCSDS housekeeping formats are handled by an ingest adapter that converts them to space packets at the edge. The adapter version and the original bytes are both recorded, so a converted frame can always be traced back to what the antenna actually sent.

Formats

Three output formats, one schema. The choice is a delivery preference, not a commitment: a parameter means the same thing in all three.

Common Data Format

CDF, as used across the planetary science community. Each parameter becomes a variable inside a CDF file with its own metadata: units, valid minimum and maximum, fill values and the offset used at decode time. CDF is the right choice when the next consumer of the data is a tool that already speaks it.

IAU/PDS compatibleMetadata preserved

CSV

Long-format CSV, one row per sample: spacecraft, apid, parameter, value, unit, spacecraft time, receive time, quality flag. It is unglamorous and it opens in anything, which is exactly why it survives contact with a spreadsheet at eleven in the evening during an anomaly review.

Long formatQuality flags

Parquet

Columnar Parquet with Snappy compression, partitioned by spacecraft and day and written with statistics that let a query engine prune files before opening them. This is the format to pick when the destination is a warehouse and the questions are aggregations rather than single samples.

SnappyPartitioned

Field quality flags

Every sample carries a quality flag that says how it was obtained. A sample decoded from a valid frame is GOOD. A sample recovered from a frame that failed CRC is RECOVERED. A sample interpolated across a gap is INTERPOLATED and is never written without that flag. A value that failed a range check against the declared limits is OUT_OF_RANGE, and it is stored rather than discarded.

Gap representation

A missing sequence counter produces a gap record rather than a quiet absence. The gap carries the spacecraft, the virtual channel, the expected counter, the last counter seen and the duration. Querying a range returns the gap alongside the samples so a plot shows the hole and a table shows the hole.

Gaps are a first-class output. A gap ledger is exported with the same schedule as the telemetry itself.

Cloud integrations

Your data lands in a bucket you control. Helion holds the credentials it needs and nothing more, and the connection is encrypted in transit and at rest.

AWS

Amazon S3

Exports write to a bucket in any supported region through an IAM role or an access key pair scoped to a single prefix. Objects are written with server-side encryption using your key or an AWS-managed key. Lifecycle rules on the destination bucket are respected by Helion as the source of truth for object expiry.

For operators already using S3 as the archive of record, the raw frame prefix and the derived prefix can be separated so that access policy on the raw archive can be stricter than on the derived data.

GCP

Google Cloud Storage

Exports use a service account with the roles needed for object creation on a single bucket. Customer-managed encryption keys are supported, so an operator with a key-management policy applies it to the archive rather than trusting a platform default.

BigQuery external tables can be pointed at the Parquet prefix directly, which removes the copy step between an export and an analytics query.

S3-compatible

Everything else

Any endpoint that speaks the S3 API is accepted: Ceph RADOS Gateway, MinIO, Wasabi, Cloudflare R2 and comparable private storage. Helion is tested against Ceph and MinIO in the integration suite, so the behaviour is not inferred from API compatibility alone.

Private link

Private connectivity

Where a policy forbids a public endpoint, a dedicated egress IP can be allow-listed, or a private link can be established into your region. The ingest edge supports both, and the station stream terminates on the same endpoint regardless of which path is used.

Service levels

The numbers below are contractual on annual agreements and measured on the ingest path, not on the dashboard.

CommitmentTargetMeasurementCredit
Ingest availability99.98% monthlyMinute-weighted, from edge acknowledgement10% of monthly fee
Median ingest latency≤ 250 msEdge acknowledgement to queryable—
99th percentile latency≤ 2 sEdge acknowledgement to queryable—
Raw frame availability99.9% monthlyObject store read success5% of monthly fee
Scheduled export deliveryWithin 30 min of windowExport job completion—
Support response4 h, 24/5First human responseService credit table
Planned maintenance. Scheduled maintenance is announced at least five working days in advance and is confined to Sunday evenings UTC. Emergency maintenance for a security issue is exempt from the notice period and is posted to the status page within one hour of the decision.

Retries and gaps

A station that loses connectivity retransmits from its own buffer. Helion deduplicates on the spacecraft identifier, the virtual channel, the APID and the sequence counter, so a retransmitted packet does not create a duplicate sample. Where a counter never arrives, the gap is recorded with its duration and exported alongside the data.

Backpressure

When the ingest rate exceeds the committed write rate, the edge buffers rather than discarding. The buffer is bounded; if it fills, the stream is back-pressured and the station is told explicitly through the acknowledgement sequence. Frames are never dropped silently under load.

Send us one pass

Give us a station and a spacecraft and we will run a real ingest against your APID map, then hand back the decoded telemetry and the raw frames.