A4988 steps but ignores DIR input

Hello,
I am trying to use the A4988 stepper driver for the first time and I have run into a very strange problem: the motor steps fine but regardless of the input on the DIR pin the motor turns only in one direction (anticlockwise). I searched both the forums and the internet and I did not find anything other than “check your wiring” which I have done without success.

Setup:

  • Vmot 12V, 1.5A max
  • Vdd roughly 4.6V from Arduino Nano 5V
  • Stepper SY35ST26-0284A
  • Wiring according to the minimal wiring diagram on product page (SLEEP/RESET connected, Vmot capacitor present)
  • Vref set to 0.11V to achieve maximum motor current of 0.26A

What I tried / checked:

  • I have measured the voltage between ground and DIR pin and it does change between 0 and roughly 4.6V as expected but the motor direction does not change with it. I measured directly on the pin on the driver board to rule out contact problems.
  • I have replaced the STEP input from Arduino with a push button (connected to Vdd) which works fine, motor steps on button push and is stationary otherwise.
  • I have replaced the DIR input with the same push button as above but that does nothing, motor turns only in one direction regardless of button position.

Observations & questions:

  • There is a tiny coil whine from the stepper even when it is stationary. Is that usual?
  • The small heat sink I added to the A4988 chip gets really hot (almost too hot to touch) within seconds of connecting Vmot, even though measured current through the stepper is only 0.26A. Is that normal?
  • I did not post a picture of the wiring as I cannot think of any wiring error which would cause this behavior (since I checked the voltage on the DIR pin). If you can think of any such wiring error let me know and I’ll post a picture.
  • Can you think of any failure mode which would result in the driver working fine (stepping) but ignoring the direction selection? How likely is it in your opinion I damaged the driver in such a selective way vs. this being a manufacturing defect?

Thanks in advance for your reply, I’ll be glad for any suggestions.

Best regards,
Regis

Hello, Regis.

I am sorry you are having trouble getting the behavior you expect from your stepper motor driver. Can you post pictures that clearly show the component-side of the A4988? In general, while pictures can be used to check wiring, that is not exclusively why we ask for them. We do not always know what to expect, but having a picture of the product that shows how it is being used is useful to quickly determine if something is obviously amiss. Pictures can also help to see if the board looks damaged.

The audible noise and temperature of the IC might not be unreasonable. The noise is generally caused by the driver switching power off and on repeatedly to limit the current to the stepper motor. When the stepper motor driver is not being commanded to step, it is energizing the coils connected across its outputs, which means it is allowing as much current as the current limit allows to flow through the coils. This current will heat up the stepper motor. Also, hot to the touch is not necessarily hot for electronics.

As for your last question, we test all of our electronics before they are shipped, so although it is not clear what is currently wrong, the board was likely working at some point.

-Jon

Hi, sorry for the late reply - when I was taking the picture I realized my driver was not original Pololu but instead some kind of copy. I ordered a Pololu original from a local distributor (albeit for twice the price) and it is working flawlessly so far without any changes to the circuit. So clearly my original driver was defective. Thanks the tips!