Skip to content

AdamElliott-AB/yamcs

 
 

Repository files navigation

Yamcs Mission Control Maven Central

Yamcs is a mission control framework developed in Java. It uses an open-ended architecture that allows tailoring its feature set using yaml configuration files. You can also extend the default feature set by writing custom Java classes.

To start developing your own Yamcs application, follow our Getting Started guide.

Documentation

License

Yamcs is licensed under Affero GPLv3.

For commercial licensing please contact Space Applications Services with your use case.

Development Setup

To work on the core components of Yamcs you need JDK8, Maven and npm.

Build Java jars:

mvn clean install -DskipTests

Build web interface:

cd yamcs-web/src/main/webapp
npm install
npm run build
cd -

These commands will produce an optimized production version of the web interface. This process will take a few minutes. For faster incremental builds run in watch mode (npm run watch).

For demo and development purposes we work with an all-in-one simulation environment that uses many Yamcs features. In this simulation, Yamcs receives TM from a simple simulator of a landing spacecraft. Yamcs can also send some basic TC. The simulator starts together with Yamcs as a subprocess.

./run-example.sh simulation

This configuration stores data to /storage/yamcs-data. Ensure this folder exists and that you can write to it.

When Yamcs started successfully, you can visit the built-in web interface by navigating to http://localhost:8090.

Contributions

While Yamcs is managed and developed by Space Applications Services, we also consider pull requests from other contributors. For non-trivial patches we ask you to sign our CLA.

About

A framework for mission control

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 82.3%
  • TypeScript 12.0%
  • HTML 5.0%
  • CSS 0.5%
  • Shell 0.2%
  • Batchfile 0.0%