

The SparkFun Stepoko is a compact, open-source stepper motor driver board designed for controlling stepper motors in CNC (Computer Numerical Control) applications. Manufactured by SparkFun Electronics, the Stepoko integrates an Arduino-compatible microcontroller, making it highly versatile and customizable for a wide range of projects. It supports multiple stepper motor configurations and is ideal for applications requiring precise motor control, such as 3D printers, laser cutters, and CNC milling machines.








The SparkFun Stepoko is built to provide reliable and efficient stepper motor control. Below are its key technical details:
| Parameter | Value |
|---|---|
| Microcontroller | ATmega328P (Arduino-compatible) |
| Input Voltage Range | 12V to 30V DC |
| Stepper Motor Driver ICs | DRV8811 (Texas Instruments) |
| Maximum Motor Current | 2.5A per phase |
| Microstepping Modes | Full, 1/2, 1/4, 1/8, 1/16 |
| Communication Interface | USB (via FTDI FT231X) |
| Supported Software | GRBL (preloaded) |
| Dimensions | 4.0" x 3.0" (101.6mm x 76.2mm) |
| Mounting Holes | Standard CNC shield mounting pattern |
The Stepoko board features several connectors and pins for interfacing with stepper motors, power supplies, and external devices. Below is a detailed description of its pin configuration:
| Pin Label | Description |
|---|---|
| X+, X- | Connectors for the X-axis stepper motor |
| Y+, Y- | Connectors for the Y-axis stepper motor |
| Z+, Z- | Connectors for the Z-axis stepper motor |
| Pin Label | Description |
|---|---|
| VIN | Main power input (12V to 30V DC) |
| GND | Ground connection |
| USB | USB interface for programming and control |
| Pin Label | Description |
|---|---|
| X-LIMIT | Input for X-axis limit switch |
| Y-LIMIT | Input for Y-axis limit switch |
| Z-LIMIT | Input for Z-axis limit switch |
| Pin Label | Description |
|---|---|
| A4, A5 | I2C communication pins |
| RX, TX | Serial communication pins |
The SparkFun Stepoko is designed to be user-friendly and easy to integrate into CNC and motion control systems. Follow the steps below to get started:
Below is an example of how to send basic commands to the Stepoko using the Arduino IDE:
// Example: Sending G-code commands to the Stepoko via Serial
void setup() {
Serial.begin(115200); // Initialize serial communication at 115200 baud
delay(1000); // Wait for the Stepoko to initialize
// Send a sample G-code command to move the X-axis
Serial.println("G0 X10"); // Move X-axis to position 10
}
void loop() {
// No additional code needed for this example
}
Issue: Motors are not moving.
Issue: Limit switches are not functioning.
Issue: USB connection is not recognized.
Issue: Motors are skipping steps or stalling.
Can I use the Stepoko with other software besides GRBL?
What types of stepper motors are compatible with the Stepoko?
Is the Stepoko open-source?
By following this documentation, you can effectively use the SparkFun Stepoko for your CNC and motion control projects.