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: About gate driver faults

Part Number: MCT8329A

Dear person in charge,

We are suffering from the following gate driver fault on our original board using MCT8329A. Could you please tell me in detail under what conditions this error occurs?
Except for the following driver fault, no other faults are Hi in the register, and only the 31st bit fault is Hi.

Best Regards,
Tomofumi Okamoto

  • Hi Tomofumi,

    The DRIVER_FAULT is used to indicate that the MCT8329 has a driver related fault, it does not indicate which fault has occurred. The DRIVER_FAULT bit is set high when any of the other bits in the GATE_DRIVER_FAULT_STATUS register are set high. The DRIVER_FAULT should not be set high unless another bit in the GATE_DRIVER_FAULT_STATUS has been set high due to a gate driver related fault.

    Can you please provide a dump of all the register settings when the fault occurs?

    Also when does the DRIVER_FAULT bit get set high?

    Regards,

    Joshua

  • Hi Joshua,

    This is a dump of all the register settings when the fault occurs.

    There is no detailed gate driver fault. 

    {
      "signature": "oneui-register-data",
      "data": [
        [
          {
            "idx": 0,
            "id": "isd_config",
            "value": "0x6E404502"
          },
          {
            "idx": 1,
            "id": "motor_startup1",
            "value": "0x5ABB6E77"
          },
          {
            "idx": 2,
            "id": "motor_startup2",
            "value": "0x77516343"
          },
          {
            "idx": 3,
            "id": "closed_loop1",
            "value": "0x071E17FC"
          },
          {
            "idx": 4,
            "id": "closed_loop2",
            "value": "0x03AA00BA"
          },
          {
            "idx": 5,
            "id": "closed_loop3",
            "value": "0x34C92001"
          },
          {
            "idx": 6,
            "id": "closed_loop4",
            "value": "0x601ADF44"
          },
          {
            "idx": 7,
            "id": "const_speed",
            "value": "0x00100101"
          },
          {
            "idx": 8,
            "id": "const_pwr",
            "value": "0x11200280"
          },
          {
            "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": "0x0E0CCE4F"
          },
          {
            "idx": 12,
            "id": "ref_profiles2",
            "value": "0x78C99A5B"
          },
          {
            "idx": 13,
            "id": "ref_profiles3",
            "value": "0x160E65F8"
          },
          {
            "idx": 14,
            "id": "ref_profiles4",
            "value": "0x00001326"
          },
          {
            "idx": 15,
            "id": "ref_profiles5",
            "value": "0x5CA67300"
          },
          {
            "idx": 16,
            "id": "ref_profiles6",
            "value": "0x007F8000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "algo_ctrl1",
            "value": "0x40000000"
          },
          {
            "idx": 1,
            "id": "device_ctrl",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "ana_trim3",
            "value": "0x48004800"
          },
          {
            "idx": 1,
            "id": "ana_trim4",
            "value": "0x2F00000000"
          },
          {
            "idx": 2,
            "id": "ana_trim5",
            "value": "0x0000002F"
          },
          {
            "idx": 3,
            "id": "ana_trim6",
            "value": "0x00000000"
          },
          {
            "idx": 4,
            "id": "ana_trim7",
            "value": "0x00E219DE"
          },
          {
            "idx": 5,
            "id": "ana_trim8",
            "value": "0x00005037"
          },
          {
            "idx": 6,
            "id": "ana_trim9",
            "value": "0x009DD81C"
          },
          {
            "idx": 7,
            "id": "ana_trim10",
            "value": "0x5378013C"
          }
        ],
        [
          {
            "idx": 0,
            "id": "fault_config1",
            "value": "0x71783720"
          },
          {
            "idx": 1,
            "id": "fault_config2",
            "value": "0x75E4C03A"
          }
        ],
        [
          {
            "idx": 0,
            "id": "gate_driver_fault_status",
            "value": 0
          },
          {
            "idx": 1,
            "id": "controller_fault_status",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "gd_config1",
            "value": "0x000783FF"
          },
          {
            "idx": 1,
            "id": "gd_config2",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "pin_config1",
            "value": "0x20600004"
          },
          {
            "idx": 1,
            "id": "pin_config2",
            "value": "0x3E1020AA"
          },
          {
            "idx": 2,
            "id": "device_config",
            "value": "0x27104008"
          }
        ],
        [
          {
            "idx": 0,
            "id": "sys_status1",
            "value": "0x00A091EA"
          },
          {
            "idx": 1,
            "id": "sys_status2",
            "value": "0x50010000"
          },
          {
            "idx": 2,
            "id": "sys_status3",
            "value": "0x00000000"
          }
        ]
      ]
    }

    On debug window in our system, gate driver fault is also occured.

    However there is no detaild error information.

    Best Regards,

    Tomofumi Okamoto

  • Hi Okamoto-san,

    Our team is currently out of office due to US holidays, and will be returning next week.
    Please anticipate a delayed response to your question - and feel free to share additional details which may be helpful to the analysis in the meantime.

    Best Regards,
    Andrew

  • I believe this gate driver fault is closely related to the Loss of SYNC and Motor Lock errors. Even if I disable these errors, Loss of SYNC and Motor Lock are still detected, probably because nFAULT is temporarily lowered. I will check this experimentally at a later date, but is it possible to raise the detection threshold for these errors?

  • Hi Okamoto-san,

    To increase the detection threshold for Loss of SYNC, you can increase the number of sync loss detections are required before triggering the fault by changing the value of LOSS_SYNC_TIMES (bits 21-23) in register FAULT_CONFIG2. In FAULT_CONFIG2 you can also disable the Loss of SYNC fault by setting bit 29 (LOSS_OF_SYNC_EN) to 0.

    The detection threshold of Motor Lock cannot be changed but the action taken when the fault is detected can be changed by changing the value of bits 3-6 (MTR_LCK_MODE). values 9h-Fh will disable Motor Lock detection.

    Regards,

    Joshua

  • Hi Joshua,
    Thank you for your reply. 

    What I have found in my recent testing is that the nfault pin drops when loss of sync and Motor lock occur continuously. At this time, it stops without any specific error and latches the output stop status. Is this behavior in accordance with the specifications? I do not see this behavior on the datasheet.

    We try to start and stop smoothly so that loss of sync and motor lock do not occur, but loss of sync and motor lock are unavoidable depending on the usage and speed command. Can you please advise me what settings are desirable? Is it simply a matter of setting the threshold in a direction that makes it less likely to occur?

  • Hi Okamoto-san,

    If a loss of sync error occurs then the Motor lock fault will also occur, this is because Motor Lock will be raised if either of the following faults occur: Abnormal Speed, Loss of Sync, or No Motor.

    Based on the fault settings in the register config you provided, the motor lock (this includes Loss of Sync) is set to retry after t_CLK. This settings is what is causing the nfault pin to drop continuously, if you set it to Latch the device should stop after the first instance of a Loss of Sync fault is detected. 

    For the LOSS_OF_SYNC errors, we have a guide for debugging this issue in the MCT8329A_GUI on dev.ti.com. To get to the guide, click on the gear icon -> Essential Controls -> fault handling -> Loss of Sync:

    When the motor losses sync the motor will either vibrate or stall. Since it seems like the motor is stalling decreasing open loop acceleration A1 [OL_ACC_A1] and open loop acceleration A2 [OL_ACC_A2] may help to resolve the motor stall issues. If the motor vibrates you can try to increase align time [ALIGN_TIME] and decrease the closed loop acceleration [CL_ACC].

    Can you please try and follow this guide, if you have not already, to eliminate the Loss of Sync fault?

    Regards,

    Joshua

  • Your advice is very helpful. Thank you very much.

    I have been able to improve the situation a lot by lowering ACC, etc. and slowing down acceleration and deceleration, but loss of sync and motor lock occur quite often at the forward and backward changeover. If you know what parameters might be effective in this situation, please advise. Attached is a list of parameters.

    {
      "signature": "oneui-register-data",
      "data": [
        [
          {
            "idx": 0,
            "id": "isd_config",
            "value": "0x6EC0005E"
          },
          {
            "idx": 1,
            "id": "motor_startup1",
            "value": "0x3BA86E98"
          },
          {
            "idx": 2,
            "id": "motor_startup2",
            "value": "0x02A4C380"
          },
          {
            "idx": 3,
            "id": "closed_loop1",
            "value": "0x001E1600"
          },
          {
            "idx": 4,
            "id": "closed_loop2",
            "value": "0x03AA09BC"
          },
          {
            "idx": 5,
            "id": "closed_loop3",
            "value": "0x34C92000"
          },
          {
            "idx": 6,
            "id": "closed_loop4",
            "value": "0x0012DF44"
          },
          {
            "idx": 7,
            "id": "const_speed",
            "value": "0x0100FF01"
          },
          {
            "idx": 8,
            "id": "const_pwr",
            "value": "0x0A500280"
          },
          {
            "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": "0x0E0CCE4F"
          },
          {
            "idx": 12,
            "id": "ref_profiles2",
            "value": "0x78C99A5B"
          },
          {
            "idx": 13,
            "id": "ref_profiles3",
            "value": "0x160E65F8"
          },
          {
            "idx": 14,
            "id": "ref_profiles4",
            "value": "0x00001326"
          },
          {
            "idx": 15,
            "id": "ref_profiles5",
            "value": "0x5CA67300"
          },
          {
            "idx": 16,
            "id": "ref_profiles6",
            "value": "0x007F8000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "algo_ctrl1",
            "value": "0x40000000"
          },
          {
            "idx": 1,
            "id": "device_ctrl",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "ana_trim3",
            "value": "0x48004800"
          },
          {
            "idx": 1,
            "id": "ana_trim4",
            "value": "0x4A00000000"
          },
          {
            "idx": 2,
            "id": "ana_trim5",
            "value": "0x0000004A"
          },
          {
            "idx": 3,
            "id": "ana_trim6",
            "value": "0x00000000"
          },
          {
            "idx": 4,
            "id": "ana_trim7",
            "value": "0x00E5D8E2"
          },
          {
            "idx": 5,
            "id": "ana_trim8",
            "value": "0x00005ED1"
          },
          {
            "idx": 6,
            "id": "ana_trim9",
            "value": "0x00A1C71D"
          },
          {
            "idx": 7,
            "id": "ana_trim10",
            "value": "0x53790F3E"
          }
        ],
        [
          {
            "idx": 0,
            "id": "fault_config1",
            "value": "0x718A6324"
          },
          {
            "idx": 1,
            "id": "fault_config2",
            "value": "0x75872BDA"
          }
        ],
        [
          {
            "idx": 0,
            "id": "gate_driver_fault_status",
            "value": "0x00000000"
          },
          {
            "idx": 1,
            "id": "controller_fault_status",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "gd_config1",
            "value": "0x000680FF"
          },
          {
            "idx": 1,
            "id": "gd_config2",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "pin_config1",
            "value": "0x20600004"
          },
          {
            "idx": 1,
            "id": "pin_config2",
            "value": "0x3E1020A9"
          },
          {
            "idx": 2,
            "id": "device_config",
            "value": "0x27104006"
          }
        ],
        [
          {
            "idx": 0,
            "id": "sys_status1",
            "value": "0x00A69964"
          },
          {
            "idx": 1,
            "id": "sys_status2",
            "value": "0xE0010000"
          },
          {
            "idx": 2,
            "id": "sys_status3",
            "value": "0x00000000"
          }
        ]
      ]
    }

  • Hi Okamoto-san,

    I will look over the register configuration and get back to you by December 13th at the latest.

    Regards,

    Joshua

  • Hi Joshua san,

    Have you confirmed this?

    What I am wondering is when I stop the motor, I always get Loss of Sync and Motor Lock errors. The motor is not stalling, but it always occurs every time. How can this error be avoided?

  • Hi Okamoto-san,

    I have not had time to look over the register settings yet. I will look over them as soon as I can and get you a response by tomorrow. 

    Regards, 

    Joshua

  • Hi Okamoto-san,

    Many of our team members are currently out of office for US holiday timeframe - but will be back in office by 1st week of January.

    Please anticipate a delayed response & feel free to provide additional information in the meantime.


    Best Regards,
    Andrew