Pololu Robotics & Electronics
My account Comments or questions? About Pololu Contact Ordering information Distributors

Pololu Forum

Position using 36v4 never stpes more than a hunder or so steps

I am using the 36v4 motor controller (v 1.08 firmware) and am using the ticcmd (ex: ticcmd --resume --position 150) command to move a stepper motor. However I am unable to issue a command that moves the motor more than a hundred or so steps. If I try 200 or 1000 or 10000 it seems to always move the same number of steps. I am able to move in small increments so 1, 10, 50 or 100 all seems to turn the correct amount. I am unsure what I could be doing wrong as the command structure seems so simple. Any help is appreciated. Thanks.


Does the red LED on the Tic come on when the motor stops (indicating an error)? From you description, my first thought is that you might be getting a command timeout error. If you have not changed the default settings, the command timeout is enabled and set to 1 second, so if the Tic does not receive select commands within a second, it triggers this error and stops the motor. You can read more about this in the “Condition: Command timeout” heading of the “Error handling” section of the Tic user’s guide.

To stop this from happening, you can send a relevant command (such as “Reset command timeout”) frequently enough to stop the timeout from triggering (which is what the Tic Control Center does). Alternatively, you can adjust the timeout duration or disable the command timeout feature in the “Input and motor settings” tab of the Tic Control Center.

If that does not fix your problem, could you post a copy of your Tic settings file? You can save the settings file from the “File” drop-down menu of the Tic Control Center while the controller is connected.


Thank you for the reply. Yes that was the problem, the timeout coincided with the amount of steps that was allowed. Quick follow up question. Is it better then to fully disable the command timeout all the time or to just disable it when I am making longer moves?

It is probably not practical to keep changing the command timeout based on the length of your movement. However, if you want to use the command timeout feature and know you are going to be making a long movement, you could follow up your position command with “Reset command timeout” commands frequently enough to prevent the timeout from being reached.

Alternatively, you could configure the timeout to a much larger value (it can be set to up to 60000ms).

However, if you do not need the command timeout feature, you can just disable it.

Ultimately, it will be up to you to decide which approach would be the best fit for your application.