ECParts Toolkit LogoECParts Toolkit

Motors Guide

Stepper Pulse Scheduling: Acceleration, Microstepping, Timing, and Missed Steps

A correct pulse-rate calculation is only the start of a stepper move. Firmware must satisfy the driver timing diagram and ramp the command within the real motor-load torque envelope.

10 min · Intermediate · Updated October 18, 2026

Convert Motion to a Command Stream

The Motor Motion Control Guide defines steps, microsteps, gearbox ratios, and speed conversions. This guide starts after that count convention is selected. For a 1.8° full-step motor, one revolution is 200 full steps. At 16 microsteps per full step, the controller sends 3200 STEP edges per motor revolution. The Stepper Steps & Resolution Calculator establishes command granularity, but a 0.1125° command increment is not a guarantee of 0.1125° mechanical accuracy under load.

Formula reference

Command kinematics

Ncmd = (360 degrees / full-step angle) microstep factorfstep = motor RPM Ncmd / 60Tstep = 1/fstepfstep,peak = Ncmd motor RPMpeak / 60

Variable definitions

Ncmd is commanded STEP edges per motor shaft revolution
Include any electronic gearing consistently; distinguish motor and output shaft
fstep is command-edge rate, not the current-chopper PWM frequency
The driver may require minimum STEP high and low times within Tstep

At 600 RPM, that 3200-edge/revolution setting requires 32,000 STEP edges/s, or a 31.25 µs period. A nominal 50% duty waveform offers 15.625 µs high and low, but the selected driver datasheet, not this arithmetic, determines acceptable pulse widths and edge polarity. Use the Stepper Pulse Frequency Calculator to convert the target speed and microstep setting before checking the timer and driver.

Schedule Acceleration, Not Just Cruise Speed

A sudden jump in STEP frequency demands an instantaneous change in rotor speed. Available pull-in and pull-out torque differ, and both depend on motor, driver, voltage, current, load, and speed. A simplified constant-acceleration pulse-space check is useful for a first profile: choose an allowed command acceleration a in pulses/s² from a mechanical torque analysis and experimental margin. Starting near rest, the pulses required to reach fpeak are fpeak²/(2a). Reserve a similar count for deceleration. If the move is shorter than their sum, lower the peak frequency and use a triangular profile. This arithmetic says nothing about whether the motor can supply the required torque; verify with the actual torque-speed curve and inertia.

Formula reference

Ideal constant-acceleration profile

a_pulse = Ncmd alpha_rev (alpha_rev in revolutions/s^2)Naccel = (fpeak^2 - fstart^2)/(2 a_pulse)Naccel + Ndecel <= Nmove for a full-speed plateauTavailable(speed) > Tload(speed) + Jeq alpha_rad + margin

Variable definitions

Nmove is commanded move length in STEP edges
The pulse-count relations assume smooth constant acceleration
Jeq is total inertia referred to the motor shaft
Torque inequality must be checked over the speed range, not only at standstill

Example: suppose the command acceleration is 64,000 pulses/s² and target fpeak is 32,000 pulses/s. Each acceleration or deceleration ramp requires 8,000 pulses, so a 20,000-pulse move has 4,000 pulses left at cruise. A 12,000-pulse move cannot reach that peak with symmetric ramps; its ideal triangular peak is sqrt(64,000 × 12,000) ≈ 27,713 pulses/s, about 520 motor RPM at 3200 pulses/rev. Firmware should use integer-safe scheduling and confirm that the commanded profile matches a measured shaft trace.

Check Microstep Current and Driver Timing

Microstepping changes phase-current targets, often using sine/cosine-like states, and can reduce vibration. It does not multiply holding torque or guarantee uniform mechanical steps. At high STEP rates, winding inductance and back EMF may prevent the current from reaching the commanded microstep target before the next transition. Supply voltage, current limit, driver decay mode, and thermal limits determine real current tracking. Observe both phase currents at representative speeds; a timer output that looks perfect does not prove that the motor current follows it. Read minimum STEP high, STEP low, DIR setup/hold, enable timing, and input thresholds from the exact driver datasheet. Do not assume a universal timing value.

