What is uStepper?

Get started with uStepper S32 and run your first application !

uStepper is a product improving performance of a motor type called “stepper motors”.

Stepper motors are used in a wide range of applications where you have to move something a certain distance precisely! For example, they are used in your inkjet printer for moving the ink cartridge back and forth over the paper. Stepper motors are precise and really cheap compared to the alternative, Servo motors.

There is one drawback of the steppers though – you actually can’t tell if they actually move for example the ink-jet head to the position you tell it. If you try to block the path while you printer is printing, it will not recover from this. The printer is rather dependent on that the stepper operates with high precision so that you get something readable on your paper!
The same happens to for example 3D printers, where those steppers uStepper is designed for is primarily used.

What uStepper does, is that it removes this drawback by continuously monitoring where it is, and where it should be. Thus uStepper can compensate if anything goes wrong – this is what we call operating with feedback. uStepper both has the ability to drive the stepper motor, monitor position and has an onboard programmable microcontroller with a wide range of available inputs and outputs. All this is packed into a really small printed circuit board that fits right on the back of those small stepper motors (which are referred to as Nema 17). To make uStepper accessible for both professionals, hobbyists and students, it is compatible with the Arduino IDE. Here you can easily program your uStepper to do exactly what you need it to do!

Key Components

So the key ideas behind uStepper was presented in the intro. But for achieving all the nice features that uStepper provides a number of key components are required.


The key components marked on the above graphic will be discussed a bit more in detail in the following.

Microcontrol Unit (MCU)

uStepper S32 incorporates a 32-bit 84MHz Cortex®-M4 microcontroller providing more than 20 times the computation power than the previous uStepper S and S-lite controllers.


So, what do you need all that computation power for? Well, we can provide even faster reacting control loops while there’s still plenty of room for adding your custom Arduino code to do precisely what you need to do in your application !


The driver on uStepper handles the stepper motor power stage. On the uStepper S32 the same driver is used as on the uStepper S –  a driver with integrated acceleration and velocity handling which offloads the MCU and gives high performance control.
One of the key issues of having a motor drive is the heat dissipation cause by switching the relatively large currents. 


To accomodate this we have used large internal copper planes for distributing the heat to the whole board, thereby using the board as heat sink. This functions well up to a current of ~1-1.5 A after which a heat sink and maybe even active cooling is needed depending on the load profile. An application with continuous “high current” load will of course make a large heat build-up compared to an application with sporadic “high current” load. 


The encoder makes uStepper S32 capable of closed loop position control – eliminating one of the key issues of the open loop stepper motor control. The encoder used on uStepper S32 senses a diametrically magnetised magnet placed on the motor shaft to sense the shaft position.


uStepper S32 provides you with a resolution of 0.011 degrees ! 
Furthermoe, the uStepper S32 provides absolute multi-revolution feedback at a rate of up to ~200 kHz – which is used in the feedback algorithm to move the stepper motor precisely to the position you command it to!

Voltage Regulator

The stepper driver needs a higher supply voltage than 5 V in order to be able to drive the stepper motor at speeds that makes sense in most real applications. This of course requires a voltage regulator for supplying the MCU and pheripherals with 5 V or 3.3 V. Without this, the board would require two voltage sources to operate!
The voltage regulator also contributes to heat generation when lowering the supply voltage to the required 5 V and 3.3 V. The voltage regulator on uStepper S line benefits from the internal copper planes when having to dissipate some of this heat – just like the stepper driver.


The uStepper S32 incorporates a switch mode regulator allowing for up to 42V board supply voltage !

If you want to look further in to the details of the uStepper and our additional products follow the link below !