Skip to main content
For the complete documentation index, see llms.txt.
The Spacecraft Schedule File (SSF) is a flat ASCII text format that lists every operationally relevant activity for a spacecraft over a chosen window — ground station passes, eclipse entries and exits, apsis crossings, node crossings, and South Atlantic Anomaly (SAA) transits — in a single chronologically sorted document. The format is derived from the CCSDS 902.1 Simple Schedule data model and uses Keyword-Value Notation (KVN) so the file is readable by humans and trivially parsed by downstream tooling. VALAR emits SSF files from the Export Schedule dialog on the Burn Plan Timeline and the passes timeline.

Key Components

An SSF file is composed of three KVN blocks separated by blank lines:
  • Header Block: format version, free-form comments, generation timestamp, originator
  • Schedule Metadata Block: spacecraft identifier and the inclusive UTC window the schedule covers
  • Activity Blocks: one block per activity, sorted ascending by start epoch, each containing the activity type, start and (when applicable) stop epochs, and any type-specific metadata keywords

Header Block

The Header Block opens the file and identifies the document and its origin. VALAR also writes operational COMMENT lines that record how a schedule was produced. When a spacecraft’s orbital events were computed from a lower-accuracy public TLE (see Orbit age), the file carries COMMENT Orbital events derived from public TLE - indicative timing, so a downstream reader treats their exact timing as indicative. When no fresh orbit was available at all, the file instead carries COMMENT Orbital events unavailable - no fresh state vector.

Schedule Metadata Block

The Schedule Metadata Block follows the Header and frames the activities that follow with the spacecraft and time window they belong to.

Activity Blocks

Each activity is its own block containing ACTIVITY_TYPE, ACTIVITY_START, an optional ACTIVITY_STOP, and any type-specific metadata. Sorting invariant. Activities appear in ascending order by their ACTIVITY_START epoch regardless of type. A ground pass and an eclipse entry that fall in the same minute are interleaved by start time, not grouped by category. Optional ACTIVITY_STOP. The ACTIVITY_STOP keyword is present for activities that have a duration (ground passes, umbra and penumbra bands, SAA transits) and is omitted for instantaneous events (apsis crossings, node crossings, and SAA_EXIT). When ACTIVITY_STOP is omitted you can treat the activity as a single-epoch marker at ACTIVITY_START.

Activity Types

The ACTIVITY_TYPE keyword takes one of exactly 11 case-sensitive values:

KVN Encoding

SSF uses a fixed Keyword-Value Notation:
  • Each keyword occupies a 24-character left-justified column followed by = and the value.
  • Values are plain ASCII text encoded as UTF-8. There is no quoting or escaping.
  • Blocks are separated by a single blank line.
  • Within an activity block, type-specific metadata keywords appear in alphabetical order after ACTIVITY_START and ACTIVITY_STOP.

Common Use Cases

  • Operations scheduling: Hand a single file to flight controllers covering every contact, eclipse, and high-radiation transit for the upcoming window.
  • Automated handover: Feed the schedule into ground-segment automation to pre-arm tracking, payload, and safe-mode logic at the right times.
  • Downstream tooling: Consume the schedule from third-party planning tools or in-house scripts using any KVN parser without bespoke schema work.
Complete definition of the Simple Schedule data model is available in the CCSDS 902.1-B-1 Simple Schedule recommendation.

Worked Example

The example below shows a 2-day schedule for a single LEO spacecraft. It contains four representative activity blocks: a ground pass with an explicit stop, an umbra entry band, an instantaneous periapsis crossing, and an SAA entry carrying its DURATION_S metadata.