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.

No-load drive MOSFET chip and MOSFET hot

Other Parts Discussed in Thread: DRV8353

The customer has following question needs your help 

 When no load, output PWM waveform drives MOSFET, MOSFET and chip are hot. When I disable the chip or MCU does not output PWM waveform, the chip normally does not heat. The image is my DRV configuration.

/resized-image/__size/320x240/__key/communityserver-discussions-components-files/121/pastedimage1663133667630v4.png

/resized-image/__size/320x240/__key/communityserver-discussions-components-files/121/pastedimage1663133647859v3.png

Thanks,

Susan Ren

  • Hey Susan,

    Thank you for posting your question to the E2E.

    The pictures are very blurry and I can't read them very well. Would you mind uploading them again with better resolution. 

    Also are there any warnings and faults happening, from the SPI registers? What Idrive setting is being used?

    It would also be helpful if you could provide waveforms of GHx, SHx, and Vdrain.

    Best Regards,

    Akshay

  • Hey Akshay,

    DRV8353_write_DCR(0X0, 0x0, 0x0, 0x0, PWM_MODE_6X, 0x0, 0x0, 0x1, 0x0, 0x1);
    delay_us(100);
    DRV8353_write_HSR(LOCK_OFF, IDRIVEP_HS_300MA, IDRIVEN_HS_1100MA);
    delay_us(100);
    DRV8353_write_LSR(1, TDRIVE_1000NS, IDRIVEP_LS_300MA, IDRIVEN_LS_1100MA);
    delay_us(100);
    DRV8353_write_CSACR(0x0, VREF_DIV_2, 0x0, CSA_GAIN_40, 0x0, 0x0, 0x0, 0x0, SEN_LVL_1_0);
    delay_us(100);
    DRV8353_write_OCPCR(TRETRY_8MS, DEADTIME_200NS, OCP_RETRY, OCP_DEG_8US, VDS_LVL_1_88);
    delay_us(100);

    void DRV8353_write_DCR(int OCP_ACT, int DIS_CPUV, int DIS_GDF, int OTW_REP, int PWM_MODE, int PWM_COM, int PWM_DIR, int COAST, int BRAKE, int CLR_FLT)
    {
    uint16_t val = (OCP_ACT<<10) | (DIS_CPUV<<9) | (DIS_GDF<<8) | (OTW_REP<<7) | (PWM_MODE<<5) | (PWM_COM<<4) | (PWM_DIR<<3) | (COAST<<2) | (BRAKE<<1) | CLR_FLT;
    DRV8353_write_reg(DRV8353_DRIVER_CONTROL, val);
    }

    void DRV8353_write_HSR(int LOCK, int IDRIVEP_HS, int IDRIVEN_HS)
    {
    uint16_t val = (LOCK<<8) | (IDRIVEP_HS<<4) | IDRIVEN_HS;
    DRV8353_write_reg(DRV8353_GATE_DRIVE_HS, val);
    }

    void DRV8353_write_LSR(int CBC, int TDRIVE, int IDRIVEP_LS, int IDRIVEN_LS)
    {
    uint16_t val = (CBC<<10) | (TDRIVE<<8) | (IDRIVEP_LS<<4) | IDRIVEN_LS;
    DRV8353_write_reg(DRV8353_GATE_DRIVE_LS, val);
    }

    void DRV8353_write_OCPCR(int TRETRY, int DEAD_TIME, int OCP_MODE, int OCP_DEG, int VDS_LVL)
    {
    uint16_t val = (TRETRY<<10) | (DEAD_TIME<<8) | (OCP_MODE<<6) | (OCP_DEG<<4) | VDS_LVL;
    DRV8353_write_reg(DRV8353_OCP_CONTROL, val);
    }

    void DRV8353_write_CSACR(int CSA_FET, int VREF_DIV, int LS_REF, int CSA_GAIN, int DIS_SEN, int CSA_CAL_A, int CSA_CAL_B, int CSA_CAL_C, int SEN_LVL)
    {
    uint16_t val = (CSA_FET<<10) | (VREF_DIV<<9) | (LS_REF<<8) | (CSA_GAIN<<6) | (DIS_SEN<<5) | (CSA_CAL_A<<4) | (CSA_CAL_B<<3) | (CSA_CAL_C<<2) | SEN_LVL;
    DRV8353_write_reg(DRV8353_CSA_CONTROL, val);
    }

     

    This is the content on the picture about the configuration of the DRV8353 registers

    Best Regards,

    Susan Ren

  • Hey Akshay,

    Does Vdrain waveform refer to the source power waveform?

    Best Regards,

    Susan Ren

  • Hey Akshay,

    The screenshots of the code above are the SHx, GHx, vdrain waveforms and the drv configurations.

    Thanks 

    Susan Ren

  • Hey Susan,

    Thank you for providing more information. I will aim to provide feedback by middle of next week.

    Best Regards,

    Akshay

  • Hey Akshay,

    Thanks hope for soon.

    Best Regards,

    Susan Ren

  • Thank you for your patience.

    Best Regards,

    Akshay