Skip to content
/ ECI Public

CFS application framework for integrating external C code into the CFS environment

License

Notifications You must be signed in to change notification settings

nasa/ECI

Repository files navigation

Overview

The cFS (Core Flight System) ECI (External Code Interface) 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. The ECI enables direct integration of existing or autogenerated code without the need for hand-written interface code and allows access to cFS API's including table services, time services, the software bus, event services, and fault reporting.

The ECI accomplishes this by compiling with a interface definition (defined as a header file) which contains the data structures needed to manage the CFS interfaces for the external code. The result of compiling the ECI, the interface header file, and the external code is a full CFS application. This process eliminates the need for hand edits to integrate generated code, allowing quicker integration of code and reducing the probability of human error in the integration process.

Getting Started

The ECI has been used with CFE 6.5 on various missions and is tested against the CFE located here. There are no known incompatibilities with older (or newer) versions of the CFE, but they have not been tested.

Status

build passing

Feedback

Please submit bug reports and feature requests via Github issues. Feature requests will be considered as they align with the requirements of NASA missions which are using the ECI.

About

CFS application framework for integrating external C code into the CFS environment

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages