rustypot

Crates.iorustypot
lib.rsrustypot
version0.4.2
sourcesrc
created_at2023-01-17 14:28:02.821935
updated_at2023-08-22 14:19:05.884527
descriptionPackage to communicate with Dynamixel motors.
homepagehttps://www.pollen-robotics.com
repositoryhttps://github.com/pollen-robotics/rustypot
max_upload_size
id761016
size102,894
Pierre Rouanet (pierre-rouanet)

documentation

README

Rustypot: a Rust package to communicate with Dynamixel motors

Build Status Latest Version

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.

Commit count: 135

cargo fmt