Hi everyone,
Let’s try this again… My original post got caught as spam, and I think there was a suspicion that I am an AI bot as well. I promise I am a real human just trying to share some open-source code!
To give a little context, this project actually stems from my original Google Summer of Code proposal run by the Libre Space Foundation back in 2019. 7 years later I’ve been building a small MIT-licensed tool called pluto-ecss, and I am hoping it might be useful to those of you working on operations or ground-segment software.
The Problem & The Tool
It is a transpiler and runtime for PLUTO, the procedure language ECSS standardized for spacecraft test and operations (ECSS-E-ST-70-32C).
When you write a PLUTO procedure, pluto-ecss produces readable, runnable Python plus a small runtime. You can plug these activities directly into real behavior - for example, emitting an actual telecommand instead of relying on the default trace print.
It currently implements most of Annex A.1/A.3, including:
- Steps and sub-bodies
- Continuation tests
- Object property requests
- Reporting-data snapshots
- Parallel blocks and watchdogs
The Code
I’ll keep this brief this time. You can install it via: pip install pluto-ecss
You can find the source code and documentation on GitHub: [GitHub - stzifkas/pluto-ecss] (Note: There is also a Pyodide browser playground linked in the repo readme so you can test procedures without installing anything).
As this is a solo project, I would really value a review from people who have worked with real ops procedures