Taking Advantage of the DRV8811 Microstepping Driver

Driving a stepper motor has its advantages and its disadvantages. For example, there is no better way to control rotation speed and position than with a stepper. Sure, you may argue that Brushed and Brushless motors on servo systems are better than steppers and this may be true for high speed applications. But the fact you need to close the loop is not a trivial endeavor. With a stepper I do not need shaft encoders, hall effect sensors, PID loops or any other form of feedback. If designed properly (e.g. enough current is given as to avoid missed steps for the application specific torque requirements), a stepper motor can be trusted to move at the desired speed and into the commanded position without having to double check whether this happened or not.

This sounds awesome! And in fact this is why you will see a growing number of extremely cool applications such as CNC routers, plasma cutters or 3D printers being designed around stepper motors. Unfortunately, driving a stepper motor is not a trivial endeavor. There is a series of aspects you need to take care of if you are to correctly drive a stepper motor into your next application of achievement and joy.

1. H Bridge Drivers. A bipolar stepper motor will require two H Bridges, that is eight FET transistors. If you are planning on designing these H Bridges yourself allow me to recommend Tylenol as your head will be turning long before your stepper is powered in place. And that is because dealing with dead times, current recirculations schemes and such are just the beginning. Make sure your H Bridge design includes some of…

2. Current Control: Unfortunately, a stepper motor winding looks like a resistor to the eyes of an H Bridge. Well, this is not entirely true. It looks like an inductance, but we all know that once your inductance saturates and the Ldi/dt component is exhausted, pretty much the current being sunk by that winding equals VM/Rw where Rw is the winding resistance and VM is your motor voltage. This may be a current as large as 24V/1ohms or 24A. Who on Earth is going to happily supply such a current and on a per winding basis? The power supply, not to mention the power FETs would have to be gigantic and expensive!

There has to be another way. Which is why Stepper motor drivers will come packed with current control engines. Current is regulated to a safe value. Why not use a lower voltage? In reality you want the highest voltage possible because this will determine how fast the winding is energized which in turns results in how fast your motor can move. The higher the Supply Voltage, the faster the stepper will be able to rotate.

3. Logic: If you read my previous posting on “What Is A Stepper”, or if you know how they works, you will realize there is some proper sequencing which must be employed. This sequencing will determine the step rotation as its determine the dual H Bridge polarization.

4. Microstepping: I have not explained this yet, but let me just say that if the project was already complex with the previous three items, this has already gone above anybody’s head. Microstepping involves the continuous control of current through the motor winding in an attempt to generate smaller steps.

Driving a stepper motor is not like driving a DC motor where you apply a voltage and the motor goes. With steppers, the amount of baby sitting is off the charts! Whatever was easy, is not too complex. Ahhh! If there was just an easy way of obtaining all of this in a pre-packaged form so that I would not need to worry about all these pesky details…


Good news! There is such a thing as a pre-packaged solution for your bipolar stepper driving needs. I will admit the DRV8811 is not the first stepper driver with an internal indexer, but it certainly rocks!

Now, an internal indexer, what is that? An internal indexer is the internal logic that takes care of ALL the tedious aspects of driving a stepper motor and making it superbly easy for you to drive a stepper motor just like if you were driving any other motor. Actually, even easier! You do not have to worry about electromagnetic field polarization, current direction or magnitude, sequences, etc. All you have to do is supply two signals. DIR controls the rotation direction and STEP controls the rate of stepping. It really can not get any simpler than this.


It really can not get any simpler than that. The logic inside of the DRV8811 will take care of EVERYTHING you need when it comes to driving your bipolar stepper motor. It even has protection in order to save the device from deadly scenarios such as power output shorts to GND, VMTR or another power output. It will achieve microstepping with up to 8 degrees of microstepping. If you were to code all of these features, you would need a lot of time a fairly powerful microcontroller and way much more money than what a single DRV8811 will cost.

There is no better way to show what the DRV8811 is capable of than to see it in action. In the following video I portray my AE-MDL-STPR1 board, housing a powerful DRV8811 device. Check it out!

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.