This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DRV8889-Q1EVM: Stall detection not reporting

Part Number: DRV8889-Q1EVM

Hi,

Good day. I hope you are doing well.

Our customer is using the DRV8889-Q1EVM and they have this inquiry:

""I'm using the DRV8889-Q1EVM to drive a stepper. I've disconnected the on board MCU and I'm using an Arduino UNO to control the driver. I've enabled stall detection and stall reporting to nFAULT pin according to instructions and set a stall threshold manually. When I drive the stepper via STEP and DIR pins I'm also monitoring the TRQ_COUNT register. My problem is that when I manually stall the motor I see the TRQ_COUNT go below the stall threshold as it should but the driver doesn't report the stall. It won't report it to the status bits related to motor stall or pull down the nFAULT pin. It has reported the stall correctly a couple of times during testing but I haven't found any logic to when it does that. It seems to be calculating the TRQ_COUNT correctly all the time but fails to compare that to the stall threshold (or compares correctly but fails to report). Is there anything that I can do to get it to report stalls correctly?""

I hope you could help us with this matter. Looking forward to your inputs. Thank you.


Regards,

Cedrick

  • Cedrick,

    Thank you for your post.

    Are you changing the frequency of the given STEP pulses during the stall?  For example, is the motor accelerating/decelerating during your testing? 

    Please check the stability of the STEP input.  If it is not stable, STALL detection will be disabled.

    Have you tried with the existing EVM and MSP430 and GUI?  The firmware on the MSP430 continuously reads the TRQ_COUNT register and converts it to an analog signal.  There is a test point on the EVM that you can connect a scope to and see if it could also be an issue with the TRQ_COUNT being unstable do to vibration in the motor.  This might be another explanation is TRQ_COUNT is jumping around the threshold.

    Regards,

    Ryan

  • Hi Ryan,

    Thank you for your help. I've got a response from our customer. Here's what they have told us:

    I'm not changing the STEP pulse frequency, it's constant. I haven't tried the MSP430 since I've desoldered the resistors between MSP430 and J3 header. But like I said I'm continually monitoring the TRQ_COUNT via SPI and it works as it should (near 255 counts without load and near 0 when stalled, usually under 5 counts). The TRQ_COUNT in not jumping over and under the stall threshold, it goes straight under the threshold and stays there as long as I keep the motor stalled. But the stall is not reported. I also always read the registers after I've written to them to make sure they were modified correctly and stall detection and reporting to nFAULT are enabled.

    Regards,

    Cedrick

  • Cedrick,

    Would you share the read back register value?

    BTW, if the CTRL5 register sets the motor driver in learn mode, it won't report the stall condition.

    Regards,

    Wang Li