Today I found that electronics dealer have shipped me a Microstepping controller (A4988

-module: http://www.robotshop.com/media/files/PDF/datasheet-1182.pdf

-on-board chip: https://www.pololu.com/file/0J450/a4988_DMOS_microstepping_driver_with_translator.pdf -) along with two DC motors. And he claimed that it is possible to control two DC motors with that module. But how?

I checked two of these datasheets that are provided above, however, I still feel confused about if this module is a stepper motor controller, it will constantly change the polarity, which is something that I don't want, so how can I control two dc motors simultaneously with it? Also I need to be able to control the speed, via PWM or what is available. Any guidance would be really helpful!

  • \$\begingroup\$ What does the dealer say? You can't control DC motors with that controller. \$\endgroup\$ Nov 21, 2015 at 20:20
  • \$\begingroup\$ @LeonHeller He just said it is possible, and I would figure out by checking the datasheets. However, I couldn't. Do you have any idea whether it is possible or not? \$\endgroup\$
    – Burak.
    Nov 21, 2015 at 20:22
  • 1
    \$\begingroup\$ It is possible. Because Stepper motor needs two H-bridges to run (Bipolar). Though controlling the speed will be difficult. \$\endgroup\$
    – ammar.cma
    Nov 21, 2015 at 20:26
  • \$\begingroup\$ @ammar.cma Ok thats relieving, I believe using the potentiometer will change the speed, yet, I need to be able to control it with arduino. \$\endgroup\$
    – Burak.
    Nov 21, 2015 at 20:29
  • \$\begingroup\$ It will constantly change the polarities of the coils of a DC motor if you toggle the STEP input. But with ENABLE you could control speed. With careful managemnt of RESET and STEP you could control direction. \$\endgroup\$
    – Dave X
    Apr 12 at 23:47

1 Answer 1


To answer your question, yes you can run two DC motors of A4988 Module because the output stages that are driving a bipolar stepper winding are H-bridges and you need two of them (Check here for more on bipolar motors) .

Controlling two motors with different speeds is out of mind. Because there's no different pins.

Now to answer that how would you control the speed. You need to pulse step pin. You might need to set the micro-stepping modes. Like 8/16 micro-step per step. Check the current graphs. Because you are approximating sinusoidal waveform. Motor might start at some value of current(which can be controlled by pot as you mentioned)

EDIT : Quick Google search gives me this link
Good Resource. Let me bookmark.

  • \$\begingroup\$ You could control speed with the ENABLE pin as a PWM input. \$\endgroup\$
    – Dave X
    Apr 12 at 23:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.