Creative Commons images are CC BY 2.0

EasyDriver - Stepper Motor Driver
project on project

Automated Pet Feeder
by Marcus Kern

Description: The EasyDriver is a simple to use stepper motor driver, compatible with anything that can output a digital 0 to 5V pulse (or 0 to 3.3V pulse if you solder SJ2 closed on the EasyDriver). The EasyDriver requires a 6V to 30V supply to power the motor and can power any voltage of stepper motor. The EasyDriver has an on board voltage regulator for the digital interface that can be set to 5V or 3.3V. Connect a 4-wire stepper motor and a microcontroller and you’ve got precision motor control! EasyDriver drives bi-polar motors, and motors wired as bi-polar. I.e. 4,6, or 8 wire stepper motors.

This EasyDriver V4.5 has been co-designed with Brian Schmalz. It provides much more flexibility and control over your stepper motor, when compared to older versions. The microstep select (MS1 and MS2) pins of the A3967 are broken out allowing adjustments to the microstepping resolution. The sleep and enable pins are also broken out for further control.

Note: Do not connect or disconnect a motor while the driver is energized. This will cause permanent damage to the A3967 IC.

Note: This product is a collaboration with Brian Schmalz. A portion of each sales goes back to them for product support and continued development.


  • A3967 Microstepping Driver
  • MS1 and MS2 pins broken out to change microstepping resolution to full, half, quarter and eighth steps (defaults to eighth)
  • Compatible with 4, 6, and 8 wire stepper motors of any voltage
  • Adjustable current control from 150mA/phase to 700mA/phase
  • Power supply range from 6V to 30V. The higher the voltage, the higher the torque at high speeds


Recommended Products

Customer Comments

  • Sin dudas me lo compro

  • Can the easy driver hold/lock a stepper motor? Energize both coils at the same time.

  • Hello guys, Quick Q, any idea on the why im getting a error using the example 7 in the Serial example found in the error is referring to ::FULL2WIRE telling me that

    sketch_feb10b:21: error: ‘FULL2WIRE’ is not a member of ‘AccelStepper’ AccelStepper stepper(AccelStepper::FULL2WIRE, 8, 9); ^ exit status 1 ‘FULL2WIRE’ is not a member of ‘AccelStepper’

  • Hi sparkfun! Do you have any plan to design more powerful stepper motor drivers based on other IC. Something like here

  • Can I use the easy driver to run a bipolar NEMA 11 captive stepper motor? Its current per phase is shown as 1 amp. Easy driver spec says that the adjustable current control is from 150mA/phase to 700mA/phase. I am not running this motor at fast speed. The motor is supposed to support axial load of about 4 lbs.

    Thank you!

  • How is v4.5 different from v4.4?

  • I am currently building a 3-axis cnc mill with sparkfun stepper motors, and I was wondering if I could drive a dual motor x-axis with just one easy driver. I would connect the two motors in parallel and run the wires to the same locations on the board. I figured if I used double the rated current to power the motors this would work. Am I correct, or should I buy another easy driver?

  • How can I get the coordinates of the holes to mount the driver? I can’t find them

  • Hey! I have a really basic and maybe funny question! But my stepper for an extruder print head requires 0.8A as it is specified on the motor. And the easy board gives max. 0.75; this means that I can’t work with this board? -ASYA

    • Does your extrude require 0.8A per phase, or 0.8A in total? The EasyDriver supports up to 0.7A per phase, or 1.4A peak for the entire two-phase motor.

      Whether you can get away with this depends entirely on how much load the motor is driving. It is very common to apply less than the rated current to stepper motors, as the needed current really depends on how much torque you require.

      There is also the Big Easy Driver, which isn’t a whole lot more expensive. Looks like a good board for your application.

  • I have a Nema-8 stepper from pololu that runs at 3.9V (600mA per coil). Will this board be able to drive the stepper?

    • It should, you just need a 3.9V power supply. The board just passes the voltage it is given through a current chopper to regulate amperage.

      • The supply voltage doesn’t matter. Because the coil current is regulated by the EasyDriver, independently of the voltage. The voltage drop over the motor depends only on the current and coil resistance, and so too would the power dissipated. Brian explains something similar on the EasyDriver website.

        See the first and second entry in the FAQ here:

        So just go ahead and use a 9V or 12V supply.

  • Work well and easy to use, but is not very powerful. For people who need more amps, I recommend using the A4988 ship which is used in almost every 3D printers.

