fprime
cFS
| fprime | cFS | |
|---|---|---|
| 74 | 10 | |
| 10,973 | 1,347 | |
| 0.7% | 4.7% | |
| 9.7 | 6.5 | |
| 4 days ago | 6 days ago | |
| C++ | C | |
| Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
fprime
-
A secure embedded operating system for microcontrollers
servos (three at each rotor swashplate), as well as power management and thermal control functions."[0]
[0] https://rotorcraft.arc.nasa.gov/Publications/files/Balaram_A...
[1] https://nasa.github.io/fprime/
- Fprime – A flight software and embedded systems framework by NASA
- F Prime – Flight software framework by NASA
- F': NASA Ingenuity Open-Source Flight Software Framework
-
Help finding flight software learning resources
Does anyone have any suggestions for learning to write flight software or have any resources to learn from? I'm not necessarily looking for a framework to learn either, unless you think I should be focusing on something like https://nasa.github.io/fprime/. At this point, I don't know what I don't know... what should I be focusing on?
-
What version of C++ does JPL use?
F´ (F Prime) is originally developed at JPL, which is written under the C++11 standard. The linked video should be based on JPL Institutional Coding Standard for the C Programming Language, which is a guideline for C. They should be using C++11 nowadays.
- GitHub - nasa/fprime: F' - A flight software and embedded systems framework
- Mars-Hubschrauber Ingenuity übertraf alle Erwartungen: Die kleine Helikopterdrohne begleitet den Rover Perseverance seit zwei Jahren – niemand hätte gedacht, dass er so lange durchhält
-
Mars Ingenuity helicopter breaks record for speed and altitude, NASA says
The navigation camera is something you can buy online, the other terrain camera is a Sony IMX 214, The flight software is on github, the altimeter is from sparkfun.
-
[ANN] NASA's Ogma -- now with FPrime support
[1] https://github.com/nasa/fprime
cFS
-
Artemis II Fault Tolerance
While the Back up is on a LEON 3 (SPARKV8) CPU using the VxWorks and NASA's CFS framework. (https://github.com/nasa/cFS)
NASA actually makes all this publicly available information available on their NTRS server.
Primary and BFS Info:
-
NASA Built Artemis II's Fault-Tolerant Computer
This article does not go into detail about the actual architecture and RTOS's used.
Orion's primary flight control runs on a quadruple redundant architecture, powered by Green Hills INTEGRITY RTOS on a BAE Systems RAD750 processor. Four independent channels. Radiation hardened. Built to survive deep space. If one channel fails, three more are right behind it + the Back Up Flight software.
But the BFS is something different entirely. It runs on a LEON3 board powered by VxWorks, on separate hardware, executing separate software logic. NASA's own cFS (https://github.com/nasa/cFS) — the Core Flight System. The same open architecture framework that guided the James Webb Space Telescope. The same system running on the Mars rovers. A battle-tested, modular, reusable flight software framework that NASA has trusted across some of the most demanding missions ever launched. If a software bug, a design flaw, or a common cause failure ever compromised the primary system, a redundant copy of that same system would fail in exactly the same way. Dissimilar redundancy eliminates that risk. A completely different OS, different codebase, different development team. If the primary goes down, the BFS does not share its vulnerabilities. Orion's flight software redundancy is not simply "primary + backup." It is a dissimilar redundancy architecture, and that distinction is everything.
You can read more about the Orion Flight Software and BFS here:
https://ntrs.nasa.gov/api/citations/20190000011/downloads/20...
- NASA CoreFlight System (CFS)
- Examples of excellently-written projects.
-
[ANN] NASA's Ogma -- now with FPrime support
[4] https://github.com/nasa/cFS
-
C programming jobs?
I definitely recommend looking at https://github.com/nasa/cFS for some great pure C coding.
-
Resources for Space sector embedded programming
Nowadays there's a trend towards openness and reusability. There's frameworks like the NASA Core Flight System (cFS) and the NASA JPL F Prime framework. There's also workshops where all of us flight software engineers get together and discuss new research, trends etc: https://www.youtube.com/c/FlightSoftwareWorkshop
-
Ask HN: What open source projects go to space?
Core Flight System (cFS) https://github.com/nasa/cFS
NASA has a lot of open source projects including a bunch that don't "go to space" but are used in space related projects (check each project for contributor guidelines):
https://github.com/nasa/openmct - web based mission control software
-
ANN: NASA's Ogma
Your best bet is probably to read the documentation of the project itself, as well as documentation from the associated projects FRET, Copilot (https://copilot-language.github.io/documentation.html, https://ntrs.nasa.gov/citations/20200003164), and cFS (https://github.com/nasa/cFS).
What are some alternatives?
Facts-about-State-Machines - I hold the opinion that state machines are underrated
ogma - Generator of runtime monitors for flight and robotics applications.
ardupilot - ArduPlane, ArduCopter, ArduRover, ArduSub source
fret - A framework for the elicitation, specification, formalization and analysis of requirements.
trick - Trick Simulation Environment. Trick provides a common set of simulation capabilities and utilities to build simulations automatically.