Teamtools Dictionary Interface

Project logo

Overview

The TTS Dicitonary Interface is an interoperability solution to ensure that other TTS libraries (Dexter, Tower, Dante, TTS Seq, FRESH) can make common assumptions about how to retreive the metadata on spacraft commands and telemetry they need in order to appropriately interpret it. This helps them answer questions like "is this arugment value valid?" and "what are the units for this telemetry point?".

Dictionaries are a key part of the Flight Ground Interface for any spacecraft. They containing the information needed to translate human-readable commands and arugments to binary files that make sense to a spacecraft's command and sequencing flight software and the to take the stream of ones and zeros returned from the spacecraft back into human-readable telemetry back on the ground. They are the Rosetta Stone of any space mission.

While TTS Dictionary Interface is built around AMPCS's XML dictionary schema, it can ostensibly be used with any format of dictionary so long as it can be made into a Pyhton class that behaves the same way that the SemanticDictionary does. More than anything this is an interoperability layer.

For projects that do not use AMPCS, the easiest way to leverage this library is likely to write some middleware to turn your dictionary format into the kind of XML that would be required if you were using AMPCS. Short of that, it is likely that the only other solution is to write a completely new class that looks to downstream TTS modules as if it were generated by TTS Dictionary Interface. This is likely much harder to validate than simply converting to XML and validating against the multimisison AMPCS schema shared in the DemoSat extension of this library.

Projects Currently Supported

  • DemoSat
  • Orbiting Carbon Observatory 2 (OCO-2)
  • NISAR

Architecture

TTS dependencies

  • TTS Utilities

Repository Links: Docs | Issues | Source