2 unstable releases

0.5.0 Mar 10, 2021
0.1.0 May 15, 2016

#4 in Robotics

Used in 2 crates

0BSD license


Stepper - Universal Stepper Motor Interface

crates.io Documentation CI Build

Please consider supporting this project financially. More information below.


Stepper aims to provide an interface that abstracts over stepper motor drivers and controllers, exposing high-level hardware features directly where available, or providing software fallbacks where hardware support is lacking.

Stepper is part of the Flott motion control toolkit. Please also check out RampMaker, a library for generating stepper acceleration ramps. In a future version, both libraries will be integrated, but for now they can be used separately to complement each other.

Right now, Stepper supports the following drivers:

Support for more stepper drivers and controllers will be added in the future. Please consider helping out with this effort, if you need support for a driver or controller that is currently missing.

Please check out the documentation to learn more.


Stepper is under active development. Its API is going to change, as more features are added and existing ones are improved. Support for drivers is very limited right now, and support for controllers is non-existent.

The library is usable, but far from mature. There are some known limitations that are documented on the issue tracker. If you find any additional problems, please open an issue on the GitHub repository.

Stepper is maintained by:


Stepper is a library written in Rust and designed for use in Rust projects. It will run on any platform supported by Rust, including microcontrollers.

Add Stepper to your Cargo.toml like this:

version = "0.5" # make sure this is the latest version

If you just need to use a specific stepper driver, you can also depend on the crate for that specific driver. For example:

version = "0.5" # make sure this is the latest version

Please refer to the API Reference for more information.


If you're getting value out of Stepper or other libraries from the Flott toolkit, please consider supporting us financially. Your sponsorship helps to keep the project healthy and moving forward.

Hanno Braun, maintainer and original creator of this library, is accepting sponsorship.


This project is open source software, licensed under the terms of the Zero Clause BSD License (0BSD, for short). This basically means you can do anything with the software, without any restrictions, but you can't hold the authors liable for problems.

See LICENSE.md for full details.


~42K SLoC