T500 over current with arduino uno

Is there a way to detect over current when T500 is controlled by arduino uno I2C?
Where can I found a sample code?

The over-current condition of the MP6500 driver used on the Tic T500 is part of the motor driver error; the MP6500 driver’s motor driver error is triggered by over-current, over-temperature, and over-voltage conditions.

Each bit of the Tic’s “Error status” variable indicates which errors are currently stopping the motor; bit 1 is the motor driver error. You can find more information about this variable in the “Variable reference” section of the Tic user’s guide. If you are using our Tic Stepper Motor Controller library for Arduino, you can use getErrorStatus() to read this variable. None of the examples in the library use this function, but you can find some sample code in the comments of Tic.h, on line 768.

Are you actually experiencing over-current issues? If so, it is probably better to fix the root cause of the problem, which might be the current limit setting or the motor connections.


Hello Brandon,
Thank you for the reply.
I don’t experience over current issues. I wanted to make a protection in case of the motor is mechanically stalled. I tried to simulate this situation by holding the motor but I got no errors. Not in the Arduino and not in the TIC control center. Does a stalled motor supposed to cause an over current with the T500?

Unlike brushed DC motors, the current draw of a stepper motor does not increase when it is mechanically stalled, so it will not work like you described.

It is difficult to detect a mechanically stalled stepper motor, and the Tic does not have any built-in methods for doing so. One reliable way of doing this is to add some kind of external feedback that can sense the actual position of the shaft and compare that to the position the Tic thinks it should be at.


1 Like