7 unstable releases (3 breaking)
0.4.2 | Aug 22, 2023 |
---|---|
0.4.1 | Jul 7, 2023 |
0.4.0 | Jun 19, 2023 |
0.3.1 | Mar 20, 2023 |
0.1.0 | Jan 17, 2023 |
#48 in Robotics
277 downloads per month
72KB
1.5K
SLoC
Rustypot: a Rust package to communicate with Dynamixel motors
Getting started
Rustypot is yet another communication library for robotis Dynamixel motors. It is currently used in the Reachy project.
Feature Overview
- Relies on serialport for serial communication
- Support for dynamixel protocol v1 and v2 (can also use both on the same bus)
- Support for sync read and sync write operations
- Easy support for new type of motors (register definition through macros)
- Pure Rust
Examples
use rustypot::{device::mx, DynamixelSerialIO};
use std::time::Duration;
fn main() {
let mut serial_port = serialport::new("/dev/ttyACM0", 1_000_000)
.timeout(Duration::from_millis(10))
.open()
.expect("Failed to open port");
let io = DynamixelSerialIO::v1();
loop {
let pos =
mx::read_present_position(&io, serial_port.as_mut(), 11).expect("Communication error");
println!("Motor 11 present position: {:?}", pos);
}
}
Documentation
See https://docs.rs/rustypot for more information on APIs and examples.
License
This library is licensed under the Apache License 2.0.
Support
Rustypot is developed and maintained by Pollen-Robotics. They developped open-source tools for robotics manipulation. Visit https://pollen-robotics.com to learn more or join the Dicord community if you have any questions or want to share your projects.
Dependencies
~2.9–4MB
~75K SLoC