Description: The SparkFun AutoDriver board is based on the STMicro L6470 dSPIN stepper motor driver. This powerful chip allows you to control a stepper motor with a voltage from 8 to 45V at 3Arms over an SPI connection. The AutoDriver board has been designed to be easily integrated into a project, even with multiple boards. Just connect your motors and your SPI-capable microcontroller and get steppin'!
STMicro’s L6470 is a 3A, 8–45V bipolar stepper motor driver. It has built-in overcurrent detection, undervoltage detection, overtemperature detection, stall detection, a 5-bit ADC, and a switch input that can be used for either user jog control or as a hard stop function. As if that weren’t enough, it also features microstepping support (up to 128 microsteps per full step) and PWM drive voltage limiting. Please keep in mind that the L6470 requires a great deal more configuration and adds software complexity to your system.
Unlike most stepper motor drivers, the dSPIN is controlled over an SPI link. It has an onboard 16MHz oscillator, which allows it to autonomously execute movement commands. That means no more counting steps in your code! It also supports customized acceleration and deceleration profiles to prevent jerky starts and stops. Onboard registers track current speed and location.
This new version of the SparkFun AutoDriver’s hardware is slightly different from the previous revision. It has been modified to make it easier to daisy-chain multiple boards together with simple 10-conductor ribbon cables for data and 6-conductor ribbon cables for control. The library has been updated as well, with more information found in the Hookup Guide below.
The logic supply voltage supports both 3.3V and 5V I/O levels.
Based on 5 ratings:
1 of 2 found this helpful:
I purchased this as a cheaper alternative to the Gecko Driver. While i do understand it’s a $40 item, when i try running a stepper motor with it, once the voltage is above 22V, it stops working. Note I am not exceeding the rated 3A. I have tested the same motor setup with a different (industrial grade) driver and it works up to the motor’s rated 48V driver input.
0 of 2 found this helpful:
The provided library zip file won’t install properly. All I get is errors stating that the intended folders do not contain any valid library files. I’ve messed with this thing for days and can not get any of the example sketches to work. None of the sketches provided by others work either. I bought this for a project I needed to finish quickly, and now that project is way behind due to trying to get this thing to work.
Sorry you’re having problems with the library. If you’re going to the above Github link, and downloading that ZIP file, the Arduino IDE won’t be able to add it as a ZIP library. You need to follow the AutoDriver Library link, and download that one. I just tested it on two different machines running two different versions of the IDE, and both worked fine. If you’re still having issues getting the library to load, I would recommend contacting our tech support team. They should be able to help you get up and running.
The L6470 is a very nice driver, allowing the microcontroller to send it motion commands instead of step pulses. The board seems to break out everything necessary to get up and running. I haven’t stacked boards yet, so I can’t attest to how well that works. I also didn’t bother with the Arduino library.
I purchased the AutoDriver several months ago and just now got around to working with them. I also ran into the behavior described by member 891015. After some experimenting with the example programs, I discovered higher voltage power supplies can be used by setting up KVAL and OverCurrentThreshold parameters. These need to be tailored to the voltage and resistance specs of the motors. For example, given a 42v supply and 3V, 1.8 ohm motor, set OCThreshold to 3000mA or higher and all KVAL values at or below 19 or 20. If OCThreshold is set higher than 3000mA, I imagine the driver chip will get hot and possibly shut down after a time. I’m still puzzling that out.
I was prompted to write this review because I feel the poor ratings are not deserved. This product works exactly as it should – but it’s not a toy for beginners!
You need to have a lot of things just so to get this chip (ST L6470) to work correctly, but once you have that right, it can boost the quality of your project tremendously – it is a hugely capable small stepper driver!
Some things to look out for:
The 3-5V input MUST be powered unless you modify the board jumper to use the 3V internal.
The SPI interface will not work unless BOTH the 8-45V power input is powered AND 3-5V input is powered.
The RESET# pin must be connected, otherwise the chip will hold itself in reset
If the chip is communicating but the motor does not move, make sure the coil wires are not mixed up. The two coils are electrically independent, so mixing them up will make it seem like nothing works.
If the motor is vibrating but not moving, reverse one of the coil’s wires.
There are MANY settings that control motor power (KVAL) and overcurrent limits that can affect how your motor will perform. If you have never used this chip before, you will probably want to write a function that checks the STATUS register a few times a second and decodes and prints out those statuses. This will help keep you informed as you go about tuning the configuration parameters for your application.
Oh and don’t do like I did and forget to buy connectors and screw terminals to make things more convenient!