OBC

On Board Computer subsystem

The OBC is the brains of our satellite. It facilitates all core flight functionality and implements all major decision making and monitoring of all subsystems. On the initial design phase the approach was calling for a combined ADCS and OBC on one board. Quickly thought it was evident that for modularity and clarity of design reasons we would be better splitting the functionality in two different distinct boards and subsystems.

For the needs of QB50 mission an OBC subsystem was designed from scratch as an open source hardware and software project, with the following specs:

  • A STM32F4 microcontroller is the heart of the design.
  • Hosting the IAC system on board (a Linux board and a camera-lens for image acquisition)
  • Communication and control with the Science Unit (mNLP)
  • Communication and whole-orbit-data generation for all subsystem (also storing on an SD card)

On the software side, a customized version of FreeRTOS is used to facilitate scheduling and services. For all on-board and satellite to ground communications we are implementing the ECSS-CCSDS telemetry and telecommand packet standard (as defined by ECSS-E-70).

 

Some overview and analysis on the OBC software design and general software architecture can be found in N. Chronas MSc Thesis on UPSat.

https://github.com/librespacefoundation/upsat-obc-hardware

https://github.com/librespacefoundation/upsat-obc-software