Tic825 not working after motor driver error

Hello! I have a pololu tic825 that I use together with a m5stack fire to drive stepper motor which in turn drives a larger cylinder. Everything was going well and I was making some final adjustments to the code when the motor started stuttering slowly. The tic control center said there was a motor driver error. I have tried troubleshooting it for a while but cant come up with a solution. There is no longer a motor driver error but it behaves very strangely when i try to control a stepper motor from the control center. When i try to set velocity or position it basically just vibrates or spins randomly. I believe i had the current set to 1.6 A for a very short time when i was trying different speeds and settings. Is it possible to determine what has gone wrong and if the tic is broken? Help is appreciated!

Current setup is the most basic possible. Tic is connected to adjustable power supply, steppermotor and to the computer via USB. Stepper motor works with different driver so this is not the problem.

I do not think having the current limit set to 1.6A for a short time would damage the TIC, thought it could have led to the motor driver overheating and thus the motor driver error. What changes did you make to the code right before the issue started? If you energize the motor without moving it (by clicking “Resume” in the control center with a velocity of 0) does the stepper motor resit you trying to turn its shaft by hand?

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

-Claire

Thank you very much for responding! The only changes I was making to the code was the acceleration, speed and current limit. If i energize the motor there is a resistance in it. Another thing i have found is that when I get up passed a certain velocity the stepper will spin smoothly. However on its way there on low velocitites it is very laggy and stuttering and in the control center it can be seen that it is temporarily stopped by a lower acceleration and velocity before moving on. Maybe this could give some clues? Again thanks for helping!

Here is a copy of the settings file:

# Pololu Tic USB Stepper Controller settings file.
# https://www.pololu.com/docs/0J71
product: T825
control_mode: serial
never_sleep: false
disable_safe_start: false
ignore_err_line_high: false
auto_clear_driver_error: true
soft_error_response: decel_to_hold
soft_error_position: 0
serial_baud_rate: 9600
serial_device_number: 14
serial_alt_device_number: 0
serial_enable_alt_device_number: false
serial_14bit_device_number: false
command_timeout: 1000
serial_crc_for_commands: false
serial_crc_for_responses: false
serial_7bit_responses: false
serial_response_delay: 0
vin_calibration: 0
input_averaging_enabled: true
input_hysteresis: 0
input_scaling_degree: linear
input_invert: false
input_min: 0
input_neutral_min: 2015
input_neutral_max: 2080
input_max: 4095
output_min: -200
output_max: 200
encoder_prescaler: 1
encoder_postscaler: 1
encoder_unlimited: false
scl_config: default
sda_config: default
tx_config: default
rx_config: default
rc_config: default
invert_motor_direction: false
max_speed: 20000000
starting_speed: 0
max_accel: 400000
max_decel: 0
step_mode: 1
current_limit: 512
current_limit_during_error: -1
decay_mode: fast
auto_homing: false
auto_homing_forward: false
homing_speed_towards: 1000000
homing_speed_away: 500000

Since the motor holds position and runs smoothly at higher speeds, it seems likely your Tic is still working and the settings just need adjusting. Changing the speed, acceleration and current limit can have a big effect on how well (or if) a motor runs. It sounds like you are saying that if you lower your target speed or maximum acceleration the issue gets worse, but if you increase those the motor starts to run okay. Could you post a link to documentation for your motor? What voltage is your power supply set to? Have you tried using mixed or slow decay modes?

What do you want the motor to do in your actual application?

-Claire

Hi again and thank you for taking your time to help me! Its nice to hear that you don’t think the Tic is broken. I have inserted videos demonstrating the issue more clearly. This is the stepper motor that im using: 3709V-03 | Hybrid Stepper Motor | Lin Engineering

My power supply is set to 12 V. I noticed that the output current on the power supply shows 0.065 A before running the motor and when running the motor it increases to 0.071 A which is very low right? Both the limit on the power supply and the Tic should allow it put out more. I have tried different decay modes but the issue is the same still.

What is also worth noting in the videos is that the it can be seen that the target velocity temporarily stops at 1100000 before increasing.

The final application consists of a rotating barrel that is driven by a stepper motor. This will be used to test durability of some products by letting them bounce around inside the barrel.

Here are the settings used in the video.

# Pololu Tic USB Stepper Controller settings file.
# https://www.pololu.com/docs/0J71
product: T825
control_mode: serial
never_sleep: false
disable_safe_start: false
ignore_err_line_high: false
auto_clear_driver_error: true
soft_error_response: decel_to_hold
soft_error_position: 0
serial_baud_rate: 9600
serial_device_number: 14
serial_alt_device_number: 0
serial_enable_alt_device_number: false
serial_14bit_device_number: false
command_timeout: 1000
serial_crc_for_commands: false
serial_crc_for_responses: false
serial_7bit_responses: false
serial_response_delay: 0
vin_calibration: 0
input_averaging_enabled: true
input_hysteresis: 0
input_scaling_degree: linear
input_invert: false
input_min: 0
input_neutral_min: 2015
input_neutral_max: 2080
input_max: 4095
output_min: -200
output_max: 200
encoder_prescaler: 1
encoder_postscaler: 1
encoder_unlimited: false
scl_config: default
sda_config: default
tx_config: default
rx_config: default
rc_config: default
invert_motor_direction: false
max_speed: 20000000
starting_speed: 0
max_accel: 400000
max_decel: 0
step_mode: 1
current_limit: 512
current_limit_during_error: -1
decay_mode: slow
auto_homing: false
auto_homing_forward: false
homing_speed_towards: 1000000
homing_speed_away: 500000


When using a stepper motor with a current limiting driver and a voltage higher than the motor’s rated voltage, the driver acts like a switching regulator. So it is not surprising that your input current is much lower than the current limit, though 0.07A does seem a little too low. If you energize the motor and have it hold position (don’t step), does it draw more current?

If you set the speed to 1100000 and leave it for a while, does the motor eventually start turning normally, or does it stay stuck? Have you tried lowering your acceleration (maybe to 4000)? I missed last time that the Tic is set to full step mode. Could you try using 1/4 microstepping with fast decay mode?

-Claire

Thank you for answering. I am not in office at the moment so I won’t be able to try the new settings directly until Tuesday. However, I played around with different settings for a while today and setting the step size to 1/4 didn’t change anything for the better. I’m not sure exactly if the motor would start to spin smoothly if I keep it at 1100000 but generally keeping it at a low speed would have it keep vibrating and stuttering. I also changed the acceleration and that didn’t change anything either. Another interesting thing that also happened was that I got a safe start violation error basically out of nowhere (pretty much the same way the original issue started the first time) and only way I was able to make it go away was by resetting to default settings. Original issue still remains though. I also tried reinstalling the program and updating firmware but nothing has changed.

Thanks again for taking your time

Best regards Ludvig