Hello everyone!
In one project I am using Pololu’s High Power Stepper Motor Driver 36v4 for controlling stepper drivers. I have a working code for running the motors but, due to the mechanical configuration of my system, sometimes the motors loose steps.
These drivers include STALL detection, so I supposed I could implement a simple algorithm that could make the motors go to home position once detected STALL, an re-do the failed movement.
I have used the following code from the Arduino library:
bool check_stall(HighPowerStepperDriver drv){
return (drv.readStatus() & (1 << (uint8_t)HPSDStatusBit::STD));
}
This code should return a True when stall has been detected. However, even applying a big charge to the motor and cause it clearly loosing steps, no stall is detected. When printing the status register of the driver, no stall flag has been raised.
I configure the driver with the resetSettings(); function, which makes the drivers go to default settings.
Has anybody been able to use the STALL detection with these drivers? Have I misunderstood when the STALL flag is set?
Thank you all!