In this post, we explain what a stepper motor controller is and how they work in practice as a drive for a stepper motor.

A stepper motor controller is the driver that controls how the stepper motor runs. Stepper motor controllers send current through different phases in pulses to the stepper motor, which operates in different step modes that include the driving modes full-step, half-step and microstepping. The step mode of the stepper motor depends on the design of the driver.


In full-step, two phases are switched on at a time. If the drive activates both A and B poles as south poles (shown in green in the figure below), the north pole of the rotor attracts both equally and aligns in the center of the two. When the energizing sequence continues in this way, the rotor ends up aligning between two poles continuously. When both phases are constantly activated, full-rated torque is achieved in all positions of the motor. However, the disadvantage of the full-step method is that the motor will vibrate at low speed and there will be noise. Full-step is therefore not so often used in stepper motors today.

Two-phase-on drive illustration

Illustration 1: Full-step drive


In half-step, the drive activates either 1 or 2 phases at a specific time. In this driving method (shown in green), first one pole, pole A, is activated, then power is applied to two poles, poles A and B, then power is applied to one pole again, e.g. pole B, and so on. This means that in half-step, a single coil is activated first, then two coils, then one coil again. Switching between a single phase and both phases increases the resolution but also means that the torque is lower. Compared to full-step, half-step also has the advantage of delivering a smoother movement and less vibration and noise during operation. However, like full-step, half-step is not the most common method of controlling stepper motors today.

One-two phase-on drive illustration

Illustration 2: Half-step drive


The most common method of controlling stepper motors today is microstepping, which delivers very fine movements. Here, the drive uses current regulation to prevent torque fluctuations.

A drive that microsteps, increasing and decreasing the current along a sine wave so that no pole is fully on or off. In the illustration below you can see an example of a microstepping sine wave stream.

Microstepping drive illustration

Illustration 3: Microstepping sine wave current

Note the subtle jagged contour of the sine wave stream. While microstepping doesn’t necessarily improve accuracy, it does get a higher resolution than other driving modes – which is particularly useful in applications where the motor has no-load situations. During operation, motors can miss steps, but microstepping spreads energy out instead of delivering it to the motor all at once, which can cause overshoot and overshoot.

Microstepping can be considered one of the most effective methods to reduce vibration and noise at low speed. Microstepping is typically used in applications that require accurate positioning and smoother motion over a wide range of speeds. However, at higher speeds, microstepping is not the most optimal method, as too fast an input frequency will reduce the accuracy of the motor.


A stepper motor controller controls how the stepper motor should be driven, of which there are three different stepping modes; full-step, half-step, and microstepping, each with its advantages and disadvantages. However, the most common method of controlling stepper motors today is the microstepping driving method, which provides a smoother motion with much lower vibration and noise levels.

At GCM we have several different stepper motor controllers for your application, and we are happy to help you find the right solution for your project.

Do you have a good idea that we can help you with?

We are always ready for a non-binding dialog about the possibilities of working together on a new development project. From idea to finished product, we can support or even replace your in-house development department.

Contact us today by creating an inquiry in the form below – our engineers are ready to answer your inquiry as soon as possible.

Remember that you are also welcome to call us on tel. 74 42 18 64 during our opening hours.

5 + 1 =

Pin It on Pinterest