31 releases (6 breaking)

Uses new Rust 2024

new 0.7.0-alpha.0 Mar 12, 2025
0.6.1 Dec 31, 2024
0.6.0-beta.0 Nov 19, 2024
0.4.0-alpha.2 Jul 27, 2024
0.2.0-beta.2 Mar 28, 2024

#72 in Robotics

Download history 7/week @ 2024-11-24 162/week @ 2024-12-01 10/week @ 2024-12-08 1/week @ 2024-12-15 147/week @ 2024-12-29 18/week @ 2025-01-05 3/week @ 2025-01-12 47/week @ 2025-02-09 63/week @ 2025-02-16 1/week @ 2025-02-23 3/week @ 2025-03-02 93/week @ 2025-03-09

160 downloads per month

BSD-3-Clause

250KB
5.5K SLoC

Rust Robotics ToolKit

A set of algorithms and other tools for robotics in Rust.

It is almost entirely no_std and most things work without alloc. It does not currently integrate with any API directly. This may be added in the future, probably through another crate.

Anniversary Release 0.7.0-alpha.0

One year ago today, RRTK's first version, 0.1.0, was released! To celebrate, RRTK 0.7.0-alpha.0 is released today. RRTK has come very far since this initial version, and and hopefully it will have come even further next year.

License: BSD 3-Clause

This basically means that you can do whatever you want as long as you give me attribution and you don't remove the license notices or use my name to endorse stuff I don't. Read the actual license for details though.

RRTK was previously licensed under LGPL. Versions 0.5.0-alpha.1 and earlier have been retroactively dual licensed under LGPL-3.0-only OR BSD-3-Clause. Versions after 0.5.0-alpha.1 are just BSD-3-Clause. This transition does not remove any freedoms, and the LGPL for old versions is maintained solely due to its irrevocability. It is entirely redundant freedoms-wise.

Features

  • Architecture based on Getter, Settable, and Updatable traits
  • Node-like stream system for data processing
    • Basic arithmetic + integral and derivative
    • Logic and control flow management
    • PID
    • Moving average
    • EWMA
    • Trait for making your own
  • Graph-based device control system
    • Devices hold terminals which can be connected together
    • Differential, axle, and direction reversal builtin
    • Easily connect streams to the device system through wrappers
  • Trapezoidal motion profile following

RRTK Stream Builder: Code generation from visual nodes for the stream system.

RRTK Procedural Macros [HIGHLY EXPERIMENTAL]: Procedural math! macro making the stream system easier to use.

The changelog has been moved to CHANGELOG.md.

Dependencies

~155KB