Teamtools Dictionary Interface
About Teamtools Studio
Teamtools Studio Utilities is part of JPL's Teamtools Studio (TTS).
TTS is an effort originated in JPL's Planning and Execution section to centralize shared repositories across missions. This benefits JPL by reducing cost through reducing duplicated code, collaborating across missions, and unifying standards for development and design across JPL.
Although Planning and Execution is primarily concerned with flight operations, the TTS suite has been generalized and atomized to the point where many of these tools are applicable during other mission phases and even in non-spaceflight contexts. Through our work flying space missions, we hope to provide tools to the open source community that have utility in data analysis or planning for any complex system where failure is not an option.
For more infomation on how to contribute, and how these libraries form a complete ecosystem for high reliability data analysis, see the Full TTS Documentation.
What is Teamtools Dictionary Interface?
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
Metadata
Release files for tts-dictionary-interface 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tts_dictionary_interface-0.3.0.tar.gz | 29.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tts_dictionary_interface-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 56.9 kB
Release files / tts_dictionary_interface-0.3.0.tar.gz
| Download URL | tts_dictionary_interface-0.3.0.tar.gz |
|---|---|
| Size | 29.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2e16e6175710a95f38e3e120e2ff86dcdaf1e1237ebc07cd99ca901bea0a021c
|
|
BLAKE2b-256 checksum How to use checksums |
4199c2bc32864dbcc76bc1f408867c5eadc48fab90a6c02ed5cdbceb124ff5db
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.6
|
Release files / tts_dictionary_interface-0.3.0-py3-none-any.whl
| Download URL | tts_dictionary_interface-0.3.0-py3-none-any.whl |
|---|---|
| Size | 27.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7893a7cbe3bc966f28aa709f75b15d577c5ce08a4564ba92577997c03a95a51c
|
|
BLAKE2b-256 checksum How to use checksums |
073f287413f2a3fbcf33dee10095f16316b7bee0edd14905b8389b4d30104fb5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.6
|