Ever found controlling stepper motors confusing? There are a huge variety of wires to get connected right: power, motor coils, and control lines. And the tiny screwdriver to adjust the terminals is never where it should be. Qwiic Step simplifies the tangle. Just connect your motor to Qwiic Step using the ergonomic latch terminals, apply 8 – 35V to the barrel jack, and plug in Qwiic Step to your favorite RedBoard with a Qwiic cable.
Qwiic Step comes preprogrammed to accept simple I2C commands, handling all the complex stepper motor calculations and control.This firmware leverages the AccelStepper library to fine tune each step of the motor. The speed, acceleration, position, and micro-step mode can be configured by the user. Additionally, the hold and run voltage of the motor is adjustable. This allows the user to specify maximum hold and run currents.
Qwiic Step supports open-drain bussed limit switches and the addition and configuration of an emergency EStop button. A variety of interrupts are available including when the motor has reached its destination, limit switch activation, and EStop activation. Qwiic Step can also operate a motor headlessly: a certain motor position or speed can be programmed and Qwiic Step will ‘run’ the command automatically at power up. This makes a variety of simple movements achievable without the need for a master controller.
The A4988 stepper motor driver is capable of running motors up to 2A. Power can be supplied through the barrel jack or using the latching 2-pin terminal. Qwiic Step has large internal ground planes to help increase heat dissipation. Additional heat sinking can be added to the bottom of the board.
Most powerful of all, Qwiic Step has a configurable I2C address. This means you can control over 100 stepper motors from a single microcontroller (but you’re going to need a heck of a power supply!).
The [SparkFun Qwiic Step Arduino library](https://github.com/sparkfun/SparkFun_Qwiic_Step_Arduino_Library) makes turning your motor as easy as calling the move() function. Use the library to send I2C commands to the A4988 motor driver chip to update the Qwiic Step register map and initiate movements. You can download the library through the Arduino library manager by searching ‘**SparkFun Qwiic Step**’ or you can get the GitHub repo as a .zip file and install the library from there.
This board is one of our many [Qwiic](https://www.sparkfun.com/qwiic) compatible boards! Simply plug and go. No soldering, no figuring out which is SDA or SCL, and no voltage regulation or translation required!
We do not plan to regularly produce SparkX products so get them while they’re hot!
Experimental Product: SparkX products are rapidly produced to bring you the most cutting edge technology as it becomes available. These products are tested but come with no guarantees. Live technical support is not available for SparkX products. Head on over to our forum for support or to ask a question.
* [Eagle Files](https://cdn.sparkfun.com/assets/8/c/d/5/5/Qwiic-Step.zip)
* [Qwiic Step Register Map](https://cdn.sparkfun.com/assets/5/3/9/0/d/Qwiic_Step_Register_Map.pdf)
* [SparkFun Qwiic Step Arduino Library](https://github.com/sparkfun/SparkFun_Qwiic_Step_Arduino_Library)