Copper is Out!
Cu29 (aka Copper) is a Rust-first, user-friendly robotics engine designed to help you build fast and reliable robots.
We are so excited to announce that it has just been open-sourced under the permissive Apache 2.0 license.
You may have noticed the v0.2.1 alpha version. Release early, release often they say 😼… We encourage early adopters to try it out and provide feedback to help guide the project's direction.
If you are a startup considering building a robot in Rust, ping us! We are keen to partner with you and help you get your robot off the ground with Copper.
What features are already implemented?
Basic task lifecycle interface: This should be relatively stable, allowing you to start contributing new algorithms, sensors, and actuators.
Runtime generation: Works but is very simple; currently uses a BFS type of execution.
Log reader & structured log reader: Can export data, currently in Rust debug format.
Minimal drivers included: 2 sensors (VLP16 lidar + WT901 IMU) and 2 actuators (Lewansoul Serial Bus Servos + GPIO on Raspberry Pi).
Why is Copper unique?
Data-oriented design: All task accesses like reads or writes are linear in memory, inspired by how games and game engines are designed.
Performance: Achieves sub-microsecond latencies on commodity hardware. A direct port from ROS2 showed a consistent 100x reduction in runtime latency.
Compile-time runtime generation: Tailored to the task graph you provide.
Linear IO logging: Capable of logging on a bare block device without using a file system.
Structured logs for debugging: Quick turnaround for data analysis without needing to process large text logs with tools like sed/grep.
If you are interested in the technical details, stay tuned to this blog. In the coming weeks, we will dive deep into these techniques and publish our findings.
Links for you to understand Copper and to keep in touch
Documentation including a quick start to start developing with one command liner.
Our public chatroom on discord come to say hello, provide some feedback or get some help if needed.
Thank you for all the encouragement and support from the community.
We cannot wait to see the awesome robots you'll build with Copper!