Q: How do I mount uStepper S-lite to my motor?

A: Watch this video


Q: How do I set up uStepper S-lite in the Arduino IDE?

A: Watch the video here and read the Readme on our GitHub


Q: I can’t program uStepper from the Arduino IDE, what is wrong?

A: Three most common issues:

  1. If you use the Windows store app “Arduino IDE” you might experience problems. Download the executable or portable version of Arduino IDE from www.arduino.cc
  2. Install hardware support and the uStepper library like shown here
  3. Remember to chose uStepper as the board you program to


Q: When I run uStepper closed loop PID or Drop-in the motor spins up and runs fast in one direction, what is wrong?

A: Try to turn the motor connector (remember to power off uStepper first!). If that does not work, check that the encoder magnet is placed correctly on the motor shaft


Q: Where do I find technical info on the uStepper boards? 

A: You can find the product sheet for uStepper Rev B here and for uStepper S-lite here


Q: What functionality does the uStepper library provide?

A: The uStepper library has examples, showing the core functions. For a full description of all the software features visit our documentation page


Q: Why do I get eratic behavior when using Drop-in or PID?

A: This is most likely because the default parameters in the uStepper library does not fit your application. Here’s a short description on what you could do to tune the parameters:


The first two parameters tells that we are doing Drop-in and that microstepping is 1/16 from the printer/cnc controller. The third parameter is the amount of steps that must have been missed for the PID to kick in. The third is the number of steps that you are still of before the control stops again. It is advisable to have some hysteresis to avoid oscillating behavior. You can move it to for example 5,0 or 10,0 depending on your mechanical setup and the following PID parameters. The next parameter is P, start with setting this to e.g. 1-5, the next is I, start with a value of maximum 2. The last is D, this you can set to 0 as a start. For info on what P, I and D do, please read on the very nice PID wiki page