Preface

This is the document for everyone who needs to write code that runs on the OBC. It will explain how to set up the repo, and how to build, flash, and debug the code.

The repo is this one:

https://github.com/UWOrbital/OBC-firmware

All code that intends to be run on the OBC should be in this repo.

Some terms before we begin:

ARM - the processor architecture of our actual microprocessor that will be on the CubeSat

x86 - the processor architecture of 99% of computers that you are currently using, except the new M1 MacBook pros

Firmware - refers to the final software that will be loaded onto the OBC, with all subsystem code included

Makefile - it is a build system that can record rules on how to compile and build stuff.

Setup & Building

Follow the steps listed in the README’s “Getting Started” section.

Flashing

We currently flashing using the TI uniflash tool.

  1. Download and install https://www.ti.com/tool/UNIFLASH
  2. Follow the instructions in the README’s “Flashing” section.

Debugging

Since we are using gcc, the associated debugger is gdb the arm-gdb is in the same directory as your gcc compiler

Some notes before we begin