The picture above is the circuit I’m trying to get to work. All my existing Raspberry Pi power pins are taken up by a camera multiplexer which powers 4 RPi cameras). So I am left with no power pins to connect the stepper motor to, and hence wanting to use external power of 5V-12V. But the problem is the motor and driver only works when I connect them directly to the 5V on RPi (when the camera multiplexer is not present) but it doesn’t work with external power.
Here is my current setup:
- Motor: 28BYJ-48 stepper
Driver: ULN2003 driver board
Controller: Raspberry Pi 5
Power: External 5V DC adapter (verified working with LED circuit)
GPIOs used: GPIO 12, 16, 20, 21 (BCM mode)
GNDs connected: Raspberry Pi GND and external power supply GND are connected together
Driver board is powered via external 5V and GND (not from Pi)
Things I’ve tried so far:
- Verified my external 5V adapter works using a simple LED+resistor test.
Ensured all GNDs are tied together (Pi GND, ULN2003 GND, power adapter GND).
Swapped to a second ULN2003 board and a second stepper motor — same result.
Removed the breadboard and directly soldered ground wires to eliminate poor contact.
Ran a GPIO test script to confirm GPIO 12, 16, 20, 21 go HIGH — all passed (LED blinks correctly).
Double-checked GPIO pin numbering (I’m using GPIO.setmode(GPIO.BCM)).
Tried running stepper motor control code as sudo.
I am following the exact circuit shown in the image. I don’t know what I’m doing wrong. Could someone please help me with this? I’d greatly appreciate it. Please feel free to ask if more details are needed.