8000 GitHub - mbacch/awesome-cfs: A curated list of resources for NASA's core Flight System (cFS)
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

mbacch/awesome-cfs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Awesome core Flight System (cFS)

This is a curated list of cFS links, apps, tools, documentation, training, misions/projects. The goal is to have a one stop shot for new and experienced users to find sources for cFS.

Please contribute!

Note: While NASA's cFS is under active development, it appears some cFS repos are not in active development or are clearly deprecated. Since there are not a ton of cFS resources on the Internet, I have opted to include those in this list for now.

Table of Contents

Framework and Development Environments

cFS Home

Framework Components

  • cFE - Core Flight Executive
  • OSAL - Operating System Abstraction Level
  • PSP -Platform Support Package

Distributions

  • NASA cFS Bundle - Initial build for a cFS system. Also primary Github home for cFS.
  • cfs-basecamp - A lightweight environment to help learn cFS.
  • nos3 - Small satellite enivronment with cFS, COSMOS and NOS3 simulator
  • OpenSatKit - Includes cFS, COSMOS Ground System and the 42 Simulator.
  • CFS-101 - Note that this training is deprecated but it is a core training provided by NASA.

Hardware / Platform Specific

  • pi-sat - A cFS distribution that can be run on a Raspberry Pi.
  • rtems-cfs-demo - This is a Beaglebone Black RTEMS core Flight System demo.

Apps

Generic Apps

  • CS - The Checksum (CS) application is used for for ensuring the integrity of onboard memory.
  • CF - The CF application provides CFDP CCSDS File Delivery Protocol services.
  • CI - The Command Ingest (CI) application receives commands and forwards the command to the appropriate application over the software bus.
  • DS - The Data Storage (DS) application is used for storing software bus messages into files.
  • DR - The Diagnostic Reasoner application is used for fault detection and fault isolation.
  • FM - The File Management (FM) application provides onboard file system management services.
  • HK - The Housekeeping (HK) application is used for building and sending combined telemetry messages to the software bus for routing.
  • HS - The Healthy and Safety (HS) application provides functionality for miscellaneous different monitoring, servicing and reporting.
  • LC - The Limit Checking (LC) application monitors telemetry data, compares the values against predefined threshold limits and supports predefined responses.
  • MD - The Memory Dwell (MD) application monitors memory addresses accessed by the CPU.
  • MM - The Memory Manager (MM) application is used for the loading and dumping system memory.
  • SBN - The Software Bus Networks (SBN) application connects the cFE Software Bus (SB) to other buses.
  • SC - The Stored Command (SC) application allows a system to be autonomously commanded using sequences of commands that are preloaded.
  • SCA - The Stored Absolute Command (SCA) application allows a system to be commanded 24 hours a day using sequences of absolute time tagged sequences.
  • SCH - The Scheduler (SCH) application provides a method of generating software bus messages at pre-determined timing intervals.
  • TO - The Telemetry Output (TO) application is responsible for transmitting telemetry to external destination(s) over transport devices(s).

Lab and Sim Apps

  • bc42_ctrl - Executes a 42 Simulator spacecraft control algorithm that has been ported from 42.
  • bc42_intf - Provide an interface between a 42 Simulator socket and the cFS Software Bus.
  • bc42_lib - Encapsulates 42 simulator data types and functions as a single cFS library.
  • CI_LAB - This Command Ingest Lab (CI_LAB) application is a non-flight utility to send commands to the software bus.
  • pl_sim - Payload simulator app that provides a ground interface to the payload simulator library (PL_SIM).
  • pl_sim_lib - Payload simulator library that simulates a fictitious detector that provides text data.
  • SCH_LAB -This lab application is a non-flight packet scheduler application for the cFS Bundle.
  • TO_LAB - This lab application is a non-flight utility to downlink telemetry from the cFS Bundle.
  • TVSIO - This application provides two-way communication between cFS's Software Bus Network (SBN) and Trick simulations.
  • TVSIO Demo - A sample project for integrating TVS-IO into cFS
  • sc_sim - Simulate a simple spacecraft operational interface that exposes users to a remote operational interface.

