Get Your Motor Running: Simplifying the stepper driver selection

Changing one’s perspective can be a very enlightening exercise.  I just recently purchased a new car and found myself on the other end of the transaction – I was the buyer, not the seller.  You would think selecting a car would be easier than selecting an IC, but I found this not to be the case.   There were so many makes, models, and options to choose from, I found the whole experience a bit overwhelming.  So I thought to myself, trying to simplify the stepper driver selection process might just be a good idea.   

Step #1:  Select the voltage range

Select an operating voltage range that gives you enough margin to handle supply pumping (when the motor acts as a generator pumping current into the supply, temporarily raising the voltage) and the various inductive spikes that occur when driving a motor.  The typical rule of thumb for a stepper is to have ~ 20% margin vs. the operating supply voltage of the motor, but depending on the use model of the motor, you may need up to 2x margin, although this is more an extreme case.  For brushed DC and brushless DC motors, it’s more like 1.5x to 2.5x margin. Base your selection on the recommend operating voltage range, not the absolute voltage.

Step #2: Select the current rating  

Stepper drivers typically drive sinusoidal currents, so consider your peak and RMS current requirements and select a driver that can handle both.  An integrated motor driver’s RMS current rating is a function of thermal performance, I.E. how much current can it handle before shutting down due to the over-temperature protection kicking in.  Typically, the higher the current, the lower the FET RDSON required.   Other variables affecting thermal performance include how efficient the FETs switch and how thermally efficient the package is at getting the heat out.  For a stepper driver, the peak current is typically set at 1.414 of the RMS current.

Step #3: Determine board space and thermal requirements

Integrated motor drivers are your smallest option, but they can’t handle as much current as a pre-driver with external FETs.  Integrated drivers also typically dump the majority of the heat into the board, so if you have a really small board, make sure it can reliably handle the heat. Look for lower RDSON ratings if you are concerned about thermal performance and for high current applications consider a pre-driver with external FETs. 

 Could go higher, depending on the external FET’s used

For product details, see the DRV8811, DRV8818, DRV8824, DRV8825 and DRV8711 product folders.

Step #4: Determine the motion performance requirements

Outside the motor itself, the quality / performance of the motion profile is primarily determined by the micro-stepping level and current regulation performance & configurability.   With micro stepping, the higher the micro stepping level, the smoother and quieter the motion profile.

Current regulation performance is bit more difficult to judge.  Check out how a given driver is positioned in terms of performance and then look at how configurable the current regulation engine is, what level of micro stepping is supported and what type of decay modes are supported.  Typically, the more options the better the current regulation engine. Ultimately, it may just come done to getting an evaluation module and seeing if the driver meets your performance needs.

Configurability or “performance tunability” is especially important for high performance applications. There are such a wide range of motors characteristics, voltages, and motion profile requirements, that a driver with minimal configuration options may not meet your performance requirements. Configurability gives you the ability to custom tune your specific motor / motion profile for optimal performance.  

On the other hand, keep in mind that configurability and high performance typical imply complexity and higher cost and many stepper applications don’t require sophisticated current control or micro stepping. Sometimes, “simple” is absolutely the right choice. 

Step #5: Select control I/F

There are several control I/F options out there, including Step/Direction, Phase/Enable, and PWM. The tradeoffs on these interfaces are tied to the number of GPIO’s required and the amount of support needed from the system MCU.  Step/Direction is the simplest interface and my favorite.  It can be driven with two GPIO’s and has on-chip micro stepping support, minimizing system MCU support. The Phase/Enable and PWM interfaces can be driven with a minimum of 4x GPIO’s, but may require more depending on how you implement the micro-stepping. When micro-stepping, both Phase/Enable and PWM control I/F’s require external MCU support. 

For product details, see the DRV8812, DRV8813, DRV8841, DRV8824 and DRV8825 product folders.

Hopefully the above outlined selection process will help you easily select the right stepper motor driver for your given application.  If you need additional help in selecting a stepper driver, you can search for solutions, get help, share knowledge and solve problems with fellow engineers and TI experts on the Motor Drivers forum. Or, check out my Engineer It video on how to or when to use a pre-driver vs. an integrated motor driver.

For even more info on motor drivers, watch the following Engineer It videos:

Engineer It - Understanding basic sensored BLDC motor operation

Engineer It - How to simplify your motor drive solution

Engineer It - Thermal considerations when selecting an integrated motor driver

Engineer It - How to regulate your current when micro-stepping

  • Hi Dawei,

    It can be a little tricky to determine this without taking actual measurements of your motor drive stage as it 'spins" through all of its motion profile.  Send me an e-mail at with the details of your drive stage and what it's end applicaion is / motion requirments and I'll have one of the applicaion engineers take a look at it.



  • "The typical rule of thumb for a stepper is to have ~ 20% margin vs. the operating supply voltage of the motor, but depending on the use model of the motor, you may need up to 2x margin"

    Could you explain how much driver supply voltage needs to be larger than motor voltage in a certain scenario and why it would make sense? Thank you!