Ardumoto - Motor Driver Shield

**Replacement: **DEV-9815. The new version of this shield allows for either 3.3 or 5v logic, a separate and more robust VIN connection, and moved the PWM input to pin 3. This page is for reference only.

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.


Looking for answers to technical questions?

We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.

  • il / about 14 years ago / 2

    Inspiration - used in the remote-controlled iphone tank (I didn't do this):

  • mechomaniac / about 14 years ago / 2

    I've written some sample code to test out the Ardumoto:

  • NB HighTech / about 14 years ago / 2

    Hi, aren't pull-down resistors required on DIR and PWM lines? If these signals are floating, the motors could spin out of control.

  • Omega / about 13 years ago / 1

    Don't know exactly why, but snap pop all done @ 24v w/ load. Guess I'll try to locate a new soic L298 and see if I can bring it back from the dead.

  • Omega / about 13 years ago / 1

    According to the specs provided in the datasheet for the L298 H bridge, the IC can handle up to 46v of supply voltage. I have my Vin pin isolated from the Arduino so I'm not concerned there. My question is for Sparkfun, will the traces on this PCB support running two 24v 2A geared motors? I guess we'll find out.

  • neuraxon77 / about 13 years ago / 1

    My Arduino kept resetting when the motor drew a lot of current on start until I removed the VIN pin from the header into the Arduino. I then powered the VIN line on the Ardumoto with an external supply. I tried a number of different supplies before going this route. A current limiter would be a welcome addition.

  • LuminDesign / about 14 years ago / 1

    I just got the new Arduino Duemilanove and Ardumoto - Motor Driver Shield..
    I'm a little nervous about the 2 motors I want to hook up to the board.. They are 12v 1.25a motors and what I am nervous about is using a 12v 2a DC power supply on the Duemilanove board as Vin...
    Should I be worried about frying the board or any EMF? I know it says the motor shield is diode protected but what about the 12v 2a power going to Vin on the main board and also powering the 2 motors..
    Please help.. I use to work with PICs and L298 H-bridge in my own circuit and powering the PIC and L298 with separate supply. Then supplying the 2 motors with their own power supply..

  • tsrodger / about 14 years ago / 1

    I think that pull-down resistor on PWM and DIR lines should be present, so i set them. Additional I cut SENSE lines from GND and set 0.5Om resistors to measure motors current.

  • madsci1016 / about 14 years ago / 1

    I second the need for pull down resistors and only using 1 timer.
    My Arduino couldn't pull down the DIR pins all the way which caused random results; the addition of 1 MOhm Resistors fixed that. I also had to rewire the board as I have high-jacked timer 2 for other functions. It seems silly that the PWM for both motors isn't wired to only one timer.

  • mechomaniac / about 14 years ago / 1

    For the next batch of these boards, would it be possible to run the PWM using pins 3 and 11 instead of 10 and 11? This way only a single 8-bit timer is used for the PWM, leaving the 16-bit free timer available for other applications like servo control.
    I had a go at modding the Ardumoto: to achieve this.

    • Farnsworth / about 14 years ago / 1

      I agree, mixing different timers like that is not a good idea. Pull-downs on the PWM would be a good idea. I don't think DIR pull-down are necessary if the PWM is pulled down (off).
      Any chance of making a 3.3V capable board? Either use a motor driver like the TB6612FNG (only 1A per channel) or allow the L298 logic power to be run off the motor power (it can handle up to 7V). There maybe other options, but that is just off the top of my head. Also, I don't know if the logic inverters for motor direction can operate down to 3.3V or not ... I would think so.

  • Jared-70540 / about 14 years ago / 1

    What is the purpose of JP6 (the 4 holes listed as 1,2,3,4)? Maybe I'm dumb, but it looks like they are soldered in the picture, as far as I can tell perhaps they are for controling up to 2 motors per channel or some other feature. The white line tracing around them seems to indicate a 1x4 header be installed. Please explain their purpose/or why we need to get special screw teminals that have a non standard pitch when we could use these instead for smaller motors.

    • Pearce / about 14 years ago / 1

      They're basically there to give the board more flexibility, each pin is connected to a pin on the screw terminal header.

  • Peter8 / about 14 years ago / 1

    is it possible to squeeze in another L298 H-Bridge on this to expand control to 4 DC motors at 2A per channel? and have an option for external power supply for the motors?

Customer Reviews

No reviews yet.