HIGH-Power Motor Driver 18v15: motor turns too slow

I’m trying to use Arduino to control the board and I ran into a problem.

I connected PWM to a PWM digital pin and DIR to a digital pin in Arduino. I connected the two wires from the motor to OUTA and OUTB, 12v. to V+ on the motor power side and I grounded it. I also supplied 5V to the V+ on the logic pin side and grounded it as well. I programed it so that it changes directions every 2 seconds. When I plug everything together, the motor turns but extremely slowly. The motor also vibrates as well.

When I turn on the 12V power supply, the power for arduino comes on as well. The motor does not turn until I plug in the USB cable for Arduino. It rotates in the speed that I expect for 2 seconds and then it becomes real slow and it vibrates. The power light is dim with just with the power supply and when I plug the USB cable, it becomes brighter. If the USB is already plugged and if I plug the 12v power supply, the motor turns extremely slowly and it vibrates again.

The power supply I am using is 12v 14A. The motor draws about 2.3A when it is locked.

I tried setting the reset pin HIGH but that didn’t work.

It does not change the direction of the motor either.

If someone can help, I will be forever grateful.
Thank you!

const int pwmPin = 9 ;
const int dirPin = 8;

void setup(){
pinMode(pwmPin, OUTPUT);
pinMode(dirPin, OUTPUT);

digitalWrite(pwmPin, HIGH);

void loop() {

digitalWrite(dirPin, LOW);


digitalWrite(dirPin, HIGH);


I don’t think you are suppose to connect 5v to the logic side V+. Per the 18v15 description:

The V+ pin on the logic side of the board gives you access to monitor the motor’s power supply (it should not be used for high current).



What happens when you connect your power supply directly to the across the leads of the motor with nothing else connected? Are you connecting the motor driver and Arduino grounds together?


Hello again.

Mike’s post is correct. Connecting a voltage source to the +5V out line can destroy the motor driver.


Thank you all for the replies.
I took out the 5V from Arduino from the v+ on the logic side of the board and it works now!
The ground from Arduino is still hooked up to the GROUND on the logic side.

Should the ground be coming from the 12V power supply or Arduino on the logic pin side of the board?
I am just afraid that if I run the motor as it is, I might fry the board or the motor.

Thank you!


It looks like Ryan didn’t read the original post and Mike’s post correctly. V+ on the motor driver board is the same on both sides, so if you connect 12V to it on the big terminals, it will be 12V on the other side. If you connect that V+ to something like the 5V node on your Arduino, you’re putting 12V on a line that probably can’t go past about 5.5V, and you will likely completely destroy your Arduino.

- Jan


If your 12V power supply is powering both the Arduino and the high-power motor driver, you don’t strictly need to make a ground connection on the logic side of the board, but I recommend you make a connection between this pin and your Arduino’s ground. Just make sure that the power/ground connection from the power supply to the board’s power inputs can support the current you need and is as short as possible.

- Ben

Again, thank you for your replies.

When you say the connection is as ‘short’ as possible, do you mean the length of the wires? If the wires to connect the motor from the driver board are long, would this affect the performance of the motor?

I will be running 5 motors using 5 of the motor drivers with the power supply.

Thank you so much for your help again!

Yes, I mean short in length. How long will your motor wires be? In general, long leads will have greater resistance and inductance, which can cause problems like electrical noise and lost power. It’s best to keep your leads as short as is necessary for your application.

- Ben

Thank you!