Kindly Morrow
TB6600 Digital Stepper Motor Driver 4A CNC 3D Printer
Run stepper motors up to 4A without frying your microcontroller. The TB6600 driver sits between your control board and your motor, handling the high-current work so your Arduino or Pi never touches it. Optical isolation means motor noise stays on the motor side.
Accepts standard step/direction/enable signals from any GRBL, Marlin, or LinuxCNC controller. Six microstep modes let you dial in torque vs. smoothness tradeoffs without touching firmware. DIP switches handle current limiting and microstepping on the hardware level, so you can bench-test motion before writing a single line of code.
Things to build with this
- Use the 1/32 microstep mode and a GRBL controller to drive a leadscrew axis with sub-millimeter repeatability on a DIY PCB drill press, where motor smoothness directly affects hole registration accuracy
- Wire the optically isolated step/dir inputs directly to a Raspberry Pi GPIO and run a Python script with RPi.GPIO to execute precise timed moves for a film camera shutter rig, without needing an intermediary Arduino
- Configure two drivers via DIP switches to different current limits (one at 1A for a lightweight carriage, one at 4A for a cutting axis) on a dual-motor GRBL router, tuning each axis in hardware before the machine is ever powered by a full controller
Key Features
- TB6600 chip: handles 9-42V input, 0.5-4A output with hardware current limiting
- Six microstep settings: full, 1/2, 1/4, 1/8, 1/16, 1/32 step via onboard DIP switches
- Optical isolation on step/dir/enable lines: motor EMI cannot backfeed into your control board
- DIP-switch current selection: set max phase current to 0.5, 1, 1.5, 2, 2.5, 2.8, or 4A without code
- Step/direction interface: compatible with GRBL, Marlin, LinuxCNC, and Arduino AccelStepper library
- Input logic: 3.3V and 5V compatible signal levels, works with Raspberry Pi GPIO directly
- Screw terminals on all connections: motor wires, power input, and signal lines
Frequently Asked Questions
Will this work with a 3.3V controller like a Raspberry Pi or ESP32 without a level shifter?
Yes. The optocoupler inputs accept 3.3V logic directly. No level shifter needed for Pi GPIO or ESP32 step/dir signals.
How do I set the current limit without a multimeter?
Use the DIP switch current table printed on the driver housing. Each combination maps to a fixed phase current from 0.5A to 4A. Set it to match your motor's rated current per phase, not the total motor current.
Is this a drop-in replacement for the DRV8825 or A4988 drivers on a standard CNC shield?
No. The TB6600 uses screw terminals and a standalone form factor, not the 16-pin header used by A4988 and DRV8825 modules. It is wired point-to-point, not socketed into a shield.
What size stepper motors does this handle?
Most NEMA 17 and NEMA 23 motors fall within the 0.5-4A range. Check your motor's rated current per phase and match it using the DIP switches. The voltage range (9-42V) gives you headroom to run NEMA 23 motors at higher bus voltages for better torque at speed.
Why we stock this
Curated by Kindly Morrow. We test and vet every product before it hits the store. If we wouldn't use it in our own builds, we don't sell it.
Things to build with this
Fun projects to try once you get your hands on it.
Weather station that texts you
Hook up a temperature sensor and have it send you a Telegram message when it drops below freezing. 20 lines of MicroPython.
Garage door opener you control from bed
Wire a relay to your garage door motor and trigger it from your phone via Home Assistant. No cloud, no subscription.
Plant watering system that knows when to water
Soil moisture sensor + a small pump. Runs on a schedule or when the soil gets dry. Your plants stop dying.
Desk presence sensor for smart lighting
mmWave or PIR sensor detects when you sit down and turns on your desk lights. Turns them off when you leave. Zero effort after setup.







