Skip to content
This repository was archived by the owner on Mar 27, 2026. It is now read-only.

Immortals-Robotics/MainBoardMicroFirmware

Repository files navigation

This repo has been merged into the main firmware repo.


MainBoardMicroFirmware

Main board firmware running on an RP2040 microcontroller.

Prerequisites

Install dependencies:

sudo apt install cmake python3 build-essential gcc-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib openocd tio

Clone the Pico SDK and point PICO_SDK_PATH to it:

git clone https://github.com/raspberrypi/pico-sdk /path/to/pico-sdk
export PICO_SDK_PATH=/path/to/pico-sdk

Building

cmake --preset debug    # or release
cmake --build --preset debug

Build output is placed in out/. The main artifact is out/micro-firmware.elf.

Flashing

Flashing is done via SWD using OpenOCD. This also resets the chip immediately after flashing:

openocd -f interface/raspberrypi-swd.cfg -f target/rp2040.cfg \
  -c 'program out/micro-firmware.elf verify reset exit'

Serial Monitor

tio -b 115200 /dev/serial0

tio automatically reconnects when the chip resets or is reflashed.

Zed Tasks

If using Zed, the following tasks are available via the command palette (task: spawn):

Task Description
Flash Flash via SWD and reset
Reset Reset the chip via SWD
Monitor Open serial monitor in a dedicated terminal tab

About

Main board firmware running on an RP2040 microcontroller.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors