F´ (or F Prime) is a software framework for the rapid development and deployment of embedded systems and spaceflight applications. Originally developed at NASA’s Jet Propulsion Laboratory, F´ is open-source software that has been successfully deployed for several space applications. It has been used for but is not limited to, CubeSats, SmallSats, instruments, and deployable.
F´ has the following features:
- Component architecture with well-defined interfaces
- C++ framework providing core capabilities like queues, threads, and operating-system abstraction
- Tools for designing systems and automatically generating code from systems design
- A standard library of flight-worthy components
- Testing tools for unit and system-level testing
F´ Information and External Resources
- GitHub Repository
- Community GitHub Organization
- Architecture Overview
- Community Forum and Mailing List
- Note: Community forum has been replaced by Discussions since mid june 2021.
- Latest Documentation
- v2.1.0 Documentation
- v2.0.1 Documentation
- v2.0.0 Documentation
- v1.5 Series Documentation
F´ System Requirements
To develop applications with F´, the following requirements of the user’s system must be met.
- Linux or Mac OS X operating system (or Windows Subsystem for Linux on Windows)
- CMake available on the system path
- Java 1.8 or newer, e.g. OpenJDK
- Bash or Bash compatible shell
- Clang or GCC compiler
- Python 3 and PIP
Quick Installation Guide
F´ can be quickly installed and ready to use by:
- Cloning the GitHub repository
- Installing Python code
- Building one of our reference applications.
For full installation instructions please see: INSTALL.md.
Clone and Install
git clone https://github.com/nasa/fprime.git pip install --upgrade fprime-tools fprime-gds
Build the Ref Application
cd Ref fprime-util generate fprime-util build
Run the Ref Application
./bin/*/Ref ... CTRL-C
Full information on the code and F´ is available on our GitHub page.