Stepper motors are the workhorse of precise motion control — used in 3D printers, CNC routers, laser cutters, camera sliders, plotters, and countless other devices. But most beginners don’t realise that the same physical motor can operate in multiple stepping modes, each with different trade-offs in resolution, torque, speed, and smoothness.
The two most commonly discussed modes are full-step and half-step. Understanding the difference between them — and knowing when to use microstepping beyond half-step — can dramatically improve your build’s performance. This guide covers everything from the physics of stepper operation to practical recommendations for real projects.
How Stepper Motors Work
A bipolar stepper motor (the most common type) has two coil pairs (phases). By energising these coils in a specific sequence, the rotor — which carries permanent magnets — is pulled into alignment with the magnetic field created by the stator coils. Each time the energisation sequence advances one step, the rotor moves by one fixed angle.
A standard NEMA17 stepper motor has 200 full steps per revolution (1.8° per step). This comes from 50 rotor teeth × 4 electrical phases. The 28BYJ-48 has more steps per revolution due to its internal gear reduction. The exact step angle is printed on the motor nameplate.
The stepping mode is not a property of the motor itself — it is determined by how the driver energises the coils. The same NEMA17 can run in full-step, half-step, or 1/16th microstepping depending on the driver configuration.
Full-Step Mode: Maximum Torque
In full-step mode, only one coil pair is energised at a time (wave drive), or both coil pairs are energised simultaneously (two-phase full-step). The two-phase full-step variant is most common and gives the highest holding torque.
Sequence for two-phase full-step on a bipolar motor:
- Phase A+, Phase B+
- Phase A-, Phase B+
- Phase A-, Phase B-
- Phase A+, Phase B-
Each sequence step moves the rotor by exactly 1.8° (for a 200-step motor). One full electrical cycle (4 steps) = 7.2° of mechanical rotation.
Full-Step Advantages
- Maximum torque: With both coils energised at rated current, full-step produces 100% of the motor’s rated holding torque.
- Simplest driver logic: Low overhead for firmware, ideal for very simple or low-power microcontrollers.
- Maximum speed: Fewer electrical transitions per unit of mechanical travel = higher achievable RPM.
Full-Step Disadvantages
- Rough motion: At low speeds, full-step motion is visibly jerky — the rotor snaps between positions.
- High vibration: Resonance peaks are more pronounced, especially around 100–300 RPM on NEMA17 motors.
- Lower resolution: 200 steps/rev means 1.8° per step — insufficient for precision positioning at longer moment arms.
28BYJ-48 5V Stepper Motor
The classic beginner stepper motor — 64 steps/rev internally, gear-reduced for high torque. Excellent for learning full-step and half-step modes.
Half-Step Mode: Balanced Performance
Half-step mode interleaves the full-step sequence with intermediate positions where only one coil is energised. This doubles the number of steps per revolution — a 200-step motor becomes a 400-step motor (0.9° per step).
Sequence for half-step on a bipolar motor:
- Phase A+ only
- Phase A+, Phase B+
- Phase B+ only
- Phase A-, Phase B+
- Phase A- only
- Phase A-, Phase B-
- Phase B- only
- Phase A+, Phase B-
Notice that alternating steps have either one or two coils active. This means the rotor’s holding force alternates between lower (single coil) and higher (dual coil) positions. As a result, torque is not perfectly uniform — it varies by about 30% between adjacent half-steps.
Half-Step Advantages
- Double resolution: 400 steps/rev instead of 200 — useful for moderate precision requirements.
- Smoother motion: The intermediate steps reduce the snap-to-position effect, resulting in noticeably smoother low-speed motion.
- Reduced resonance: Smaller step increments reduce peak vibration amplitude at most speeds.
- No special hardware: Most drivers (including L298N and ULN2003A) can implement half-step in firmware with no hardware changes.
Half-Step Disadvantages
- Torque variation: ~30% torque variation between adjacent steps can cause positional errors under varying loads.
- Slightly lower average torque: The single-coil steps reduce effective holding torque by approximately 15–20% versus full-step average.
- More complex control logic: 8-step sequence instead of 4-step requires more firmware complexity (trivial with stepper libraries, but relevant for bare-metal implementations).
Microstepping: Smooth but Weaker
Microstepping takes half-stepping further by using proportional current in each coil to place the rotor at intermediate positions with high precision. An A4988 driver supports up to 1/16 microstepping (3,200 steps/rev for a NEMA17). The TMC2208 and TMC2209 drivers can do 1/256 microstepping (51,200 steps/rev).
This sounds amazing, but there is a critical caveat: microsteps do not have the same holding torque as full steps. At 1/16 microstepping, holding torque is approximately 15–30% of rated torque. At 1/256, it can be under 5%. This means microstepping is excellent for smooth motion but poor for holding positions against load.
The practical implication: a CNC router with 1/16 microstepping running a heavy gantry can lose position if the motor stalls — the low holding torque in microstep positions cannot overcome static friction reliably. This is why CNC machines often use higher current, larger motors, or return to coarser stepping for high-force moves.
Comparison Table: All Stepping Modes
| Parameter | Full-Step | Half-Step | 1/8 Micro | 1/16 Micro |
|---|---|---|---|---|
| Steps/Rev (NEMA17) | 200 | 400 | 1,600 | 3,200 |
| Step Angle | 1.8° | 0.9° | 0.225° | 0.1125° |
| Holding Torque (% of rated) | 100% | 70–85% | 38% | 19% |
| Motion Smoothness | Poor | Good | Very Good | Excellent |
| Vibration Level | High | Moderate | Low | Very Low |
| Max Speed | Highest | High | Moderate | Lower |
| Driver Required | L298N or any | L298N or any | A4988 / DRV8825 | A4988 / DRV8825 |
Torque Trade-offs Explained
Here is why torque decreases with finer stepping modes. In full-step (two-phase), both coils carry 100% rated current and the magnetic force is maximised. In half-step, one of every two steps has only one coil energised — the net magnetic force is 1/√2 ≈ 70.7% of full-step for that position.
In microstepping, the current in each coil follows a sinusoidal profile. At a 1/16 microstep position, one coil may carry only 19.5% of rated current (sin(11.25°) × Imax). The holding torque at that position is proportionally reduced.
This is not a flaw — it is physics. The motor is holding a position on the slope of its torque curve rather than at the peak. Any external force exceeding this reduced holding torque will cause the motor to slip to the next detent position. For smooth motion without heavy loads (3D printer extruder, camera slider, pen plotter), this is perfectly acceptable. For high-force applications (CNC router cutting aluminium), full-step or at most 1/4-step is recommended.
Resolution and Positioning Accuracy
Consider a lead screw with 2mm pitch driving a CNC axis. In full-step, each step moves the axis 2mm/200 = 0.01mm (10 microns). In half-step, this improves to 5 microns. At 1/16 microstepping, you theoretically get 0.625 micron resolution.
However, theoretical microstep resolution is rarely achievable in practice. Mechanical factors — lead screw backlash, frame flex, thermal expansion — typically limit real-world accuracy to 50–100 microns regardless of the stepping mode. Beyond 1/8 microstepping, you gain smoothness but not meaningful additional positional accuracy.
This is why professional CNC machines use fine-pitch lead screws and ball screws for actual accuracy, and use microstepping primarily for smooth motion and reduced vibration.
Vibration and Resonance
Full-step operation causes the stepper motor to snap between positions, generating significant vibration. This vibration has resonance peaks — speeds at which the forcing frequency matches the motor’s mechanical resonant frequency, causing dramatic vibration amplification and even stall.
For a typical NEMA17, the primary resonance is around 100–200 steps/sec (30–60 RPM in full-step). At this speed, the motor can lose synchronisation entirely — appearing to stall or make grinding noises — even though the load is well within its rated torque. This is called “mid-band instability.”
Half-step and microstepping reduce the step impulse magnitude, lowering vibration amplitude and smoothing through resonance zones. This is one of the main reasons 3D printers universally use microstepping — the print quality improvements from reduced vibration are immediately visible in the printed surface finish.
A4988 Stepper Motor Driver Controller Board – RED
Popular current-limiting stepper driver with selectable 1/1, 1/2, 1/4, 1/8, 1/16 microstepping via MS1/MS2/MS3 pins. Perfect for NEMA17 and NEMA14 motors.
Heat Generation
Stepper motors and their drivers generate heat proportional to I²R losses. In microstepping mode, the driver continuously varies current in both coils — even when stationary — to maintain the rotor’s microstep position. This means the motor runs hotter in microstepping mode than in full-step when idle.
Most modern drivers (A4988, DRV8825, TMC2208) address this with a “current reduction” or “stealthChop” feature that automatically reduces coil current when the motor is stationary. This is enabled by the SLEEP or ENABLE pins and controlled by firmware.
Key thermal management tips:
- Set driver current limit to motor’s rated current (not higher)
- Enable automatic current reduction when idle
- Add a heatsink to the driver chip for drives above 1A
- Ensure adequate airflow around motor bodies
Configuring Your Stepper Driver
The A4988 driver (the most common hobbyist driver) configures microstepping via three pins: MS1, MS2, and MS3. Their logic levels determine the stepping mode:
| MS1 | MS2 | MS3 | Mode |
|---|---|---|---|
| LOW | LOW | LOW | Full-step |
| HIGH | LOW | LOW | Half-step |
| LOW | HIGH | LOW | 1/4 step |
| HIGH | HIGH | LOW | 1/8 step |
| HIGH | HIGH | HIGH | 1/16 step |
The current limit on the A4988 is set by the Vref trim pot on the board. Use the formula: I_limit = Vref / (8 × Rs), where Rs is the sense resistor value (typically 0.1Ω). Always set current limit before connecting a motor to avoid overheating the driver.
Stepping Mode by Project Type
- 3D printer (FDM): 1/16 microstepping — smooth motion directly improves print quality
- CNC wood router: 1/4 or 1/8 microstepping — balance of smooth motion and adequate torque for cutting
- CNC aluminium milling: Full-step or 1/2-step — maximum torque needed, vibration managed by rigid frame
- Camera slider / timelapse: 1/16 microstepping — ultra-smooth motion, no significant load
- Pen plotter / laser engraver: 1/8 or 1/16 microstepping — precision and smoothness over torque
- Valve actuator / heavy mechanism: Full-step — torque is the priority
- Telescope mount: 1/16 or higher — vibration would blur images
Stepper Motors and Drivers at Zbotic
42HS48-1204A NEMA17 5.6 kg-cm Stepper Motor with Detachable Cable
High-torque NEMA17 stepper for CNC and 3D printing — 5.6kg-cm holding torque, D-shaft, detachable cable for easy maintenance.
Frequently Asked Questions
Does half-step damage the stepper motor?
No. Half-step and microstepping are standard operating modes that the motor handles without any stress. The motor’s copper windings and insulation are rated for the coil currents used in all stepping modes, provided the current limit is set correctly on the driver.
Why does my stepper motor vibrate more in full-step?
Full-step creates the largest angular impulse per step (1.8° snapping into position versus smaller increments in half/micro step). This larger impulse creates more mechanical vibration. Switching to half-step or microstepping smooths out the transitions and reduces vibration.
Can I change stepping mode during operation?
Technically yes, but it requires careful handling. Changing MS pin levels while the motor is moving can cause position errors. It is safest to stop the motor, change the stepping mode, update your position tracking accordingly, and then resume. Firmware like Marlin does this automatically during homing.
Why do 3D printers use 1/16 microstepping if torque is lower?
Because 3D printers don’t need high torque for normal printing — the filament and print head are light. What matters is smooth motion to prevent vibration artefacts (called “ringing” or “ghosting”) on printed surfaces. 1/16 microstepping provides the smoothest motion at the cost of torque that isn’t needed anyway.
What is interpolation in TMC drivers?
TMC2208/TMC2209 drivers use “stealthChop” and interpolation to divide each 1/16 step commanded by the controller into 1/256 microsteps internally. This gives 256-microstep smoothness even when the controller only sends 16-microstep pulses — reducing stepper noise dramatically without changing the controller firmware.
Is full-step better for holding position?
Yes. Full-step provides the maximum holding torque, making it best for applications where the motor must hold a position against gravity or external force without drifting. If your application needs a held position (valve, robotic joint under load), full-step gives the most reliable hold.
Conclusion
Choosing between full-step and half-step (or microstepping) for your stepper motor project is fundamentally a trade-off between torque and smoothness. Full-step gives maximum holding force but rough, vibration-prone motion. Half-step doubles resolution and improves smoothness with a modest torque penalty. Microstepping beyond 1/8 provides excellent smoothness but with significantly reduced holding torque.
For most hobby projects, 1/8 or 1/16 microstepping with an A4988 driver is the sweet spot — smooth enough for good print/cut quality, with adequate torque for typical loads. For heavy-duty CNC or force-critical applications, use full-step or 1/2-step and compensate with a higher-rated motor or driver current. Whatever your project needs, Zbotic stocks both the NEMA17 motors and A4988 drivers to get you running.
Add comment