🤖 Copper is to robots what a game engine is to games - build, run, and replay your entire robot deterministically.
🦀 Rust-first – ergonomic & safe
⚡ Sub-microsecond latency – zero-alloc, data-oriented runtime
⏱️ Deterministic replay – every run, bit-for-bit identical
🧠 Interoperable with ROS2 – bridges via Zenoh opening the path for a progressive migration.
🪶 Runs anywhere – from Linux servers, workstations, SBC to bare-metal MPUs
📦 Built to ship – one stack from simulation to production
| Flying | Driving | Swimming | Spacefaring |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Here is a Copper-based robot in action in a Bevy simulation environment! The realistic sim is created using Bevy (A Rust Game Engine) and Avian3d (Physics Engine in Rust).
On your mac or linux machine (x86-64 or Arm) just run ...
$ cargo install cu-rp-balancebot
$ balancebot-sim... to try it locally.
The source code for this demo is available in the examples/cu_rp_balancebot directory.
- Start a new project from templates: Project Templates
- See a full task graph + runtime walkthrough: Copper Application Overview
- Build and deploy an application: Build and Deploy a Copper Application
- RON configuration reference: Copper RON Configuration Reference
Copper logs can be visualized with Rerun using an app-specific logviz binary generated by gen_cumsgs!.
Enable the logviz feature and run:
# Spawn a viewer and stream the log
cargo run --bin <app>-logviz --features logviz -- logs/my_log.copper --spawn
# Save to an .rrd file
cargo run --bin <app>-logviz --features logviz -- logs/my_log.copper --save out.rrdLink to the full documentation
- Runtime concepts and SDK features: Copper Runtime Overview
- Task lifecycle: Task Lifecycle
- Modular configuration: Modular Configuration
- Task automation: Task Automation with just
- Supported platforms: Supported Platforms
- Bare-metal development: Baremetal Development
- Available components: Available Components
- FAQ: FAQ
- Release notes: Copper Release Notes
- Roadmap: Roadmap
Note
We are looking for contributors to help us build the best robotics framework possible. If you are interested, please join us on Discord or open an issue.