Customer Reviews

4.4 out of 5

Based on 25 ratings:

Currently viewing all customer reviews.

1 of 1 found this helpful:

Works, but chip hot

Works great, but chip get hot at .5 amp. Probably not a problem, but I bought the larger, slightly more expensive, version (2 amp amp) and it runs with no noticeable chip heat. I might add that I did not use any of the associated code for either the large or small version. I see no obvious need to change the micro-step options on the fly (except maybe for testing), so I hard wired those and just used the direction and step controls. I drive direction off a port output and step from a counter that automatically toggles an output pin on reaching a selected value. (Note this is outside the std Audrino I/O, but far easier in the long run. I suggest everyone should at least glance at the Atmel manual for the Arduino chip an try using some registers directly.)

Hi, These will get warm, even hot in some cases. The chip is syncing a lot of power and that shows through heat. If you are running this on the higher end of the spec, it is suggested that you manage the heat with a heat sink on the chip.

1 of 1 found this helpful:

Great - just be careful with EMI!

It works well. Easy to use with literally any microcontroller you can imagine. I use mine with a 3.3V Arduino Pro Mini.

Just beware of EMI. The A/B pads and traces leading to them, along with those pins on the chip, and your cabling leading to the stepper motor, will throw off a ton of EMI. This is not a fault of the board, it’s just what happens when you switch a stepper motor. It can mess with nearby microcontrollers and ICs. So be careful how you lay out your project - put some distance between the EasyDriver + stepper motor and other components if you can. If you can’t keep them isolated by distance, shield sensitive components with conductive, grounded material.

I wrote back and forth to Brian when dealing with the EMI issues in my project, he is very knowledgeable and courteous. Excellent support.

The chip can get hot to the touch. I am considering adding a heat sink to the top of the chip.

1 of 1 found this helpful:

Motor control made super easy!

I got 18 of these to drive a bunch of motors (ROB-09238) at once. Each one worked flawlessly and handled the power without doing any adjustment. Programming was a snap using the AccelStepper library. Used a Mega 2560 to control the step and direction logic.

There was a catastrophe: three of my boards got clipped by an MDF panel and the capacitors were ripped right out. I replaced the caps with typical polar caps (the tallish cans) and the boards are running just fine again.

Lives up to its name - easy to build and operate

Power and control lines are easy to use. I don’t have to know anything about stepper motors to use them.

Only minor change is that I would move the MS1 and MS2 motor speed controls together on the board for ease of wiring.

Quick and easy

Found a tutorial for beaglebone black and had it working same day. With code. Well documented and straight forward

Makes the job easy

I needed the 1/8 microstepping for close control of a tuning capacitor in a small magnetic loop antenna - the Easy Driver made the job very easy.

I do like this Driver.

Worked as advertised !! Lots of options so it nice to have around so when I need to throw a project together is a good choice. I did blow one up , but it so cheap It was a no brainer to replace than to fix it.


It does what it says on the tin. However that central IC does get very hot. I haven’t had it shutdown on me (yet) but I would recommend putting it in sleep mode whenever you can.


Excellent tool. Got a good grade on my project.

Excellent, Simple, but need adjusted arduino library

This is an excellent way to control your stepper motor. But…. The arduino stepper libraries are excellent for controlling connection to 4 wire driver. Some im sure have the delays sorted out so they dont effect the timing on the rest of your code. The easy stepper driver would be so much more powerful if the arduino library was adjusted (for simple folk like me :), especially if acceleration and deceleration timing was also included. I find it difficult to write code without using delay in my project. Maybe im just not so smart :)


There’s a great library that I’ve used for these called the AccelStepper library. It incorporates acceleration and deceleration quite easily.

Easy to use

