Switching of a running ULN2003 Stepper Motor Driver IC

ScottWang

Joined Aug 23, 2012
7,504
When the inputs of UNL2003 are all 0 then the stepping motor will be stop.

Is there not an error in the way the ULN is being used to drive the stepper?

VCC is 5.0V
Inputs to ULN are either 5V or 0V

The ULN is physically disconnected from GND and the motor is still turning with low torque.

Puzzled..
Stepper Motor Forward And Reverse Testing circuit. (ULN2003)

2) Pin 8 of the ULN2003 is at 2.1V relative to ground ---- this is in keeping with the low torque behavior of the motor when its driver is supposed to be "disabled"
When the output of ESP32 is low as 0V and the input of ULN2003 still keep at high, it will caused the E(2003) at 2.1V and the E(2003), Vce, Coil to +5V has voltage difference as 2.9V, it may provides the coil a current to run, you could try to use a 4.7K connected from E(2003) to +5V, I'm not sure it that enough to provides a high level for E(2003) or not, but you still could try it, even smaller from 4.7K, 3.9K, 3.3K, 2 7K ... 1K.

Edit:
I forgot to mention that you could measure the voltages from the output Pins of ULN2003.
 

MisterBill2

Joined Jan 23, 2018
27,980
Please explain fully.... The inputs from the ESP32 are either high or low. Nothing between.
If the motor is still moving then there are still commands for the phases still arriving. And if the driver IC is still enabled the motor will keep driving. So to stop the motor from moving the program must stop the stepping commands. AND you need to look at the applications information information to see how the Enable function actually works. It may not function the way you want it to.
 

ElectricSpidey

Joined Dec 2, 2017
3,356
I think I know the problem, and it’s probably my fault.

When the outputs from the micro are low they are providing negative voltage to the common emitters through the built in pull down resistors in the driver chips.

I am very sorry for any trouble I have caused.
 
Top