Sample and Skeleton Apps

  • Sample App - This sample application is a non-flight example application implementation for the cFS Bundle.
  • Skeleton App - A bare-bones cFS application

Hardware Specific Apps and Demos

  • berry_imu - Core Flight System app that interfaces to the Ozzmaker Berry IMU over a Raspberry Pi I2C interface.
  • gpio_demo - Example app controlling a GPIO pin that can be used as a starting point for more sophisticated apps.
  • lora - Long Range (LoRa) radio communication tech demo app using a Durand/Packard 2400 MHz link.
  • lora_rx - Long Range (LoRa) Receive app for a tech demo of a Durand/Packard 2400 MHz link.
  • lora_tx - Long Range (LoRa) Transmit app for a tech demo of a Durand/Packard 2400 MHz link.
  • pi_iolib - cFS library providing an interface to Raspberry Pi peripherals
  • rpi_btn - Raspberry Pi app demonstrating how to interface with a button.
  • sx128x - An SX1280 transceiver library design to be used on a Raspberry Pi.

Data Interface Apps

  • jmsg_app - Serves as a ground command and telemetry interface for the JMSG_LIB.
  • jmsg_lib - Provide tools for bi-directional translation between JSON text messages and cFS Software Bus binary messages.
  • jmsg_mqtt - Provide a gateway between the cFS Software Bus messages and MQTT messages. The initial version supports predefined MQTT JSON payloads.
  • jmsg_udp - Provide a gateway between the cFS Software Bus and JSON messages transmitted using UDP.
  • mqtt_lib - The Eclipse Paho Embedded C MQTT Library ported to the core Flight System.
  • pl_mgr - Example payload management app.
  • tbl_sat - Raspberry Pi app used in the Table Sat kit.
  • tplug_web - Serves as an example for using JMSG_MQTT to interface with a web app via an MQTT broker.

Tools

  • CCDD - CFS Command and Data Dictionary Tool manages command and telemetry data for CFS and CFS applications.
  • cFS-GroundSystem - Default ground system included with NASA's cFS.
  • CTF - cFS Test Framework (CTF) provides cFS projects with the capability to develop and run automated test and verification scripts.
  • elf2cfetbl - A ground utility to convert ELF to cFE binary tables for cFS.
  • gen_msgids - A ground utility to Generate Message Ids used by cFE for cFS
  • SIL - Tools for generating CFS ECI-compatible code from Simulink models.
  • tblCRCTool - A ground utility to generate binary table CRCs for cFS.

Ground Software

Not cFS but this list includes common ground software used with cFS.

Simulation Software

  • Trick - A common set of simulation capabilities and utilities to build simulations automatically.
  • 42 - Simulator of spacecraft attitude, orbit dynamics, and environmental models.

Command and Control

  • OpenC3 COSMOS - Open Source, Open Architecture - Command, Control and Communication. Based on Ball Aerospace COSMOS.
  • Yamcs - Open-source software framework for command and control of spacecrafts, satellites, payloads, ground stations and ground equipment.

Documentation

Reference Documentation and User's Guides

Applications

Articles

Ground Systems

Overviews and Training

Verification and Validation

cFS Spacecraft, Payloads and Projects

The following projects are documented or reported as using cFS.

Currently Flying Spacecraft

  • LRO - Lunar Reconnaissance Orbitor
  • GPM - Global Precipitation Measurement
  • MMS - Magnetospheric Multiscale
  • PSP - Parker Solar Probe

Upcoming Missions/Spacecraft

  • Artemis II Orion - Similar use as Artemis I including camera controllers and backup flight software.

Past Missions/Spacecraft

Prototypes

  • Project Morpheus - A full scale robotic lander used as a risk reduction test article

About

A curated list of resources for NASA's core Flight System (cFS)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0