DRV8824 Stepper Motor Driver Carrier and direction input

Total newbie here…
I just hooked up the DRV8824 for a test with simple stepper motor.
It goes CCW but not CW

I used 10v input and power the logic through a buck down converter D24V5F5.
The motor definately goes in one direction but for some reason not the other.

Question is does the direction input require a transition to latch or is it truly just a level as seems to be explained in pdf.?

Question is may I reverse the wires on motor to see if it goes in the opposite direction? Im pretty sure I can but still would be nice to confirm it.

I am using only a DC level to indicate a high state on the ‘dir’ input.
It does not appear to work but I am not sure why yet.

Any ideas would be welcome
Thank You

Hi, your Qs are a little unclear, but they look to be on the right track.

(1) when motor goes one direction, what is the measured voltage on the DIR pin?
(2) when you ask the motor to go the other direction, what is the measured voltage on the DIR pin?
—> When the motor “doesnt go in the other direction” does it not move at all? Or does it go in the same direction as before?

(3) The direction input doesnt need anything special, just a pin change. LOW for one direction, HIGH for the oppositive.

(4) what are you using to control the step and DIR? if you are running on a 3.3V system but powering the board with 5V, that could explain some stuff.

(5) "question may I reverse wires on motor?"
I can confirm if wiring is said to be in the 2A-1A-1B-2B scheme, you can turn off power to your entire system, then flip the connector 180 degrees, and it will turn in the other direction for a given signal. But don’t remove the stepper motor while power is on, it is easy to damage the driver then.

I am using only a DC level to indicate a high state on the ‘dir’ input.
It does not appear to work but I am not sure why yet. [/quote]
this is entirely unclear. But if you are not measuring a high state on the DIR pin, that is why you are not having a change of DIR.

Peace :slight_smile:

Thanks Tomek
I appreciate the input.

Still having this problem.HEre is what I know.
The dir input is either 0.01 v or 5.0 v confirmed. I am using a ttl device to give the logic level into DIR input.

Motor direction is always CW when facing the shaft end (or CCW facing the rear end)

Changing the DIR input does nothing to change the direction. It always go CW on a pulse, no matter what.

Input voltage to the VMOT is 24v DC

5V logic power into RESET(not) and SLEEP(not) comes from a 5v step down voltage regulator (buck regulator) D24V5F5. This is fed by the same 24v supply as VMOT. Logic ground and power ground are connected together.

Each winding B2,B1 and A1,A2 register ~ 2ohm when the device is off.

The voltage on the motor windings is about 0.5 to 1v across the winding. (It was 1v initially then I turned down the current limit since the chip gets pretty hot.

Reversing the motor connector does not affect motor direction.

The only thing I am not doing is providing a clean transitioning signal to the step input. I am simulating input with a hand switch for now as my function generator is not available <> I did have it initially connected to function generator square wave and the result was always the same.

Thanks for listening.

Oi, it sounds like you’re doing things correctly. I dont think your transition on the step pin should be a problem, unless you think it could somehow induce a pin change on the DIR pin. I say it shouldn’t be a problem since it clearly works as a transition for the CW direction.

There seems to be nothing special going on the DIR pin according to the schematic. I would if I could try two things

(1) try another DRV8824 board, honestly. There could be errant damage somehow on the DRV8824. I know that you might not have another on hand or want to buy another one, so that may or may not be an option. But it could potentially save a huge heaache.

(2) Are you using a breadboard? I would solder connections directly to the board. Maybe you’ll have to desolder eventually but reusable breadboards can cause so many problems especially if they’re old.

(3) double check the voltage on the DIR pin while you are stepping the step pin. I imagine you have a limited number of hands so you probably didnt try both at once. I dont know if your voltmeter could register any impulse change on the DIR pin caused by noise or something on the step pin .the step pin shouldn’t be noise-inducing, though, because its low-current signal wire.

(4) double check shorts between step and DIR.

(5) If you have fine voltmeter probs, check the resistance between the DIR pin of the PCB board and the literal DIR pin on the DRV8824 chip. you can find which pin that is on the datasheet.

I looked at the low voltage stepper driver just to get a perspective I hooked up the DRV8834 chip.
Apparently having the same exact problem told me I was doing something incorrectly.

It looks like the torque and the signal frequency was insufficient to make the motor change direction.
I was fooled by the brass bearing riding the stepper screw.

WHen I got my function generator back and was able to put in a 300 hz TTL square wave the DIR worked.

SO the current limit must be set high enough to make the screw actually move and not just vibrate. Also the frequency
of pulsing should be at least 300 hz or better in full step mode. Then DIR will have visual effect.


Cool beans! Sounds like its working now.

Notes to make
(1) If you are using a brass nut I assume you’re using the stepper to push something. Always, but all the more when you have a significant load, make sure to run accelleration profiles. So if you want 1000 steps/second, you need to ramp it up at a certain speed. most formulas use non-linear accelleration, I think, but linear is fine too.

(2) I’m not sure I follow the “300hz” bit. You should notice a change at any frequency of stepping, but it might not be significant. At full steps, 300hz = 1.5 rotations/second, and even less at half steps, 1/4, etc. But over a period of time (10 seconds) you’ll still notice the same rotation for 30hz as for 300hz.