This repository was archived by the owner on Oct 15, 2026. It is now read-only.
Repository navigation
v0.1.0
Added
- The loader firmware: a self-relocating UART command agent for the
Raspberry Pi 2, 3 and 4 that stays resident and services commands, so
the SD card is rewritten only to re-flash the loader itself. Builds for
AArch32 (kernel7.img) and AArch64 (kernel8.img), for BCM2837 and
BCM2711. mem-write,exec, andbootfor getting an image into memory and
running it, with CRC-checked chunks and per-chunk retries.sd-list,sd-read,sd-write,sd-delete, andsd-mkdirfor
working with the SD card's FAT boot partition over the same link.- A bidirectional
terminal, so a kernel that prompts for input can be
driven. Ctrl-] exits; every other key, Ctrl-C included, reaches the
device. list, which reports the host's USB serial ports without opening one.- The host CLI in Rust, published to crates.io as
rpi-loader.
Images
Copy the image matching your board to the SD card's boot
partition, renamed to kernel7.img (32-bit) or kernel8.img
(64-bit) -- the firmware loads those names and no others. Use
kernel8.img only with arm_64bit=1 in config.txt.
bcm2837 covers the Pi 2 v1.2 and Pi 3; bcm2711 covers the
Pi 4. Verify with sha256sum -c SHA256SUMS.
The host CLI is a separate install: cargo install rpi-loader.