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.

[FAQ] DRV10987: Motor startup failure when ISD is enabled

Part Number: DRV10987
Other Parts Discussed in Thread: DRV10983, DRV10975, DRV10983-Q1,

Motor startup failure can be observed in DRV10975, DRV10983, DRV10987 and DRV10983-Q1 when initial speed detection (ISD) is enabled. This problem occurs because the device has comparators on the phases (U, V and W) to check if the motor is still rotating. Essentially, when the rotor passes by the stator, a Back EMF voltage (BEMF) is generated on the phases and the device comparators check for Back-EMF zero crossings to detect if the rotor is moving. If ISD is enabled, the device sees the rotor moving and will try to resynchronize to the rotation and drive the motor.

                               BEMF Comparators

The device can detect some rotor speed (shown in speed cmd buffer register) when the rotor is not actually moving. This occurs when noise is present on the motor phases which can couple into the BEMF comparators. The device tries to resynchronize, fails because there is not enough BEMF signal, and then tries to resynchronize again. This results in the driver being stuck. Providing an external push to manually spin the motor would bring the device out of this state, causing the device to start spinning the motor.

 There are two methods to fix this:

  1. Disable ISD
  2. Find a way to reduce the noise being coupled into the phases

Here's some suggestions reducing the noise being coupled into the phases:

  • Increase the BEMF comparator Hysteresis. 0x92[12] of the Config3 register in DRV10987 is the BEMF comparator hysteresis select. Setting this bit to "1" increases the hysteresis. More hysteresis means the comparators are less likely to switch from random noise. This is highly recommended.
  • If you are using the regulator in buck mode (with an external inductor) obtain a shielded inductor. Experiments show that the inductor on the board can act as an antenna that picks up noise from the environment and physical phase windings of the motor. Shielding can help prevent the pick-up of extrinsic noise.
  • Remove the inductor and put the regulator in Linear mode with an external resistor. A resistor will pick up a lot less extrinsic noise compared to the inductor. This is recommended if VREG is not powering any external components.
  • Optimize the layout so there is a sufficient GND plane to prevent switching noise. Circuits that switch in reference to GND (such as VREG) will cause a lot of ripple on the ground plane. Optimizing layout so switching noise on the ground plane will not couple into the phases can improve performance.