Control system for robotic manipulators, built with Rust for the ESP32.
🚀 Work in Progress: For a detailed list of planned features and current progress, please check our Roadmap.
Platform-agnostic types and protocol schemas shared between the firmware and the host.
- Zero-cost Units: Compile-time verified physical quantities (Radians, Seconds, etc.).
- Binary Protocol: Data serialization schemas via Postcard with LEB128 framing.
- Data Models: Definitions for kinematics parameters and network stack configurations.
Dual-core, asynchronous implementation leveraging Embassy.
- Core 0 (System): WiFi (AP/STA modes), Flash storage management, and async network stack.
- Core 1 (Real-time): Dedicated trajectory interpolation and high-precision PWM control.
Network client for sending control commands and system configuration.
- Firmware: ESP32 (dual-core Xtensa/RISC-V supported by esp-hal).
- Host (CLI): Linux, macOS, or Windows.
- Rust: 1.90 or later (Edition 2024).
- Build: cargo-espflash and the Rust Xtensa/RISC-V toolchain.
Licensed under either of Apache License 2.0 or MIT at your option.