You'll need:
- Rust
- ARM Rust toolchain
rustup target add thumbv7em-none-eabihf
- just
cargo install just
- cross (which requires either Docker or Podman)
cargo install cross --git https://github.com/cross-rs/cross
- probe-rs
cargo install probe-rs --features cli,ftdi
For assembly, access the interactive BOM here
Build for the current architecture
just build-cli
just build-cli-pi
The resulting binary is in target/armv7-unknown-linux-musleabihf/release/cli
which you can copy to the Pi, chmod +x
if you need, and run.
just build-firmware
The resulting binary (elf) is in target/thumbv6m-none-eabi/release/firmware
Using a JLink in CMSIS-DAP mode
just flash-firmware