Prerequisites

Rust Toolchain

Install Rust via rustup:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Switch to the nightly toolchain and add the Cortex-M33 target:

rustup toolchain install nightly
rustup override set nightly
rustup target add thumbv8m.main-none-eabi

ARM Cross-Compiler

Install the ARM bare-metal toolchain. The following tools are required:

ToolPurpose
arm-none-eabi-gccC cross-compiler (for host application)
arm-none-eabi-ldLinker
arm-none-eabi-objcopyBinary conversion (ELF to BIN)
arm-none-eabi-objdumpDisassembly and section inspection
arm-none-eabi-gdbDebugger

On macOS (Homebrew):

brew install --cask gcc-arm-embedded

On Ubuntu/Debian:

sudo apt install gcc-arm-none-eabi

Debug and Flash Tools

ToolPurposeInstall
OpenOCDOn-chip debugger backendbrew install openocd / apt install openocd
STM32 Programmer CLIInitial flash configuration and TrustZone enableSTMicro website
gdbgui (optional)Web-based GDB frontendpip install gdbgui

Verify Installation

Run source settings.sh from the project root. The script checks all dependencies and reports any missing tools.