Skip to content

rpi-loader

A self-relocating UART command agent. Flash it once from an SD card; after that it stays resident, and the host drives it over the serial cable: upload a build to memory and jump to it, or read, write and list files on the SD card, instead of rewriting the card for every build.

Terminal window
cargo install rpi-loader
rpi-loader --device /dev/ttyUSB0 boot --load-addr 0x8000 target/kernel7.img
Image Boards Kernel file
bcm2837 Pi 2, Pi 3 kernel7.img (32-bit), kernel8.img (64-bit; not a Pi 2 v1.1, whose cores are 32-bit only)
bcm2711 Pi 4 kernel7.img (32-bit), kernel8.img (64-bit)
bcm2835 Pi 1, Pi Zero kernel.img

Start a project puts the right image on the card under the right name. Releases carry all five images and their checksums; the firmware loads only the bare names, so an image downloaded by hand has to be renamed on the way to the card.

Two crates live here: