Take a full step with TB67S128

I like the way the config pins like IF_SEL are pulled to a default state. So if mode defaults to 000, and ifsel defaults to step and direction, I think i should be able to raise enab, raise stby, set dir to hi or lo, raise step, and it should take a full step and the motor should have torque on it. I see 1.51v on vref, and times the multiplier in the pololu appnote gives 1.8 amps. It should step. Now I did get some jumps at first. If these things have a weak spot, what is it? Thanks.


I am not entirely sure I understand what you are asking.

As you described, the board is in full step mode by default since the MODE pins are pulled low, and you will need to enable the output by driving the ENABLE and nSTANDBY pins high (along with providing your logic level voltage to the IOREF pin). After that, the driver will step the motor when it receives a high pulse on the CLK (STEP) pin with the direction controlled by the DIR pin. If your driver is not behaving that way, could you post some pictures of your setup that show all of your connections and describe what it’s doing?

By the way, it sounds like there is a mistake in your VREF calculations for setting the current limit. For the TB67S128FTG Stepper Motor Driver Carrier, the equation when GAIN_SEL is low (the default) is:

\text{Current Limit} = \text{VREF}×1.56

So, to set the current limit to 1.8A, VREF would be 1.15V:

\text{VREF} = \frac{1.8}{1.56}=1.15\text{ V}


vref is 1.11v I think the step by step description is a good checklist. At some point it should take a step.

If you are having problems getting it to step, please post the Arduino program you are running and describe what you expect it to do, as well as what is happening instead. Also, could you post more information about your power supply and stepper motor (preferably a link to a datasheet or specifications page)?


Steps to put torque on coil using jumpers, using all defaults: enab hi (coils on here), stby hi, step hi (takes a step here). This proves driver bd works. Agree? Anyone confirm?

JAPANSERVOKH42JM218867msdata.pdf (97.3 KB)

ATservoTB67S128UNO - Copy.c (31.1 KB)

It still is not clear to me whether the behavior you are describing is what you are actually seeing or if it is what you expected but are not getting. If you are seeing that behavior, then it sounds like it is working fine. (Is there something in particular you are concerned about?) Otherwise, could you describe what behavior you observe instead and post some close-up pictures of both sides of the board so I can check the connections and soldering?

Also, it looks like the file you attached is a C file, and not a .ino that I would expect from the Arduino IDE. Are you using a different programming environment? That program looks very long and unnecessarily complicated; so if you are having problems with it, I also suggest simplifying it down to the bare minimum that demonstrates the problem.


I think I found the prob Brandon. There was a loose nut behind the keyboard. You guys have an ino to step a full step with a kbhit?

I am not sure what you mean by kbhit; could you provide more info and describe what you are trying to do?