Make an 8-amp Dual Motor Controller For $40 by Gadget Gangster
4306347372_62abcfecae.jpg
The OctoDriver is an open-source 8-amp Motor controller. Connect it to your Arduino, Propeller, or PICAxe to control more powerful motors!

I've been working on a dogie door for a while - while the software is straightforward, finding a suitable motor controller has been more difficult.

The problem is that a lot of the inexpensive motor control shields are just too meager to control anything but the most dinky motors.  ladyada's Arduino shield only does 600mA continuous, 1.1A peak . Pololu makes beefier motor controllers, the DMC 01 can do 13 amps, but it's pretty expensive (about $100). 

So I've been on the lookout for a high power, inexpensive, and easy to control circuit - I was flipping through starlino's website and I spotted exactly what I was looking for. His idea is pretty simple: why not combine 2 motor controller IC's to split the load?

He calls the circuit the 'OctoDriver', it combines 2 h-bridges to provide 8 amps peak, 4 amps continuous. I asked him if I could put it on a PCB, and he thought it was a great idea. I couldn't think of a better name, so I call my version "The OctoDriver".

I also put it on a Propeller Platform compatible footprint, so it can be used on a breadboard, perfboard or with a Propeller microcontroller. The design is available under the MIT license, so anyone is free to hack away.

The OctoDriver is also available as a kit from Gadget Gangster.


Flip to the next step and I'll give you some more technical details on the OctoDriver and show you how to use it.




 
Remove these adsRemove these ads by Signing Up

Step 1: FAQ

servo.jpg
What are the Specs?
The OctoDriver is an 8 amp motor controller, capable of controlling 2 motors @ 8 amps. It uses four TI SN754410 (datasheet) Quad Half-H drivers, 2 per motor. The SN754410 is 'juiced-up' version of the classic L293D. Here are the key specs of the OctoDriver

OctoDriver Specs  
Peak Current: 8A
Continuous Current: 4A
Motor Voltage: 4.5V - 36V
Logic Voltage: 5 Vdd, inputs will accept 2.0v - 5.5v
Operating Temp:  -40c to 85c (-40f to 176f)
Motor Support:
2 Bi-directional DC motors / linear actuators, or 1 stepper
Other Features: ESD Protection, Thermal Shutdown, No 'Power Up Glitch'
Connectivity: .1" pin spacing for Breadboard / Protoboard. 2 OctoDrivers can be stacked on a single Propeller Platform, as well.

I didn't include servo headers because it's super easy to connect a servo to a Prototyper module and controlling servos with a Propeller is easy, too.

Do I really need that much power?
When you check out the specs on a standard servo, it's often something like 150mA. So what's the point of a 4+ amp motor driver?

Here's the deal - that 'current-draw' number is at NO LOAD. In other words, if you actually wanted to move something with the motor, your current-draw will be higher.  How much higher depends on your load, but the highest draw would be if the motor were stalled (Stall Current).

Take this typical servo. With a 6V power source, no-load draw is a measly 220mA... until you actually make it move something! Maxing it out brings you to 1.3 amps of current draw. And that's a ONE standard servo.

Moving anything but the smallest motor requires real power, and 800mA bridge doesn't cut it.

Will the OctoDriver work with Arduino / PICAxe / Workbench 1.3?
Yes. Using it is super-simple. At the end of this howto, I'll show you how it's done.

Is it hard to build?
No - it's really easy to put together. If this is your first time soldering, it will probably take 15 minutes. If you're a seasoned pro, it should take longer for your soldering iron to warm up than assemble.

Here's a video demo of Starlino's OctoDriver in action:


MohitJindal says: Jan 19, 2013. 3:51 AM
I am planning to buy a new DC motor driver board which can run 5amp motor but I don't know how to connect it with Atmega 8A chip. Please see the pdf I attached for Atmega 8A.

Here are the 7 pins in DC motor controller:-

Pin No. Pin Functionality
1 GND Ground
2 IN-1 Logic input for the motor direction.
3 Diagnostic 1
(DG-1) Output pin with logic 1 output in normal operation. Represents side of the internal
H bridge corresponding to IN-1. Pin is pulled to logic low by the motor driver in
case of over temperature or overload due to short circuit.
4 PWM Used to apply Pulse Width Modulation to control motor velocity
5 Diagnostic 2
(DG-2) Output pin with logic 1 output in normal operation. Represents side of the internal
H bridge corresponding to IN-2. Pin is pulled to logic low by the motor driver in
case of over temperature or overload due to short circuit.
6 IN-2 Logic input for the motor direction.
7 CS* Current Sense output to measure the current flowing through the driver
vectorges says: Apr 20, 2010. 9:30 AM
Questions from a newbie. Would it be possible to increase the amperage  by using something beefier than the TI SN754410? My project is to control a pair of motors (from a scooter chair) to power a small boat.
Gadget Gangster (author) says: Apr 20, 2010. 9:35 AM
At that point, you probably better off using a mosfet powered controller - BJT based H-bridges are going to waste too much heat for your application.  Check Pololu for some nice ones.
guerd87 says: Apr 9, 2010. 9:13 PM
Great Project. I have been stuck in the same boat really looking for a motor driver. My next real option for power was to build a H-Bridge circuit from Mosfets, which would give me tons of power but at a high price :(

Im going to run down to Jaycar tomorrow and pick up the parts and get it breadboarded up for my Arduino

Good stuff :)
John
frollard says: Jan 27, 2010. 9:25 PM
Fantastic project! any thoughts on open-sourcing the complete schematic/board layout files?  Looks complex to diy the circuit board, not not impossible :D

Silly question:  Those traces look a bit small to handle 8amps at 5 volts...I'm guessing that gets proportionally less to suit the max motor voltage (to match the total wattage...)
Gadget Gangster (author) says: Jan 27, 2010. 10:08 PM
Thanks! It was a lot of fun putting it together and testing it. I threw some fairly massive softball-sized motors and it worked like a champ.

I'm working on a battery pack for the Propeller Platform, too - so the next step will be to put the OctoDriver in a wheel robot with some UPS batteries, running the Prop logic on a separate battery.

The schematic / layout files are under the MIT license (essentially public domain) - there's a link to download it in PDF or diptrace format on the last step.  Same deal with the Propeller object.

The board uses thicker (taller) traces than usual to support extra current (4 oz instead of 1 or 2) - it will do just fine providing 4 amps continuous to each motor 8 amp peaks are fine, too.
frollard says: Jan 27, 2010. 10:50 PM
Thanks for the quick reply!  Really neat stuff; I never realised the dip link was another format :) silly me!
Gadget Gangster (author) says: Jan 27, 2010. 10:57 PM
No problem!  Diptrace is my favorite program - there's a freeware version that works just fine, too.
milsorgen says: Jan 27, 2010. 5:28 PM
 Top goal!
Pro

Get More Out of Instructables

Already have an Account?

close

PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!