Power Uno with 12V?

I’m working on a project where I want to control / automate a blind with a stepper motor.

I follow this instruction Motor on a roller blind by pgote - Thingiverse

I will instead use:
28BYJ-48 stepper motor + ULN2003 driver board.
Arduino Uno

The problem is that I need to run the 12V version of the motor but I do not fully understand how I should be able to supply power with a 12V power adapter as the Uno is operated at 5V.
What do I need to make this possible?

Thanks in advance

Close to not possible in reality. Choose a stepper driver like the 8225 that have current control. Then 12 volt will do fine.
Drop that ULN. It was designed during the stone age and is seldomly useful for steppers.

1 Like

The ULN sinks current thru the motor coils to Gnd.
The ULN receives 5V control signals from the Uno.
The 12V does not go to the Uno at all, only the 12V GND connects to the Arduino Gnd to keep a common reference level.

Thanks! Is there a wiring diagram for the 8225?

The closest I get is this:


Is it possible to connect 12V like this?:

The first pucture looks okey. The second tells me nothing.

1 Like

Well, I was hoping for something like this…

I don’t see any principal difference between this pic and the first.
There are CNC shields taking on 8225s.

Take a close look at the 4 pin jumper block where power goes in, using Post #7 picture.
From left to right as oriented in your picture, the pins are:
If you look at the back of the card you can see:
The Gnd pin connects to the Gnd plane of the board.
The 5V pins are connected by a trace, then to a capacitor, then to pin 9 of of the ULN2003 (COM pin).
The 12V pin connects to the one end of the 4 current limit resistors for the LEDs and then to one end of the motor connector, usually the Red wire that feeds the 4 coils of the motor.
The Blue jumper allows the 28BYJ-48 to run on 5V.
Remove the Blue jumper in your picture and connect the right hand pin to 12V.
Connect the 12V supply Gnd to the left hand pin, and to the Arduino Gnd.

You can try connecting 12V to the Uno’s VIN pin; it may upset the Uno at times to have “noisy” 12V power (caused by motor currents) as the supply into the Uno’s 5V regulator.

Are you sure you have 12V capable motor? The ULN2003 may run much warmer than it does with 5V.

1 Like

Thank you for a detailed answer.

The motor I have ordered can handle 12V.
I myself have thought about how ULN2003 can handle the extra heat.

The ULN2003 will heat up depending on how much current flows - and for how long.
You may need to add a heat sink to the top of the chip:

I don’t know of a N-channel MOSFET array chip that you could plug into the board instead.

None of the breadboard layouts look right to me! In the 8825 one, 12V is connected to the 5V in of the Arduino, which will damage it. In the next one it appears to be connected across the two GND pins of the Arduino, creating a short.

You can power your Arduino from a well regulated 12V supply, with the 12V+ connected to the Vin pin on the POWER header and the 0V connected to the GND pin.

As far as connecting the 8825 motor driver, I suggest looking at the following:


The logic power supply can be taken from the 5V output on the Arduino POWER header.

It might be easier overall to use a CNC Shield together with a DRV8825 stepper motor driver. I have documented how to set this up, including micro-stepping and current limiting on my website at Configuring Stepper Motor Drivers

Hope this helps!

1 Like