
Hard(ware) to the Core
Subheadline
NASA-developed open-source software forms basis of spacecraft emulator
At the heart of every satellite is a computer designed to control it and communicate with operators on Earth. Effectively the spacecraft’s nerve center, the command and data handling system is essential to a satellite. But running that system requires a framework to build upon, something NASA provides the public openly.
The core Flight System (cFS) is an open-source software framework that allows spacecraft to have a common starting point, without having to code all the base functions from scratch. Managed out of NASA’s Goddard Space Flight Center in Greenbelt, Maryland, cFS covers all the basics that a spacecraft’s computer needs to operate.
“It allows applications to communicate and be managed on the spacecraft,” said Jay Bugenhagen, the former program manager for cFS. “Missions typically would add their own customized applications, such as navigation, guidance, and control, but the main core functions are provided by cFS.”
With its open-source availability, cFS has become a standard for running software aboard satellites. Bugenhagen said virtually all satellite missions run by Goddard use cFS, and organizations like the ESA (the European Space Agency) and members of the commercial space industry are frequent users.
As a manufacturer of computer hardware for spacecraft, Aitech Systems Corp. of Chatsworth, California, incorporates cFS into its SP0 brand of single-board computers, though users can elect to use another software. There are hundreds of components that can be plugged into an SP0 to fit any mission and hundreds of permutations of software to control them, so for its latest model, the SP0-S, Aitech explored a new way to ensure compatibility with all that hardware and software. Spacecraft makers would usually need the computer in hand to know exactly how the programs would run, but Aitech turned to a process called emulation.
Emulation recreates the hardware environment inside another computer. While it’s not a direct one-to-one replica, it’s close enough to simulate how the computer will perform in flight. Aitech partnered with Embedded Flight Systems Inc. to build an emulator that could replicate the SP0 hardware, any components that might be used with it, and the accompanying software. And to mirror SP0, cFS forms a key part of the emulator, taking care of the basic software functions, just as it’s used in space missions.
“That’s what this whole system is built on top of. Now no matter what software you run, it might be a bit different on the SP0-S, but it’ll run,” said Ralph Grundler, director of space research and development at Aitech. “Back in the olden days with the first satellites, it was all machine language written right on the processor. Now we’re a couple of levels abstracted away, and you can emulate it without needing any hardware.”
The emulator helped design the SP0-S, but now it’s become a product itself. Aitech’s SP0 computer boards are a popular choice for companies that need assets in space, and the emulator has been used by companies like space technology outfit Red Canyon to test software that will be deployed in orbit. Grundler said NASA’s work on cFS has been indispensable for the commercial space industry.
“Think about every time NASA’s flown something — that means they’ve learned something. They’ve put that into cFS,” said Grundler. “That’s why this core Flight System software is so critical to anybody who wants to start their own space company.”

Most of the robotic missions operated by Goddard Space Flight Center, such as the Core Observatory of the Global Precipitation Measurement mission use the core Flight System (cFS) as a software framework to build upon and manage base systems. This versatility makes it a popular choice to run systems on commercial spacecraft as well. Credit: NASA

The SP0-S is the latest in a line of spacecraft computers produced by Aitech. So customers can test software on the SP0-S without needing the physical circuit board, Aitech used the core Flight System to build an emulator. Credit: Aitech Systems Corp.

An artist's rendering of the Lunar Atmosphere and Dust Environment Explorer (LADEE) near Earth's moon. Credit: NASA