The cFS Kit could have a significant impact for reducing the cost of developing flight software, especially for SmallSats and CubeSats and for reducing mission risks due to flight software issues. Developing reliable robust flight software is a complex activity and lower budget missions don’t always have the resources to do a thorough job and any short cuts in the flight software development process pose risks to mission success. The cFS Kit provides an end-to-end cFS-based system so users are starting from a known working solution. Once they install the kit their job is to migrate to their mission-specific environment which is much easier than building up a new end-to-end flight software system.",
"coInvestigators": {"coInvestigator": "David Mccomas"},
"responsibleProgram": "Center Independent Research & Development: GSFC IRAD",
"workLocations": {"workLocation": "Maryland"},
"website": "https://cfs.gsfc.nasa.gov/",
"endDate": "Sep 2016",
"primaryTas": {"technologyAreas": {
"code": 4,
"name": "Robotics and Autonomous Systems",
"id": 3239
}},
"coFundingPartners": {"organization": {
"acronym": "CTU",
"city": "Laurel",
"name": "Capitol Technology University",
"state": "MD",
"type": "Academic"
}},
"projectManagers": {"projectManager": "Jacqueline J Le Moigne"},
"description": "

The Core Flight System Satellite Starter Kit (cFS Kit) will allow a small satellite or CubeSat developer to rapidly develop, deploy, test, and operate flight software for their intended target processor. The cFS Kit will provide a complete, ready to use cFS-based flight software development solution preconfigured for a number of flight processors, in an effort to reduce the cost of flight software development, integration, test, and operation.

For at least two decades, there has been an effort to reduce the cost of flight software, without reducing the quality or reliability. Flight software for a science instrument and spacecraft is a custom development effort, requiring a significant investment for any size mission. To help reduce this cost, NASA Goddard Space Flight Center has developed a reusable flight software framework, along with a suite of applications known as the Core Flight System (cFS). The cFS has been successfully used on multiple missions including the Lunar Reconnaissance Orbiter (LRO - launched 6/18/2009), the Lunar Atmospheric and Dust Environment Explorer (LADEE - launched 9/6/2013), the Global Precipitation Measurement (GPM - launched 2/27/2014), and the Magnetospheric Multiscale (MMS - launched 3/12/2015), with others currently in development. The cFS is also being used in many different research efforts across NASA, and is currently being adapted by the Johnson Space Flight Center for human rated applications. The cFS is open source, and is rapidly becoming the standard for satellite flight software. The cFS is starting to show real reductions in the flight software cost and schedule.

On the hardware side, there have been advances in miniaturization and reductions in cost that have enabled a new class of Nano satellites commonly known as CubeSats. Many scientists see CubeSats as a way of advancing science objectives that would otherwise have to wait for large flagship missions. CubeSats can also take advantage of launch opportunities by hitching a ride on larger missions, or being deployed from the ISS.

While the hardware for a CubeSat mission is significantly less expensive than a traditional science spacecraft, providing fully functional, reliable, and tested flight software is still a significant expense. Many CubeSat missions simply do not have the schedule or the budget for a typical NASA flight software development effort, leading to shortcuts that can reduce the chance of mission success.

Given the state of CubeSat development, it seems that the cFS is a perfect solution for CubeSat flight software. While the cFS is shaping up to be a very effective solution for CubeSats, the amount of time to adapt the cFS to a CubeSat is still potentially greater than the flight software budget allocated for the mission. Even though the cFS eliminates the need to do a large amount of flight software development, there is still a significant effort to bring up the cFS on a target platform, configure, integrate, and test the cFS. The ground system integration adds even more complexity and effort to that task. Large missions such as MMS or GPM can absorb this cost and schedule, but a CubeSat mission cannot.

The cFS Kit will enable lower cost flight software by providing an “out of the box” cFS-based flight software solution. The initial kit will provide a software-only runtime environment that includes a ground system, the cFS, and a dynamic simulator. This configuration will allow closed loop simulation so a complete example flight software application suite can be provided. COSMOS, a Ball Aerospace open source general purpose user Interface for command and control of embedded systems will be used for the ground system. 42, a GSFC open source dynamic simulator will be used for the simulator. The second phase of the runtime environment will be to integrate a CubeSat processor board such as the SmallSat/CubeSat Electronics Board (SCEB).