Robotics

Crates applied to robotics, ROS, etc.

cu-rate-target

Example showing how to set a runtime rate target for the Copper application.

cu-ratelimit

A simple generic rate limiter for Copper

cu-ros-payloads

ROS2 Payloads that can be constructed from/to Copper Payloads for compatibility

cu-rp-balancebot

This is a full robot example for the Copper project. It runs on the Raspberry Pi with the balance bot hat to balance a rod.

cu-rp-encoder

This is a driver for the Raspberry Pi to decode a directional encoder from GPIOs.

cu-rp-gpio

This is a simple driver example for the Raspberry Pi GPIOs for Copper.

cu-rp-sn754410-new

Rust library for controlling the SN754410 motor driver on the Raspberry Pi for Copper

cu-run-in-sim

Example for forcing Copper to compile in and run a source or a sink in simulation mode

cu-sensor-payloads

Those are standardized payloads for the Copper sensors. Feel free to contribute your own.

cu-spatial-payloads

Spatial payloads for the Copper.

cu-standalone-structlog

Example of using structlog in a standalone application

cu-transform

A coordinate frame transformation library for copper-rs, similar to tf2 in ROS2

cu-udp-inject

A simple UDP packet injector that takes a PCAP file and sends it to a remote host

cu-v4l

This is a source task that captures video from a V4L2 device.

cu-vlp16

This is a driver for the Velodyne VLP-16 for the Copper engine.

cu-wt901

This is a driver for the WT901 IMU.

cu-zenoh

Copper example to use zenoh as a middleware.

cu-zenoh-ros

Copper example to use zenoh as a ROS 2 bridge.

cu-zenoh-ros-sink

Copper sink task for ROS-compatible Zenoh messages.

cu-zenoh-sink

Copper sink task for Zenoh.

cu_ads7883

This is a driver for the TI ADS7883 for Copper.

cu_rp_sn754410

Rust library for controlling the SN754410 motor driver on the Raspberry Pi for Copper

cu29

Copper Runtime prelude crate. Copper is a Rust engine for robotics.

cu29-clock

Copper Robot Clock implementation. It is a monotonic high precision clock for real time applications. It has a mock feature for testing time dependent behaviors. It is part of the Copper project but can be used independently.

cu29-derive

This is the copper project runtime generator. It cannot be used independently from the copper project.

cu29-export

This is the library support to build log exports for the copper project. It cannot be used independently from the copper project.

cu29-helpers

This is an helper to build quickly a skeleton of an application with Copper. It cannot be used independently from the copper project.

cu29-intern-strs

This is loader for the intern strings logged at build time by Copper. It can be used independently from the copper project.

cu29-log

This is part of the text logging runtime for Copper. It cannot be used independently from the copper project.

cu29-log-derive

This is part of the text logging macros Copper. It cannot be used independently from the copper project.