What is uStepper?


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!

General Setup

So the key ideas behind uStepper was presented in the intro. Here we will give a little more in depth explaination.


The key components are marked on the above picture, and is general for the uStepper S and S-lite model.

Microcontrol Unit (MCU)

We use the successor of the well tested and widely used ATmega328P – the ATmega328PB. Why? Because it does the job and does it good! The new upgraded ATmega328PB has many of the things we believe makes the new uStepper a better product – double USART, double I2C, double SPI and upgraded timers!


Instead of beefing up to an advanced MCU that is not really needed, we decided to offload the MCU on uStepper S by introducing a more capable stepper driver chip!  


The driver on uStepper handles the stepper motor power stage. On the uStepper S-lite the acceleration and velocity calculations are handled by the MCU. Whereas on the uStepper S a driver with integrated acceleration and velocity handling is used – offloading the MCU.
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 S line capable of closed loop position control – eliminating one of the key issues of the open loop stepper motor control. The encoder used on both uStepper S-lite and uStepper S senses a diametrically magnetised magnet placed on the motor shaft.


uStepper S-lite provides you with a resolution of 0.088 degrees and uStepper S the obtainable resolution is 0.0055 degrees! 
The boards in uStepper S-line provides absolute multi-revolution feedback at a rate of up to ~200 kHz – which is used in the feedback algorithm for uStepper S-lite and uStepper S to move the stepper motor precisely to the position you command them 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.
On the uStepper S-lite a linear regulator (LDO) is used. This technology is cheap, works at “low” voltage differences but has a lower efficiency and thereby higher thermal dissipation than the Switch Mode regulator used on the uStepper S.


So, for the uStepper S with up to 42 V input voltage the LDO is not a viable solution, whereas for the S-lite with up to 12 V supply it’s perfectly adequate and keeps the product price down!  

 uStepper S vs. uStepper S-lite?


The uStepper S and S-lite are similar, but still quite different.  a clear comparison can be seen in above picture of each model, and a comparison of the specifications, posted in the table below


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