Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Target Support and Tiers

Flint uses a tiered support model for targets and boards. The tier tells you how much you can rely on a given target for production use.

Tier Overview

TierMeaning
Tier 1Battle-tested. Compiler, HAL, and board packages are complete. The end-to-end path is validated on real hardware.
Tier 2Code generation is solid, but HAL or board packages may not be fully fleshed out. Usable, but not as “batteries included” as Tier 1.
Tier 3Experimental or unproven. Codegen issues may be present. Use for exploration only.

Target Summary

TargetCPUTierOutputStatus
rp2040RP2040 / Cortex-M0+Tier 1ELF, BIN, UF2Active development, primary target
rp2350RP2350 / Cortex-M33Tier 1ELF, BIN, UF2Planned

Planned targets (Tier 3):

TargetCPUNotes
stm32f4STM32F4 / Cortex-M4Planned
samd21SAMD21 / Cortex-M0+Planned
samd51SAMD51 / Cortex-M4Planned
nrf52nRF52 / Cortex-M4Planned
rp2350-riscvRP2350 / RISC-VPlanned
Linux x86_64x86-64Planned, once MCU pipeline matures
Linux aarch64ARMv8Planned
Linux riscv64RISC-V 64Planned

Board Summary

BoardTargetPackageTier
Raspberry Pi Picorp2040board/picoTier 1
Raspberry Pi Pico 2rp2350board/pico2Tier 1 (planned)

Specifying a Target

In flint.toml:

target = "rp2040"
board = "pico"

Or on the command line:

flint build --target rp2040

The board is optional when the target has a default board profile. When specified, the board package adds pin names, default clocks, and convenience constructors on top of the chip HAL.