Is it possible to connect 6 dc motors and 2 dc servo motors to an Arduino Uno? I intend to control the Uno with a Raspberry pi connected through USB.

Assuming every motor to be bidirectional, how many L293 or L298 motor driver boards do I need? Is there any other better option than using multiple driver boards?

  • It is hard to answer your question until we know the specs of motors you intend to use. Also ensure that you use a specific power supply for motors (don't use power provided by the UNO).
    – jfpoilpret
    Feb 6, 2015 at 19:47
  • 6 12volt 10 rpm dc motors and a microservo motor to be exact. Yes, I will run them with a separate power supply to the driver boards. Are the pins on the Uno sufficient to provide signals to all the motors?
    – user1989
    Feb 7, 2015 at 8:23
  • In out project, we connected the motors that werd going in the same direction, to the same driver board. Not sure if they were in series or parallel. For a vehicle with 4 motors, it can be enough to control the left and right side, instead of all 4.
    – Paul
    Feb 3, 2016 at 5:39

2 Answers 2


TI is only one of the many manufacturers who make some really nice motor control chips. The DRV8835 is one such device: it will drive two motors at voltages up to 11 Vdc at currents up to 1.2 Amps each. Each channel requires two control lines: enable and direction.

Pololu sells this chip already mounted to a carrier board for a rational price.

You will need a total of (6 motors * 2 lines per motor) = 12 i/o lines PLUS two more lines to control your servos for a total of 14 i/o lines from your controller.


Normally a full H-bridge (for one motor in bi-directional mode) will need 3 ouput pins. You can potentially force the enable pin to a constant level but that means you will always draw current for your motors even when they don't move, which is probably not what you want. ou might also wire all 6 enable pins together to one Arduino pin just to control power of all motos altogether.

In addition, each servo will need one output pin (typically 9 and 10 for both servos).

Hence in the worst case, you would need 20 pins overall. You have them on Arduino UNO but this means you don't have anyhting else left, even Serial communication!

If you can wire all 6 enable pins together, then you will need "only" 15 pins.

Also, note that if you want to control the speed of the DC motors, you will need PWM pins, but then you won't get enough with a UNO.

Regarding drivers ICs (L293 or L298), each of them has 2 full H-bridges, hence can drive 2 DC motors in bi-directional mode, so you will need 3 of them overall.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.