This is the so easy to use. With the example code from the website, it is very streight forward on how to use this driver. It does get very warm. But if you use the sleep mode when the motor does not need to be on, the driver board has time too cool down.

These chips are pulling a lot of power, and they can get quite hot. Sleep mode helps. Also, I always throw a couple of small heatsinks on the chip.

don't know yet

It would be nice if you would offer for sale the required terminal strips needed for the boards purchased.


Makes life easy

Hooking this up to a microcontroller is simple and changing to 3.3 instead of 5 for logic is trivial. While the chip can go faster, my stepper motor can not so making sure it does not skip required trial and error until I found the minimum delay which the combination of controller and motor could achieve. If you are in a hurry to just make things work (like I was) this really is a great simple driver. Make sure to take time to adjust the current limit for your motor using the test point before plugging the motor in - there is a voltage to current formula in the manual. For low cost this is very useful.

Worked great!

Worked exactly like it should have

Worked great til I fried it

After making my own stepper driver, these are worth all the money to just have it done for you. Works fantastic, easy to integrate with, drove mine right from a raspberry pi. Puts out a lot of heat, if you’re using a motor to its full capability, consider a fan when mounting these somewhere. The pot is super small, I was turning it with a metal screw driver and it slipped, I touched the capacitors beneath it, it sparked and stopped working. Bummer. I’ll totally be ordering a replacement though! It sparked and its fun, Sparkfun.

I use it to drive all my acrylic skeleton clock. It’s reliable and up 24/7…

works great

works great when you use it correctly…. Easy to blow when you don’t use it correctly haha

Great driver

Works as advertised, easy to use, just follow their guides on the product webpage. Make sure to heed their note asking you to not connect/disconnect the motor while the driver is on; this will kill your EasyDriver so don’t do it! I loosely wired my motor to the board and it came off during testing and my driver died; fortunately I purchased two boards anticipating I would burn the first one so I made sure to solder proper terminals to the driver the second time around and it’s flawless now.

Great, accessible option

I’m new to using stepper drivers and was building a circuit of my own. It’s bigger than most other drivers, but that’s great when I’m trying to learn how to use a driver and I don’t need it directly interfacing with anything else.

I was frustrated before, and after I ordered these I could happily move on to the next steps in my project. Clear documentation and labeling made using these a breeze.

Seems to work well but chip gets very hot

The board works well and easy to program for. I noticed doing small steps or just a few full rotations it’s fine. After running full rotations and near high speed the chip gets extremely hot and the motor starts acting jerky. Probably a heat sink will solve that. Does anyone experience this and recommend a particular heatsink?

Great board

I love this board. It’s much easier than I thought it would be. My only change would be to move all the pins to one side to make it easier to wire.

Handy Little Driver

Honestly, it did not work for the project I intended. Lack of having the flexibility to choose the + or - common for my signals was a problem. However I am not disappointed, I will be able to design future projects around that drawback. Overall, worth the price.

0 of 3 found this helpful:

Not as great as I had hoped

Keeping in mind that I an a novice using arduino and associated products, I am really disappointed with the quality of the coding that I have found so far concerning this board. It seems like everyone is “ga-ga” over it, so the purchase was a natural decision. Unfortunately I feel that I’m back in the Commodore 64 days of loading tons of code, only to find that they don’t work. So I expend hours ensuring that I haven’t missed, or added something. And generally I haven’t. So then I wind up trying to figure out what was inadvertently added, or omitted by the author. Next I start to review other codes and inserting portions of what I think worked to the new code, only to find out that they aren’t compatible either. This board is no exception. I’m sure it is probably as good a product as others have reported, but for me, so far, I am not a great fan. By the way, I also have the Seeed Motor Shield and the Adafruit Motor Shield V2.0 and I have exactly the same feelings for them.

You are describing one of the main hurdles of the open source hardware community. Open source code can be hit or miss. You have to learn want resources tend to be good and what resources can be more questionable. Bildr is a great resource that generally has good documentation and examples. –

Related Tutorials

Easy Driver Hook-up Guide

May 5, 2015

Get started using the SparkFun Easy Driver for those project that need a little motion.