Square Wave Driving vs. Sine Wave Driving in Stepper Motors: A Technical Comparison
Square wave driving is a technique where the stepper motor windings are energised using a discrete on-off voltage pulse in square wave form. Sine wave driving technique is a method of controlling stepper motors by applying a sinusoidal current waveform to the motor windings.

Stepper motors are widely used in applications requiring precise position control, such as CNC machines, 3D printers, robotics, and industrial automation. The way stepper motors are driven significantly affects their performance, efficiency, and noise levels. The two common driving techniques are sine wave driving and square wave driving.
In this blog, we will explore the driving methods of stepper motors, comparing their principle, advantages and suitability for different applications.
What is Stepper Motor Driving?
Stepper motor driving refers to the method of energising the stepper motor's winding to produce precise and controlled motion. Unlike conventional electric motors, which spin continuously, stepper motors move in discrete steps.
A stepper motor driver is an electronic circuit module that controls the motor by sending current pulses to its winding in a specific sequence. Each pulse moves the motor shaft by a fixed angle called the step angle. The driver interprets the control signal from a microcontroller and energises the motor phases accordingly.
There are two major driving techniques used in stepper motors:
Square Wave Driving - It applies a constant voltage to the motor windings in a square wave form for smooth motion
Sine Wave Driving – This advanced method delivers a sinusoidal current to the motor winding, enabling high torque performance.
Modern drivers often include current regulation, thermal protection, and closed-loop feedback. Proper driver selection ensures optimal performance, efficiency and long life.
Square Wave Driving of Stepper Motor
Square wave driving is a fundamental technique used to control stepper motors, where the motor windings are energised using a discrete on-off voltage pulse in square wave form. In this method, the current supplied to the motor coils alternates between the high and low states without any intermediate values, aligning with the digital logic.
In a basic two-phase stepper motor, the square wave driving technique energises the winding sequentially in a fixed pattern. This energisation causes the stepper motor to move step by step.
Each change in the square wave corresponds to a transition from one step to another. Depending on how the square waves are applied to the windings, the sequence can be full-step or half-step
The typical square waveform involves 90 90-degree phase difference between signals for two phases, ensuring precise and predictable movement.
For full-step driving, the square waveforms are alternated between the two phases, resulting in the rotor moving one full step with each change. In half-step driving, the pattern combines single and dual coil excitations to increase resolution.
Sine Wave Driving of Stepper Motor
Sine wave driving technique is a method of controlling stepper motors by applying a sinusoidal current waveform to the motor windings. Unlike the square wave form, which abruptly switches voltage levels, sine wave driving ensures that current in each phase flows smoothly following a sinusoidal profile.
In sine wave winding, the current supplied to each phase of the stepper motor varies accordingly to a sine and cosine function, typically offset by 90 degrees.
For a two-phase stepper motor, Phase A is driven by a sine wave, while Phase B is driven by a cosine wave. The rotor follows the rotating magnetic field produced by these varying currents.
This method requires a microcontroller along with a digital-analogue converter or pulse width modulation (PWM) techniques. It generates waveforms. The PWM signals are then processed through a driver circuit to produce the desired analogue current waveform.
Sine wave driving is usually implemented in bipolar stepper motors where both windings can be driven with bidirectional current. This technique ensures accurate motor control, especially at varying speeds and load conditions.
Square Wave Driving vs. Sine Wave Driving of Stepper Motor
1. Waveform Type
-
- Square Wave: Employs sharp-edge digital signals that switch abruptly between high and low states, creating a rectangular waveform pattern.
- Sine Wave: Use smooth, sinusoidal current variations that resemble analogue waveforms, ensuring the gradual transition in motor phase excitation.
2. Current Profile
-
- Square Wave: The current suddenly transitions from one level to another, resulting in a block-like current profile that causes abrupt magnetic field changes.
- Sine Wave: The current follows a continuous sinusoidal curve, ensuring smooth variations in magnetic flux.
3. Torque Generation
-
- Square Wave: Generates torque in sudden increments at each switching point, which may lead to non-uniform force on the motor.
- Sine Wave: Produces smoothly varying torque output, resulting in consistent force application throughout the rotation.
4. Control Method
-
- Square Wave: Requires simple switching logics or basic driver ICs, making it easy to implement with minimal electronic components.
- Sine Wave: Involve complex control logic using PWM, lookup tables and real-time computation to generate a smooth waveform.
5. Position Accuracy
-
- Square Wave: Accuracy is limited to fixed step angles, fine positioning requires a microstepping technique that depends upon step-based control.
- Sine Wave: Offers improved positioning through smoother transitions between steps, allowing for better interpolation and finer control of rotor movement.
Conclusion
In conclusion, the decision between sine wave driving and square wave driving for stepper motors has a significant impact on the system’s overall performance, efficiency, and cost. Square wave driving is a suitable choice for applications that prioritise simplicity, low cost, and high torque per step.
On the other hand, sine wave driving is ideal for high-precision applications that demand smooth, accurate, and silent motion.
Ultimately, the right choice depends on your application’s specific requirements. If precision and smoothness are paramount, sine wave driving with microstepping is a better solution. For budget-friendly or less demanding systems, square wave driving remains a practical and reliable option.