Intro to Frameworks
To avoid writing the flight-software from scratch for new missions, some organizations have developed so called
Flight-Software Frameworks (FSWF), with the intention of decreasing the time and resources needed to implement the flight software, but also for ensuring basic functionalities, standards and safety measures, along multiple missions.
All FSWF aim to be reusable software architecture that provides the core building blocks needed to develop, integrate, and operate software for spacecrafts. They provide common generic services that can be tailored for specific missions.
List of Flight-Software Frameworks
| Framework | Main Developer | Scope | Impl. Language | License |
|---|---|---|---|---|
| core Flight System | NASA | HAL, OSAL, Middleware, Component Framework, Services | C | Apache 2.0 |
| F Prime (F´) | NASA JPL | Component Framework, Middleware, Services | C++ | Apache 2.0 |
| RODOS | University of Würzburg | RTOS, Middleware | C++ | GPLv3 |
| NanoSat MO Framework | ESA | Component Framework, Middleware, Services | Java | ESA Open Source |
| CubedOS | Vermont State University | Component Framework, Middleware, Services | SPARK Ada | GPLv3 |
| Outpost | DLR | Middleware, Services | C++ | MPL-2.0 |
| Flight Software Framework | University of Stuttgart | OSAL, Middleware, Services | C++ | Apache 2.0 |
| sat-rs | University of Stuttgart | Middleware, Services | Rust | Apache 2.0 |
| Adamant | LASP University of Colorado Boulder | Middleware, Component Framework, Services | SPARK Ada | Apache 2.0 |
| Space ROS | NASA and Blue Origin | Middleware, Component Framework, Services | C++ / Python | Apache 2.0 |
For an even more comprehensive list of open-source Flight-Software frameworks, check out my curated Awesome Flight-Software.