sku: DEV-09815
Description: The new version of this shield allows for either 3.3 or 5v logic, a separate and more robust VIN connection, and the PWM input has moved to pin 3.
This is a motor shield for Arduino that will control two DC motors. Based on the L298 H-bridge, the Ardumoto can drive up to 2 amps per channel. The board takes its power from the same Vin line as the Arduino board, includes blue and yellow LEDs to indicate active direction, and all driver lines are diode protected from back EMF.
Control for motor attached to OUT1/2 is connected to digital line 12 (direction A) and digital line 3 (PWM A).
Control for motor attached to OUT3/4 is connected to digital line 13 (direction B) and digital line 11 (PWM B).
Compatible screw terminals and connectors are listed below. They are not included in this SKU. You will need to add them to your cart separately.
Documents:
Replaces: DEV-09213
DEV-11002
Go-Between ShieldROB-08911
Micro Metal Gearmotor 30:1PRT-09279
Arduino Stackable Header - 8 PinROB-08910
Micro Metal Gearmotor 100:1ROB-09670
Motor Driver 2A Dual L298 H-BridgeROB-11080
Motor Driver 2.5A MC33926ROB-08912
Mini Metal Gearmotor 100:1COM-09479
Full-Bridge Motor Driver Dual - L298NROB-09571
Serial Controlled Motor DriverDEV-11061
Arduino Mega 2560 R3PRT-09280
Arduino Stackable Header - 6 PinRTL-09896
Ardumoto - Motor Driver Shield RetailDEV-11021
Arduino Uno - R3DEV-09832
Mux ShieldROB-11057
Wild Thumper Controller BoardROB-09457
Motor Driver 1A Dual TB6612FNGPRT-00116
Break Away Headers - StraightROB-08913
Mini Metal Gearmotor 24:1PRT-08084
Screw Terminals 3.5mm Pitch (2-Pin)PRT-10007
Arduino Stackable Header KitROB-10336
Rover 5 Robot PlatformDEV-10356
Arduino Uno SMD
Comments 47 comments
I’d like to parallel the outputs on this controller to drive a moderately higher load (peak ~4A, continuous ~3A) for short periods. According to the L298 datasheet, to do this you want to pair lines 1&4 and 2&3, but the logic setup on this shield looks like it precludes simply jumping DirA to DirB.
1) Am I missing something?
2) If not, would there be a problem simply opposing A and B in software, and paralleling the appropriate output channels to the motor?
I made a mistake and bought this motor driver instead of the “retail” version which includes the stackable headers and screw terminals. Make sure that you don’t forget to buy the extra parts or you will be delayed in starting your project as I am.
Can you use this on a stepper?
Looking at the datasheet for the L298H, it looks as if the logic supply voltage must be at least 4.5V, but the schematics for this shield show a solder jumper that selects 3.3V or 5V logic. I just wanted to confirm that this can in fact run at a lower voltage. What I really want to do is use two 3.7V LiPos in parallel to supply an atmega328 and this to drive the tamiya twin gear box. If someone has gotten this to work or similar, please let me know. Thanks.
I am looking to do something similar. Did you get any answers? I assume if they sell it for 3.3 logic it should work.
I want to use a LiPo with the Tamiya twin gear box and Arduino pro at 3.3v
Right now I am using the Adafruit shield with 3.7 and separate 5v for Arduino Uno.
I like my old version, but I really like the new Vin line that you can add a screw terminal to.
Is it possible to use a different set of pins on this? The reason I am asking is that I want use use the Wifly shield and it uses digital pins 10 – 13 and this shield uses digital pin 11 & 12…. any thoughts / solutions?
I guess in order to use different pins, you’d have to cut the traces and run wires from the pins on the chip to the header pins of interest. Not impossible, but difficult if you’re not pretty well versed with an iron. Sorry about that. But it’s a cool idea, and it’s got me thinking of a revision. Wouldn’t it be cool if you could pick any pins you wanted? I just can think of an elegant way to pull it off. I suppose you could have a row of header pins that go to the chip, and an opposing row of header pins that go to the pins on the Arduino, then jump them with some of those jumper wires we sell to wherever you want… but that seems kinda janky to me.
We’ve also discussed the possibility of standardizing the shields a little better than we’ve done. That may be a better way to attack this.
Pete,
I think I am going to have go down that route because I need the wifi capability and I am going to add a microSD shield as well so I can store sensor information.
I look forward to the future revisions and standardization of the shields and thanks for listening :)
Yes, please free up digital pins 10-13 in the next rev! A Wifi controlled robot would be nifty ;–)
In the code it says PWM A is on pin 10, but it’s on line 3 as is mentioned in the product description. Don’t forget to change the code :)
Yep. Uploading fixed code now.
I just bought one of these and when I attached it to a 13.2v battery and 2 350ma motors. The trace from the positive VIN header(-screw terminal) to the Via got fried. the battery may have been reverse voltage, would that make sense? also I like the screw terminals so much that I want to solder a jumper from the side header VIN to the screw terminal. will that work?
I just bought one of these and when I attached it to a 13.2v battery and 2 350ma motors. The trace from the positive VIN header(-screw terminal) to the Via got fried. the battery may have been reverse voltage, would that make sense? also I like the screw terminals so much that I want to solder a jumper from the side header VIN to the screw terminal. will that work?
Would it be possible in the next revision to break out the current sense pins, instead of shorting them to ground? Maybe add jumpers to short them if necessary..
I’ve made some Eagle files with the modifications discussed in the above comments. More details and a link to the files in the forum: http://forum.sparkfun.com/viewtopic.php?f=32&t=24568
What is the purpose of the numerous vias?
I like this shield but it would be great to have a version that left pin 3 available (the way the original shield did) to be used as an interrupt pin for counting motor encoder ticks.
(Although, having said that, I’m having trouble counting ticks fast/accurately enough, does anyone have any resources to help me count ticks quickly?)
Try using the PCIntChange library (search the Arduino website for a link). So far it is working ok for me where the interrupt for the encoder is on pin 9 instead of 2 or 3.
hey, this might be a stupid question but what are the logic gates for ?(74HC1G04G) – i didn’t see them used in the datasheet for the l298
They are signal inverters. the 2 pins going in to the L298 have to be opposite polarity to change the direction, if they are the same it effectively turns on the fast-stop mode. Apparently Sparkfun put theses signal inverters there so that one signal going in is the opposite of the other signal going in. This reduces the required pin count needed and slightly simplifies the coding.
I also bought this driver instead of the retail version, and haven’t been able to find screw terminals (distance between the legs) for it where I live. The stackable headers have also been a problem, as the ones I’ve found where I live have very short “legs”.
It works fine with DC motors, but I canĀ“t make it work with a stepper (using stepper library from Arduino). The internet site where I bought the driver said it was OK for steppers and for DC motors, but Sparkfun’s doesn’t say anything about steppers.
Does anyone know if it works with Stepper library ? Otherwise I’ll have to manage the microstepping in my code
It may be a problem with the motor, but
I know that it’s impossible to please everybody but this version of the shield is not Netduino compatible. Netduino only supports PWM on digital pins 5, 6, 9 and 10.
It would be nice to have a future version using pins 5 and 6 for PWM (as other people here would like to have pin 10 free for the Wifly).
Thanks!
A jumper for the V-Logic would also be nice.
These changes would make it Arduino and Netduino compatible.
…what about all the other digital/analog pins. If they were broken out to holes, they’d be easier to use with the proto area…
Heloo all I have a question, maybe some none could help me iv bought this Ardumoto and an other shield, the Joystick Shield http://www.sparkfun.com/products/9895 , this one but not the retail version.
My question is:
Can use them both at once on my Duemilanove??
they both use D3 PWM
TKS
It is absolutely devastating that on the Ardumoto one of the two external interrupt pins on the Arduino is used as a PWM output… on a motor driver shield designed to run TWO motors, of all things.
can this drive two tamiya double gearbox’s ??
Hi all,
Could I use a FPGA to control the Ardumoto Motor Driver Shield or must I have an Arduino board to be able to control mine Ardumoto Motor Driver Shield?
Thanks
You could, but I would recommend going with something that isn’t in shield form. This is geared towards working with the Arduino, it can work with something like a FPGA, but will take a little more work to use.
Do you have any suggestions?
How good is this shield compared with Adafruit Motor/Stepper/Servo Shield for Arduino kit? That one is capable to control up to 4 DC motors, 2 steppers or 2 servos.
http://www.ladyada.net/make/mshield/use.html
If you look at the spec for the L298 you will see it can control ONE stepper motor. http://www.sparkfun.com/datasheets/Robotics/L298_H_Bridge.pdf
The Adafruit can control TWO stepper motors because it has two L293D chips being controlled by by a shift register.
Can you use the Adafruit libraries with this board. I am using Arduino uno. Is it the same pinout as the Adafruit to the Arduino. I need to increase the current to 2 amps for the bipolar stepper
Anyone who wants to use encoders on your motor should realize that the Arduino uses digital pins 2 and 3 for interrupts. Since digital pin 3 is PWM on the shield… that causes a conflict.
Look into using the PinChangeInt library at http://www.arduino.cc/playground/Main/PinChangeInt
Worked great at 12V, but… when it says 18V, that’s the smoke point.
hey, that might be a stupid question but what does JP1,2,3,4 stands for ??
just the generic names for the connector jumpers.
Hi, I have two of theese in my vehicle project.I have made them work in a minute but after some time(2 days) they stopped responding to any direction change.What can be the problem?I am using them with arduino uno and 4 12V/2A motors.I even added some heatsinks on the bridges.
Is this shield powerful enough to drive the Rover 5 platform?
hmmm 2 amps per channel dos that meen that you can drive a singel 4 amp motor whit it?
Sparkfun really should change those controller pins. Shields are built to let end-users connect components in different combinations and have them “just work.” But, if you’re using the Arduino SPI library (and who isn’t?) this shield just fails.
Why aren’t these using pins 4-6 or, even better, user selectable pins with a dip or jumper setup. If that adds too much cost, can you add a via on each of the four traces instead of the 3x4-hole portion of the dev board near pins 7-10? Then, newbies like me can cut the (TINY and unsolderable by newbies) traces and solder wires to whatever configuration we want. This shouldn’t add any cost to the board as it’s removing 12 vias and replacing with 4.
I just saw the new RFM-22 shield. The vias and solder pads used to breakout the SEL, IRQ, etc… would work perfect for each of the pins on the motor shield!
It may be a good idea to the PWM from pin 3 to pin 6 because pin 3 is used for the high-level interrupt. I had to manually reroute this and it was a bit of a pain. I say this because I need to use both pin 2 and 3 as high-level interrupt pins for two optical encoders I am working with. Just a suggestion.
I have one question: I have two actuators (12 volt, 2 amps) that I need to control, but the problem is that the actuators have 3 wires. One for ground, one wire for one direction, and another for reverse. Is is possible to connect the two directional wires to a terminal block on the ardumoto and the ground wire simply to the arduino ground, and then control the direction of the actuator through those two pins?
should i put a heat sink on this?
Would Sparkfun ever sell the SMD version of the motor driver?