• Skip to main content
  • Skip to header right navigation
  • Skip to after header navigation
  • Skip to site footer
NASA classic meatball logo with the text Goddard Engineering and Technology Directorate.

Goddard Engineering and Technology Directorate

  • About ETD
    • About ETD
    • Key Personnel
    • Images
    • Multimedia
    • ETD Featured Stories
  • Capabilities
    • ETD Capabilities
    • Capabilities Listing
    • Facilities Listing
    • core Flight System
    • Flight Dynamics Facility
    • Integrated Design Center
  • Partnerships
  • Our Work
    • Our Work
    • New Technology
    • Flight Projects In Development
    • Flight Projects In Operations
    • Internal Research and Development
  • Divisions
    • Mechanical Systems Division (MSD)
      • MSD Branches
    • Instrument Systems & Technology Division (ISTD)
      • ISTD Branches
    • Electrical Engineering Division (EED)
      • EED Branches
    • Software Engineering Division (SED)
      • SED Branches
    • Mission Engineering & System Analysis (MESA)
      • MESA Branches
  • Careers
    • Internships

  • core Flight System
  • cFS Home
  • Catalog
  • Events
  • Resources
    • Training
    • Certifications
    • Publications
  • cFS Team
    • Core Team
    • Steering Committee
  • Contact cFS

cFS Catalog

cFS Core Components

Core components form the foundation of the cFS architecture, working together to provide a flexible, portable, and reusable framework for spacecraft flight software development across various missions and hardware platforms.


core Flight Executive (cFE)

cFE is a portable, platform-independent framework that creates an application runtime environment by providing services that are common to most flight applications.

Operating System Abstraction Layer (OSAL)

OSAL provides a single Application Program Interface (API) to the core Flight Executive (cFE) regardless of the underlying real-time operating system.

Platform Support Package (PSP)

PSP provides a single Application Program Interface (API) to underlying avionics hardware and board support package.

cFS Apps

Apps are architectural components which provides missions with advanced functions that go beyond those of cFE. Mission functionalities may include command and data handling, guidance, navigation, control, onboard data processing, and much more.


Consultative Committee for Space
Data Systems (CCSDS)
File Delivery Protocol App (CF)

CF provides the capability to transmit files to and receive files from the ground. Tables are used for flexibility in specifying directory priorities and configurations.

Checksum App (CS)

CS performs memory integrity management by verifying the contents of critical flight memory regions. Unexpected changes in memory are reported to ground operators.

Command Ingest Lab App (ci_lab)

ci_lab is a simple command uplink application that accepts CCSDS telecommand packets over a UDP/IP port, as a test interface to a CFS system in a lab environment.

File Data Store App (DS)

DS is used for storing software bus messages in files. Another cFS application such as CF must be used in order to transfer the files created by DS from their onboard storage location to where they will be viewed and processed.

File Manager App (FM)

FM provides onboard file system management services by processing ground commands for copying, moving, and renaming files; decompressing files; creating directories; deleting files and directories; and more.

Housekeeping App (HK)

HK provides the ability to organize data from various packets into new packets in order to best utilize the telemetry bandwidth available for a mission.

Health and Safety App (HS)

The HS app provides functionality for application monitoring, event monitoring, hardware watchdog servicing, execution counter reporting (optional), and CPU aliveness indication via universal asynchronous receiver-transmitter (UART).

Limit Checker App (LC)

LC is responsible for monitoring telemetry values and then issuing messages and activating scripts in the event of threshold limits.

Memory Dwell App (MD)

MD monitors memory addresses accessed by the CPU. MD is used for both debugging and monitoring unanticipated telemetry not previously defined in the system prior to deployment.

Memory Manager App (MM)

MM is used for the loading and dumping of system memory. MM supports command parameters, files, and symbolic addressing

Sample App (sample_app)

sample_app is a simple cFE application to help verify that the cFE build and runtime software is configured correctly.

Scheduler Lab App (sch_lab)

sch_lab is a simple packet scheduler application with a one second resolution. sch_lab is intended to send housekeeping requests and other periodic packets in a lab/test cFS system.

Stored Command App (SC)

The SC app provides the ability to execute onboard absolute-time and relative-time command sequences. The technology offers a generic implementation that can be configured by a user to fit the needs of a specific mission.

Telemetry Output Lab App (to_lab)

to_lab is a simple telemetry downlink application that sends Consultative Committee for Space Data System (CCSDS) telemetry packets over a User Datagram Protocol (UDP) / Internet Protocol (IP) port as a test interface to a cFS system in a lab environment.

cFS Cookie Cutter App

The Cookie Cutter app is a template designed to generate a starter cFS app. It is currently in development.

cFS Tools

Tools are utilized to support the development of cFS by offering modern engineering practices, testing capabilities, and essential resources for building and maintaining the environment.


ELF to CFE Table Tool (elf2cfetbl)

elf2cfetbl is a ground utility to convert  Executable and Linkable Format (ELF) to core Flight Executive (cFE) binary tables for cFS.

Ground System Lab Tool (cFS-GroundSystem)

cFS-GroundSystem allows users to send commands and receive telemetry.

Table CRC Tool (tblCRCTool)

tblCRCTool is a ground utility to generate binary table Cyclic Redundancy Checks (CRC) for cFS.

cFS Interfaces

Interfaces serve as essential connectors between different software components or systems, enabling them to communicate and work together seamlessly within the cFS environment.


External Code Interface (ECI)

ECI is a software abstraction layer which allows the interfacing of externally-generated task/mission-specific code to the cFS via a generic set of wrapper code. 

Software Bus Network (SBN)

SBN facilitates two-way communication from the cFS Software Bus service to an external application.

Simulink Interface Layer (SIL)

SIL is an extension of the Simulink Coder generation tool which allows it to generate code which is compatible with the cFS ECI (External Code Interface).


ABOUT ETD

The Engineering & Technology Directorate at Goddard designs missions, builds satellites and instruments, operates and controls spacecrafts, and acquires/distributes data to the world-wide science community. ETD data products are used to conduct research in Earth and Space Sciences that benefit both the nation and the world.

NASA.gov

NASA Goddard

News & Events

NASA+

EXPLORE ETD

Key Personnel

ETD Featured Stories

Internships

EMPLOYEES

ETD Internal

ETD Town Hall

FOLLOW

  • X
  • Facebook
  • Flickr
  • YouTube
  • Instagram

More NASA Social Accounts


NASA classic meatball logo.

Page Last Updated: May 20, 2025

Page Editor: ETD Web Team

Responsible NASA Official: Hector Dietsch

Sitemap

FOIA

Privacy

Accessibility

Contact ETD