Wiring and running TB6600 stepper driver with Arduino

Here is quick post about TB6600 stepper driver which is based on TB6600HG chip. Here I use one without black plastic casing (See  more photos in my other post). It has model marking on the back that says “BL-TB6600-v1.2″. Stepper motor used in this demo is 23HS22-2804S (2.8A, NEMA23). Drive looks like this.

TB6600 v1.2 green PCB

TB6600 v1.2 green PCB

Wiring it up

Terminals on drive are clearly marked and there is nothing much you can go wrong with. Power supply should be between 8V to 42V (by chip’s datasheet). Low voltage cut-off was actually around 6.5V when I tested it. You have to find paired wires of your stepper motor and connect them to drive’s  A+ A- and B+ B- terminals. From Arduino I had to connect only 3 wires.

  • Arduino +5V to +5V on drive
  • Arduino Digital pin 9 to CW (direction) on drive
  • Arduino Digital pin 8 to CLK (pulse, step) on drive

I left enable pin disconnected for testing.

TB6600 (4.5A drive) input / output diagram

TB6600 (4.5A drive) input / output diagram


Programming Arduino

I used AccelStepper library to make motor run smoothly for testing. Program I used was Bounce which  is one of the example codes from that library.

#include <AccelStepper.h>

// Define a stepper motor 1 for arduino 
// direction Digital 9 (CW), pulses Digital 8 (CLK)
AccelStepper stepper(1, 8, 9);
void setup()
  // Change these to suit your stepper if you want

void loop()
    // If at the end of travel go to the other end
    if (stepper.distanceToGo() == 0){
      stepper.moveTo( -stepper.currentPosition() );


Note about dip switches on board. When I hooked everything up for the first time- I didn’t get it working and I was bit confused. That happened because I had all dip switches in off state. I thought that if everything is off- there is no microstepping applied. But with TB6600 it means drive is disabled. Here is a screenshot from datasheet for quick reference.

Screenshot from TB6600HG datasheet about microstepping and standby settings

Screenshot from TB6600HG datasheet about microstepping and standby settings


And here is video of this combo running.

Content not available.
Please allow cookies by clicking Accept on the banner


  1. By Jay Yemul


  2. By Amirul


    • By Janar


Leave a Reply

Your email address will not be published. Required fields are marked *

81 + = 85

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.