Tool/software:
Hello,
I have set up the DRV8434S to drive a 1.5A stepper motor. I have enabled the TRQ_SCALE bit, and through testing I have found the motor stalls at around 200 TRQ_COUNT. I have set the STALL_TH to 255, and enabled EN_STL, however when the motor stalls, and the TRQ_COUNT goes below 255, the STL, STALL, and nFault pin are not changed.
Here is a register dump taken during a stall, when the TRQ_COUNT dropped below 255:
Stall detected
Register dump:
0x00: 0b0000 0000
0x01: 0b0000 0000
0x02: 0b0000 0000
0x03: 0b1100 0000
0x04: 0b1000 1111
0x05: 0b0000 1000
0x06: 0b0011 0000
0x07: 0b0001 1000
0x08: 0b1111 1111
0x09: 0b0011 0000
0x0A: 0b1111 0000
0x0B: 0b0000 0000
If I'm reading it correctly, the decay mode is smart tune ripple control, the EN_STL bit is 1, and there are no faults, as required to use stall detection.
The TRQ_COUNT is 240, and the STALL_TH is 255, therefore the stall condition should be met, however, the STL and STALL bits aren't set.
I've tried a few different things, including using different microstepping levels, turning TRQ_SCALE off, changing the motor speed and current limit, however nothing has fixed this.
Any advice is appreciated,
Thanks