Skip to content

nchampsavoir/xtceproc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

XTCEproc

XTCE-Based Spacecraft Telemetry Processor

Overview

This is an attempt at writing a set of tools for telemetry and telecommand processing in LuaJIT. Currently, only a (partial) telemetry decommutation engine is provided.

XTCEproc works as follows :

  1. It takes an XTCE file as input and generates a docummuation model in LuaJIT.
  2. It makes use of this decommutation model to extract parameter values from a stream of telemetry packets.

Being JIT-compiled, the generated decommutation model is very fast: the decommutation library can process 50Mb of raw telemetry in less than 15 seconds on my 2013 MacBook Air.

Content

This repo consists of :

  • ssm: a Space System Model representation in Lua. Currently, it can parse an XTCE File, load it as a set of objects in memory, and use that memory model to generate the lua source code that corresponds to the Telemetry-related part of the XTCE-File.
  • decom: a decommutation library with a pull-style API.
  • xtceproc: A command line interface to the decom library and the SSM Model.

How stable is it?

It's all very much a work in progress. i will break code and change APIs without warning. Do not use this software for anything serious (yet). I mean it. You've been warned.

Requirements

The decommutation library requires LuaJIT 2.1+ as it relies on 64 bits bitop operations.

Documentation

There isn't any. But you can call the xtceproc script with '--help' to get the basic options. For the rest, just look at the code.

License

MIT

Contributing

All contributions are welcome, especially pull requests (as long as the code is compatible with the MIT license).

About

XTCE-Based Telemetry Processor

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages