Rust SpaceCAN Port (native and embedded)
Every board in a LibreCube CubeSat (power, navigation, communications, payload) speaks SpaceCAN. Today, none of them can run flight firmware without a Python interpreter. This project changes that. The goal is a complete Rust port of the SpaceCAN protocol: a native crate for PC that works alongside the existing Python tooling, and an embedded crate that runs directly on STM32 hardware via the embassy async framework with no interpreter, no runtime overhead, and no dynamic allocation. By the end of GSoC, any LibreCube board can run production SpaceCAN firmware in Rust, and the broader embedded Rust and CubeSat communities gain their first open-source, interpreter-free SpaceCAN stack to build on. Deliverables: native and embedded Rust crates with full five-service protocol coverage, cross-language integration tests against python-spacecan, Embassy firmware with controller and responder examples for the STM32G0B1RE, and a getting-started guide.
Project details
Technologies
Not listed in the archive