CheckObserveReason
Timer and STEP outputMinimum high/low widths; jitter; edge countDriver input timing and controller timer limits
DIR transitionSetup and hold around the active STEP edgeNo direction ambiguity on reversal
Current regulationActual winding waveform at speedChopper decay, inductance, supply voltage
Mechanical motionEncoder or fixture position after a moveMissed steps, backlash, resonance, load
Thermal cornerDriver, winding, and fixture temperatureCurrent derating and changing friction

Find the Real Motion Envelope

Use the selected motor-drive torque-speed data at the actual bus voltage and current, and refer inertia to the motor shaft through the mechanical drivetrain. Check acceleration and deceleration against the worst credible friction and load. Mechanical resonance may create a narrow problem band even when adjacent speeds work; change ramp shape, damping, or microstep mode only after observing the system. Open-loop operation cannot report lost steps by itself. Compare commanded pulse count with independent shaft or output position after forward, reverse, short, long, hot, and low-supply moves. Watch gearbox backlash separately from step loss. If positioning is safety-critical or unrecoverable, add feedback or fault detection rather than relying only on a theoretical pulse count.

  • Measure the actual output shaft if the acceptance criterion is at the load, not just at the motor.
  • Verify positive and negative direction transitions against the driver setup/hold times.
  • Sweep through expected resonance bands with the final fixture and cable routing.
  • Check the winding current waveform and driver temperature during fast and sustained motion.
  • Leave mechanical torque margin at every ramp speed; do not equate holding torque with available running torque.
  • Document power-loss recovery, homing, and missed-step detection behavior.

Common Mistakes

  • Treating a microstep command as guaranteed shaft angle.
  • Jumping from zero to cruise STEP frequency without a ramp.
  • Sizing from holding torque instead of running torque at speed.
  • Ignoring reflected inertia and load acceleration torque.
  • Meeting average pulse rate while violating minimum STEP high/low time.
  • Changing DIR too close to the active STEP edge.
  • Confusing chopper PWM frequency with command STEP frequency.
  • Increasing microstep factor without increasing controller pulse bandwidth.
  • Assuming all missed positions are lost steps when backlash is present.
  • Skipping cold, hot, low-supply, reversal, and resonance tests.

Engineering Sources

Analog Devices microstepping guidance discusses current waveforms, motor variation, torque, and resonance. Oriental Motor speed-torque guidance distinguishes pull-in and pull-out operation. Use the chosen driver and motor datasheets for actual timing and torque values.

Support reference

FAQ

How do I convert stepper RPM to STEP frequency?

Multiply motor RPM by full steps per revolution and microsteps per full step, then divide by 60. Include any electronic gearing or pulse multiplier in the command-count definition.

Is a microstep a guaranteed mechanical position?

No. Microstepping defines commanded current-vector increments. Static position error depends on load, detent torque, friction, current regulation, and motor tolerance.

Why can a motor miss steps at a valid calculated pulse frequency?

Pulse-rate arithmetic alone ignores available torque at speed, reflected inertia, acceleration, resonance, current regulation, supply, and driver timing.

Can I jump instantly to the target STEP frequency?

Only if the motor and load can safely start at that rate. Otherwise use an acceleration ramp validated against the motor-drive torque-speed envelope.

What does STEP high time mean?

It is the duration for which the STEP input remains high. Check the selected driver datasheet for minimum high and low times, DIR setup and hold, and edge polarity.

How do I know whether a short move reaches full speed?

Compare required acceleration and deceleration pulse counts with total move pulses. If their sum exceeds the move length, use a triangular rather than trapezoidal velocity profile.

Does raising microstep setting increase maximum motor speed?

For the same motor RPM it increases required command pulse frequency. Mechanical speed capability still depends on torque-speed, drive voltage, current regulation, and load.

How do I verify lost steps?

Compare commanded and measured shaft or output position after representative acceleration, reversal, resonance, load, voltage, and temperature corners; an encoder or independent position measurement can reveal error.

Summary

Convert motion to the correct STEP count, then shape a profile that satisfies both driver timing and the motor-load torque-speed envelope. Verify current tracking and measured position at the real corners; command resolution alone is not motion accuracy.