Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nasa/fprime
F´ - A flight software and embedded systems framework
https://github.com/nasa/fprime
components cpp embedded embedded-systems flight flight-software fprime framework nasa object-oriented-programming raspberry-pi real-time spaceflight
Last synced: 5 days ago
JSON representation
F´ - A flight software and embedded systems framework
- Host: GitHub
- URL: https://github.com/nasa/fprime
- Owner: nasa
- License: apache-2.0
- Created: 2017-06-22T12:45:27.000Z (over 7 years ago)
- Default Branch: devel
- Last Pushed: 2024-10-29T21:32:30.000Z (2 months ago)
- Last Synced: 2024-10-29T23:45:41.260Z (2 months ago)
- Topics: components, cpp, embedded, embedded-systems, flight, flight-software, fprime, framework, nasa, object-oriented-programming, raspberry-pi, real-time, spaceflight
- Language: C++
- Homepage: https://fprime.jpl.nasa.gov
- Size: 410 MB
- Stars: 10,072
- Watchers: 262
- Forks: 1,310
- Open Issues: 244
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
- Citation: CITATION.cff
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-robotic-tooling - F Prime - A component-driven framework that enables rapid development and deployment of spaceflight and other embedded software applications. (Frameworks and Stacks)
- awesome-list - fprime - A flight software and embedded systems framework | nasa | 8409 | (C++)
- awesome-repositories - nasa/fprime - F´ - A flight software and embedded systems framework (C++)
README
A Flight-Proven, Multi-Platform, Open-Source Flight Software Framework
#
F´ (F Prime) is a component-driven framework that enables rapid development and deployment of spaceflight and other embedded software applications. Originally developed at the [Jet Propulsion Laboratory](https://www.jpl.nasa.gov/), F´ has been successfully deployed on [several space applications](https://nasa.github.io/fprime/projects.html). It is tailored but not limited to small-scale spaceflight systems such as CubeSats, SmallSats, and instruments.**Please Visit the F´ Website:** [https://nasa.github.io/fprime](https://nasa.github.io/fprime/) for more information.
## What does F´ provide
- An architecture that decomposes flight software into discrete components with well-defined interfaces
- A C++ framework that provides core capabilities such as message queues and threads
- Modeling tools for specifying components and connections and automatically generating code
- A growing collection of ready-to-use components
- Testing tools for testing flight software at the unit and integration levels.Learn more about [F´ key features](https://nasa.github.io/fprime/features.html).
## System Requirements
1. Linux, Windows with WSL, or macOS operating system
2. git
3. [CMake 3.16+](https://cmake.org/download/). CLI tool must be available on the system path.
4. Clang or GNU C and C++ compilers (e.g. gcc and g++)
5. [Python 3.8+](https://www.python.org/downloads/), virtual environments, and PIP## Getting Started
To get started with F´, install the F´ bootstrapping tool with:
```
pip install fprime-bootstrap
```Then, create a new project with:
```
fprime-bootstrap project
```See the [HelloWorld Tutorial](https://fprime-community.github.io/fprime-tutorial-hello-world/) to guide you through all the steps of developing an F´ project.
New users are encouraged to read through the [User Guide](https://nasa.github.io/fprime/UsersGuide/guide.html) and explore the [other tutorials](https://nasa.github.io/fprime/Tutorials/README.html).
## Getting Help
### Discussions
To ask questions, discuss improvements, and ask for help please use the project's [GitHub Discussions](https://github.com/nasa/fprime/discussions).
### Bug reports
To report bugs and issues, [open an issue here](https://github.com/nasa/fprime/issues).
### Community
The [F´ Community](https://github.com/fprime-community) GitHub Organization contains third party contributions, more documentation of flight software development, and additional resources.## Resources
- [User Guide](https://nasa.github.io/fprime/UsersGuide/guide.html)
- [Tutorials](https://nasa.github.io/fprime/Tutorials/README.html)
- [Discussions](https://github.com/nasa/fprime/discussions)
- [Submit an Issue](https://github.com/nasa/fprime/issues)
- [F´ Community](https://github.com/fprime-community)## Release Notes
The version history and artifacts associated with the project can be found at [Releases](https://github.com/nasa/fprime/releases).