Below is a list of software tools we have found useful in the development of small spacecraft missions.
This list is restricted to publicly available software from NASA or the Open Source community.
Commercially available software packages are not included in this list. While useful in the development of space missions, NASA is restricted from promoting or endorsing commercial products.
Small Spacecraft Avionics
PyCubed is an open-source, radiation-tested CubeSat avionics platform that integrates power, computing, communication, and attitude determination and control functionality into a single low-cost PC104-compatible module programmable entirely in Python.
Guidance, Navigation, and Control
The commercial off-the-shelf (COTS) camera and computer-based Star Tracker (COTS Star Tracker) is intended to enable reasonably high accuracy attitude estimation using COTS cameras and computers. This open source Python 3-based software is intended to be paired with a user-provided COTS camera and computer. Several common COTS single board computers (SBCs) and COTS cameras have been demonstrated with this software through its highly- automated installation, configuration, and operation. It’s hoped that this software will enable improved mission performance and lower costs. It’s also hoped that the software’s capability and performance will continue to improve with the help of the community.
POC: Samuel Pedrotty
Satellite Constellation Remote Sensing
SPRINT can be used to simulate the actions of a constellation by utilizing crosslinks to consolidate data to be downlinked at scheduled times. It schedules, plans, and replans the activities of large Earth-observing satellite constellations under changing conditions. The SPRINT framework seeks to maximize observation data, minimize latency, and autonomously adapt to unexpected events. This is done by utilizing crosslink capabilities on the satellites, a master ground planner, and onboard local planners on each satellite.
POC: Kerri Cahoy
Virtual Constellation Engine is a cloud framework to prototype and emulate line-of-sight, latency, and bandwidth of satellite applications. It provides support for orbits calculation, instrument control, and constellation monitoring (positions, CPU/memory/disk/network usage, configuration changes made to the emulated onboard instruments).
POC: Marco Paolieri
The Trade-space Analysis Tool for designing Constellations (TAT-C) provides a framework to explore new ways to design Earth science missions. The software allows the user to ask questions, such as:
- Which type of constellations should be chosen?
- How many spacecraft should be included in the constellation?
- Which design has the best cost/risk value?
Trajectory Design and Optimization Tools
The Trajectory Browser is a website hosted at NASA Ames Research Center. It has an enabled search engine, a visualizer, and mission summaries for designing trajectories to planets and small-bodies, asteroids and Near Earth Objects (NEOs).
POC: Chad Frost
This website is managed by experienced astrodymanists (John Carrico and Mike Loucks) who supply trajectory related articles on mission design and operations, trajectory solving solutions and design using STK/Astrogator, launch targeting, trajectory files, tutorials, and STK scenarios.
POC: John Carrico and Mike Loucks
The General Mission Analysis Tool (GMAT) is the world’s only enterprise, multi-mission, open source software system for space mission design, optimization, and navigation. The system supports missions in flight regimes ranging from low Earth orbit to lunar, libration point, and deep space missions.
POC: NASA GSFC
The DAS performs orbital debris assessments, as described in NASA’s “Guidelines and Assessment Procedures for Limiting Orbital Debris”.
POC: John Opiela
SPICE supports CubeSat and smallsat missions and offers the following capabilities: trajectory planning, mission engineering analyses, planning an instrument pointing profile, observation geometry visualization, and science data archiving and analysis.
POC: Boris Semenov
Mission Operations Software
Open MCT is a next-generation mission control framework for visualization of data on desktop and mobile devices
POC: Jay Trimble
cFS is a generic flight software architecture framework used on flagship spacecraft, human spacecraft, CubeSats, and Raspberry Pi. This repository is a bundle of submodules that make up the cFS framework. Note the “lab” apps are intended as examples only, and enable this bundle to build, execute, receive commands, and send telemetry. This is not a flight distribution, which is typically made up of the core Flight Executive (cFE), OS Abstraction Layer (OSAL), Platform Support Package (PSP), and a selection of flight apps that correspond to specific mission requirements.
POC: Gerardo Cruz-Ortiz
The NOS3 is a suite of tools developed by NASA’s Katherine Johnson Independent Verification and Validation (IV&V) Facility to aid in areas such as software development, integration & test (I&T), mission operations/training, verification and validation (V&V), and software systems check-out. NOS3 provides a software development environment, a multi-target build system, an operator interface/ground station, dynamics and environment simulations, and software-based models of spacecraft hardware.
POC: John Lucas
Project Cost Estimation
Used to develop cost estimates/models for space systems, this technology combines an Excel add-in with a simple, robust, and transparent collection of NASA cost-estimating relationships (CERs), statistics, work breakdown structures, and cost-estimating algorithms.
POC: NASA MSFC
CROSS-REF. S3VI CoP Webinar – NASA and Smallsat Cost Estimation Overview and Model Tools
NICM is a probabilistic cost and schedule estimating tool. NICM has proven instrument cost and schedule modeling capabilities that provide probabilistic estimates at both the system and subsystem level for many different instrument types.
POC: NASA JPL
CROSS-REF. S3VI CoP Webinar – NASA and Smallsat Cost Estimation Overview and Model Tools
SPENVIS is an interface to model the space environment and its effects including cosmic rays, natural radiation belts, solar energetic particles, plasmas, gases, and “micro-particles”.
POC: SPENVIS Development Team
This tool is meant to be used as guidance for understanding the radiation risks that apply to a specific set of circumstances, not to replace modeling one’s own environment or replacing the need to test a device or system. When used from start to finish you can obtain guidelines to help mitigate radiation effects and understand where you can avoid risks, based on simplified inputs, for a part in question. The tool outputs are reactive to the user inputs and will change accordingly to help identify relative risks and hazards and can be used to create a parts list capturing all of the inputs and outputs.
POC: Michael Campola
This tool predicts Single Event Effects (SEE). It has been almost a decade since the introduction of CREME96, the current state-of-the art tool for SEE rate prediction. CREME96 uses phenomenological models to predict SEE rates. These models were based on two assumptions. First it was assumed that the ionization trail left by the particle was much narrower than the minimum feature size in the microelectronic circuits. Second, it was assumed that the SEE sensitivity of individual microcircuits could be idealized as being due to a single sensitive junction. The cross section of this junction versus the linear energy transfer (LET) rate of the ionizing particle could then be measured and used to estimate the SEE rate. Since CREME96 was developed, the minimum feature size has shrunk by more than a factor of 100. As a result, the interaction between track microstructure and device characteristics can no longer be ignored. This assumption in CREME96 has been shown to have significant shortcomings when applied to new and emerging technologies like advanced complementary metal-oxide-semiconductor (CMOS), silicon-germanium heterojunction bipolar transistors (SiGe HBT), photodiodes, and infrared (IR) focal plane arrays (FPAs). The solution is to replace current models in CREME96 with a physics-based model that correctly accounts for the distribution of energy deposition about the track and the possible existence of multiple sensitive junctions in each microcircuit.
POC: Brian Sierawski
EDGE is a real-time 3d graphics rendering package based on the Dynamic On-board Ubiquitous Graphics (DOUG) graphics engine. It combines key elements from graphics software tools developed for Space Shuttle and International Space Station (ISS) programs and adapts them for integration with other engineering simulations and facilities. The tool allows drop-in integration with the NASA Trick Simulation Environment and provides a fusion of 3D graphics and simulation outputs.
POC: NASA JSC
CROSS-REF. S3VI CoP Webinar – Seeker Overview and Mission 1 Review– A New Development Approach for In-Space Inspectors
NASA Tech Transfer Program: Software in 15 different space project categories
Over 1000 NASA released software packages covering: Project Management, System Testing, Operations, Design, Vehicle Management, Data Processing, Propulsion, Structures and Mechanisms, Crew and Life Support, Materials Processes, Electronics and Power, Environmental Science, Autonomous Systems and Aeronautics.
If you use a software tool that you believe should be added to this listing please provide the appropriate reference information to: