Initial setup
This guide walks you through the process of setting up your development environment.
Windows
Section titled “Windows”WSL installation
Section titled “WSL installation”Follow Microsoft’s official guide to install WSL: https://learn.microsoft.com/en-us/windows/wsl/install. Make sure you install the latest Ubuntu distribution for consistency (this should be the default). You can use another distribution, but note that some steps may differ, most notably package installation.
Linux/WSL
Section titled “Linux/WSL”Standard setup
Section titled “Standard setup”-
Ensure you have Git installed. If you are using Ubuntu 24.04 LTS or later, or installed the default WSL distribution, you should already have it installed. If not, open a terminal and run the following commands to install Git:
Terminal window sudo apt updatesudo apt install git -
Run the following command in a directory of your choice to clone the repository:
Terminal window git clone https://github.com/UWOrbital/OBC-firmware.git -
Install our required tools:
Terminal window sudo apt updatesudo apt install -y build-essential gcc-multilib g++-multilib cmake curl -
Install Python 3.11+. If you are using Ubuntu 24.04 LTS or later, or installed the default WSL distribution, you should already have a compatible version of Python installed.
Terminal window sudo apt install python3Check your installed Python version with:
Terminal window python3 --versionIf it’s 3.11 or higher, you’re good.
-
Install the Python virtual environment:
Terminal window sudo apt install python3-venv -
Setup your virtual environment by running the following commands in the repository’s root directory (the
OBC-firmware
folder):Terminal window python3 -m venv .venvsource .venv/bin/activatepip install -r requirements.txtpip install -e . -
Setup the pre-commit by running the following command in the repository’s root directory:
Terminal window pre-commit install
Ground station (optional)
Section titled “Ground station (optional)”If you’ll also be working on the ground station, complete these extra steps:
-
Install
nvm
:Terminal window curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash -
Restart your shell or run
source ~/.bashrc
(only works on Bash). -
Install Node.js v22:
Terminal window nvm install 22# Verify the Node.js versionnode -v -
Set up the PostgreSQL database with the Database setup guide.