Preparing for Flight Readiness

This checklist is a framework for when you are preparing KubOS before integrating your spacecraft into the launch vehicle. This is only valid for the software, although it might reference hardware to give context. Also, it is important to add steps to account for your mission specific apps and services (or whatever else you add to the system).

Prepare Linux

  1. Build the flight KubOS image, including any core and/or hardware services you need for your mission.
  2. Load the flight image onto the spacecraft.
  3. Verify that the recovery and upgrade processes work as expected.

Prepare Services

  1. Boot up the bus.
  2. Ensure any included hardware services are properly communicating with hardware by issuing a noop mutation to each.
  3. Ensure any payload services you’re including are properly communicating with their respective payload (hopefully by running the noop mutation you dutifully included).
  4. Ensure your config.toml is appropriate for your bus configuration.
  5. Configure your logging and log retention for your system memory requirements.


We recommend that you limit logging to info and higher if you are using a file location that is prone to wearing out, as debug logs can cause significant amounts of logs to be generated. This can be done by removing the two lines containing debug from the app and service rsyslog config files.

Prepare Applications

  1. Register stable versions of all applications (if you include multiple versions, make sure the correct one is active)
  2. Reboot the bus, and ensure all apps that should start on boot are properly started.
  3. If you followed the Deployment doc for your deployment app, or you are using the KubOS deployment app, you will need to:
  1. Ensure the deployed U-boot environment variable is set to False.
  2. Ensure the remove_before_flight U-boot environment variable is set to False.
  3. Ensure the deploy_start U-boot environment variable is unset.


The fw_setenv command can be used to set U-Boot environment variables from the Kubos Linux command line. Similarly, the fw_printenv command can be used to print the current value of a U-Boot environment variable.