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.

MCT8329A: Motor Lock and Loss of Sync faults sometimes won't clear via I2C

Part Number: MCT8329A

Tool/software:

Dear Texas Instruments Support Team,

I am experiencing an issue with the MCT8329A High Speed Sensorless Trapezoidal Control Three-phase BLDC Gate Driver on a custom board based on the evaluation board schematic. The setup details are as follows:

  1. The driver is configured to operate the motor in open loop mode only.
  2. I2C is used to interface with the IC.
  3. The full motor configuration settings are listed at the end.

Issue Description: When the motor is running and I command the motor speed to zero, the controller fault register reports a fault code of 0x80500000. This fault code corresponds to the following faults:

  • Controller fault condition is detected
  • Sync lost fault detected
  • Motor lock fault detected
  • STL fail (although we have STL disabled)
  • App reset fail

Typically, I can clear the fault by writing to the CLR_FLT register. However, there are instances when this method does not work, and the fault remains uncleared. In these instances, the motor stops spinning, but the fault persists, indicating loss of sync and motor lock detected. I have a scope probe on the nFault pin and it is stuck low even when asserting a reset via I2C. The only way I have been able to clear the fault in this condition is by power cycling the board, which is not an acceptable solution.

I would appreciate your assistance in resolving this issue. Please let me know if you require any additional information or if there are any troubleshooting steps I can take to address this problem.

Thank you for your support.

Best regards,

{
  "signature": "oneui-register-data",
  "data": [
    [
      {
        "idx": 0,
        "id": "isd_config",
        "value": "0x7F404D00"
      },
      {
        "idx": 1,
        "id": "motor_startup1",
        "value": "0x651165B2"
      },
      {
        "idx": 2,
        "id": "motor_startup2",
        "value": "0x6798B29D"
      },
      {
        "idx": 3,
        "id": "closed_loop1",
        "value": "0x0B260600"
      },
      {
        "idx": 4,
        "id": "closed_loop2",
        "value": "0x08A1A430"
      },
      {
        "idx": 5,
        "id": "closed_loop3",
        "value": "0x34C92000"
      },
      {
        "idx": 6,
        "id": "closed_loop4",
        "value": "0x001AC953"
      },
      {
        "idx": 7,
        "id": "const_speed",
        "value": "0x30010000"
      },
      {
        "idx": 8,
        "id": "const_pwr",
        "value": "0x06400640"
      },
      {
        "idx": 9,
        "id": "150_deg_two_ph_profile",
        "value": "0x24DB7200"
      },
      {
        "idx": 10,
        "id": "150_deg_three_ph_profile",
        "value": "0x48DB6946"
      },
      {
        "idx": 11,
        "id": "ref_profiles1",
        "value": "0x608040EF"
      },
      {
        "idx": 12,
        "id": "ref_profiles2",
        "value": "0x67F80818"
      },
      {
        "idx": 13,
        "id": "ref_profiles3",
        "value": "0x17E7FFD0"
      },
      {
        "idx": 14,
        "id": "ref_profiles4",
        "value": "0x007D0000"
      },
      {
        "idx": 15,
        "id": "ref_profiles5",
        "value": "0x00000000"
      },
      {
        "idx": 16,
        "id": "ref_profiles6",
        "value": "0x007F8000"
      }
    ],
    [
      {
        "idx": 0,
        "id": "algo_ctrl1",
        "value": "0x00000000"
      },
      {
        "idx": 1,
        "id": "device_ctrl",
        "value": "0x00008000"
      }
    ],
    [
      {
        "idx": 0,
        "id": "ana_trim3",
        "value": "0x48004800"
      },
      {
        "idx": 1,
        "id": "ana_trim4",
        "value": "0x1100000000"
      },
      {
        "idx": 2,
        "id": "ana_trim5",
        "value": "0x00000011"
      },
      {
        "idx": 3,
        "id": "ana_trim6",
        "value": "0x00000000"
      },
      {
        "idx": 4,
        "id": "ana_trim7",
        "value": "0x00CDF962"
      },
      {
        "idx": 5,
        "id": "ana_trim8",
        "value": "0x00000A73"
      },
      {
        "idx": 6,
        "id": "ana_trim9",
        "value": "0x0091D85C"
      },
      {
        "idx": 7,
        "id": "ana_trim10",
        "value": "0x5375003E"
      }
    ],
    [
      {
        "idx": 0,
        "id": "fault_config1",
        "value": "0x71783604"
      },
      {
        "idx": 1,
        "id": "fault_config2",
        "value": "0x7185800A"
      }
    ],
    [
      {
        "idx": 0,
        "id": "gate_driver_fault_status",
        "value": "0x00000000"
      },
      {
        "idx": 1,
        "id": "controller_fault_status",
        "value": "0x00000000"
      }
    ],
    [
      {
        "idx": 0,
        "id": "gd_config1",
        "value": "0x000600FC"
      },
      {
        "idx": 1,
        "id": "gd_config2",
        "value": "0x00000000"
      }
    ],
    [
      {
        "idx": 0,
        "id": "pin_config1",
        "value": "0x2060004C"
      },
      {
        "idx": 1,
        "id": "pin_config2",
        "value": "0x3E0020AA"
      },
      {
        "idx": 2,
        "id": "device_config",
        "value": "0x27100008"
      }
    ],
    [
      {
        "idx": 0,
        "id": "sys_status1",
        "value": "0x00C80000"
      },
      {
        "idx": 1,
        "id": "sys_status2",
        "value": "0x60010000"
      },
      {
        "idx": 2,
        "id": "sys_status3",
        "value": "0x00000000"
      }
    ]
  ]
}

  • Hi Dylan,

    Can you please to provide waveform capture of the motor phase current and the VM voltage when you set the motor speed to zero?

    Could you also try enabling anti-voltage surge (AVS_EN) and see if the issue persists?

    Regards,
    Eric C.