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.

DRV8328: standalone testing of the DRV8328

Part Number: DRV8328

Hello,

I'm assembling the PCB for a 1kW inverter that I've designed for a BLDC motor application. I got to the stage where I've just hand soldered the gate driver DRV8328ARUYR and I would like to test it on its own to make sure I've properly soldered all the pins to the pads and I've not damaged the device (I used a heat gun to do the soldering) before soldering the MOSFETs devices on the power stage and the MCU. The components I soldered are represented in the schematic below:

where PVDD is the main supply (36V); SPEEP, INHA, INLA, INHB, INLB, INHC, INLC and FAULT are routed directly the TMS320F28034PNS uC; DT and VDSLVL are connected to 2 POTs (see snapshots below); GHA, GLA, GHB, GLB, GHC, GLC are routed to the MOSFETs gates through the external gate resistance; SHA, SHB, SHC are routed to the sources of the high side MOSFETs and LSS is routed to the sources of the low side MOSFETs. 

  

First of all, could you please confirm that the above configuration is correct? 

Do you think I can test the DRV8328ARUYR device with only the surrounding caps installed? 

The way I was thinking of testing it was to supply the device with 36V at the PVDD pin, then provide 3.3V to the SLEEP pin to awake the device and apply 3.3V to one of the gate drive input (INHx or INLx). Then, I would measure the voltage at the corresponding output (GHx or GLx). Do you think I can do that? Do you have any feedback on how to test it?

thanks

Giorgio

  • Hi Giorgio,

    I'm assembling the PCB for a 1kW inverter that I've designed for a BLDC motor application. I got to the stage where I've just hand soldered the gate driver DRV8328ARUYR and I would like to test it on its own to make sure I've properly soldered all the pins to the pads and I've not damaged the device (I used a heat gun to do the soldering) before soldering the MOSFETs devices on the power stage and the MCU. The components I soldered are represented in the schematic below:

    This schematic and component values look correct. Make sure each capacitor is rated for 2x the voltage they are biased at. 

    where PVDD is the main supply (36V); SPEEP, INHA, INLA, INHB, INLB, INHC, INLC and FAULT are routed directly the TMS320F28034PNS uC; DT and VDSLVL are connected to 2 POTs (see snapshots below); GHA, GLA, GHB, GLB, GHC, GLC are routed to the MOSFETs gates through the external gate resistance; SHA, SHB, SHC are routed to the sources of the high side MOSFETs and LSS is routed to the sources of the low side MOSFETs. 

      

    The logic level I/Os are fine. DT pot resistance range 0k to 500k looks fine. VDSLVL pot looks fine since range is 0V-2.53V. 

    MOSFET connections you described are correct. Make sure LSS connects back to GND if you are not using a shunt resistor. Motor current needs to dissipate to GND. 

    Do you think I can test the DRV8328ARUYR device with only the surrounding caps installed? 

    The way I was thinking of testing it was to supply the device with 36V at the PVDD pin, then provide 3.3V to the SLEEP pin to awake the device and apply 3.3V to one of the gate drive input (INHx or INLx). Then, I would measure the voltage at the corresponding output (GHx or GLx). Do you think I can do that? Do you have any feedback on how to test it?

    Before testing, please ensure you have these following things:

    • Supply bulk capacitance on PVDD (usually 100s to 1000s of uF). The EVM has 780uF bulk capacitance on PVDD. 
      • If spinning a motor, you'll want to ensure that PVDD does not spike over 60V or else you could damage the PVDD pin. Supply bulk capacitance helps from the motor in overvoltage conditions
    • I would perform in the following order:
      • PVDD = 36V
      • nSLEEP = 3.3V
      • Check to see if GVDD = ~12V. 
      • DRVOFF = 0V
      • Apply INHx/INLx = 3.3V/0V and see the GHx/GLx toggle accordingly with respect to SHx/LSS. High level input should yield ~12V on corresponding gate output with respect to source. 
      • If gate drive outputs do not toggle accordingly, check the nFAULT pin. 

    Thanks,
    Aaron

  • Hi Aaron,

    thank you very much for your inputs, very helpful. 

    I didn't install the supply caps for now because I wanted to carry out the test without any load, actually without even installing the switches. 

    I supplied 36V to PVDD and 3.3V to nSLEEP and I measured a GVDD voltage equal to 14V. Then I applied INHA = 3.3V but nothing happened to GHA. So I checked the nFUALT pin, which I left floating, and I measured about 0.3V which didn't look right. 

    I then decided to install a pull up resistor of 100kOhm (not sure about the resistor value, what do you think?) between nFAULT and +3.3V. Am I right in saying that the nFAULT pin cannot be left floating and a pull up resistor must be installed? I also installed the POT for the VDSLVL pin and set it on ~2.5V and I left the DT pin floating as this would just set the default deadtime value.

    I then repeated the test where I applied INHA = 3.3V and again nothing happened to GHA. I've actually tried all the INHx/INLx but the GHx/GLx where always ~0V. I then checked nFAULT (after applying any of the INHx/INLx) and I realized it was going low and I had to reset the device by removing and reapplying 3.3V to nSLEEP to bring nFAULT back to 3.3V. So I think there's something triggering the nFAULT which then is preventing the gate driver to work. Do you know what that could be? could it be the fact that I haven't installed any switch yet, so GHx/GLx, SHA, SHB, SHC  and LSS are all floating at the moment?

  • Hi Giorgio,

    Am I right in saying that the nFAULT pin cannot be left floating and a pull up resistor must be installed?

    nFAULT is an open drain output, it requires an external pullup for the device to report faults through the nFAULT pin. I recommend R_nFAULT = 1kohm to 10kohm. 

    Could you also ensure DRVOFF = 0V or tied to GND? 

    Could you try INLA=3.3V and INHA=0V first, before INHA=3.3V and INLA=0V? Sometimes you need to charge the phase A bootstrap capacitor before turning on the high-side gate output. 

    Can you share full schematic? Make sure there is a path from LSS to GND on your PCB, or else the VSEN_OCP may trigger. 

    Thanks,
    Aaron

  • Hi Aaron,

    ok, I'll replace the 100kOhm pullup resistor for nFAULT with a 1 to 10kOhm one. Is this resistor always required? Even when connecting nFAULT to a uC? In the TI evaluation module DRV8328AEVM (see pdf of the schematic below) the nFAULT pin seems to be routed directly to the launchpad and to a status LED. There seems to be a pullup resistor (R16 in the schematic) but it's marked as DNP. 

    MD053A(001)_Sch.PDF

    I don't have the DRVOFF pin because I bought the DRV8328A version. The DRVOFF pin is on the DRV8328C / D.

    Yes I can try applying INLA=3.3V and INHA=0V first. One question here, for INHA=0V, can I simply leave this pin floating or is it better to connect it to a power supply and apply ~0V? 

    Please see below the pdf of the power stage schematic. At the moment I've only installed U1 and the caps around it, R17, a 100kOhm pullup resistor instead of the LED2 (I'll replace this resistor with a smaller one, probably 1kOhm, depending on what I have available) and the current sensing resistor R18. R18 should assure a good path between LSS and GND.

     power stage.pdf

    On Monday I'll do some more testing on what you've suggested above. 

    Thanks and have a good weekend!

    Giorgio

  • Hi Giorgio, 

    You're right, apologies on the DRVOFF comment, I forget that's only on DRV8328C/D. 

    Is this resistor always required? Even when connecting nFAULT to a uC? In the TI evaluation module DRV8328AEVM (see pdf of the schematic below) the nFAULT pin seems to be routed directly to the launchpad and to a status LED. There seems to be a pullup resistor (R16 in the schematic) but it's marked as DNP. 

    Thanks for catching this! This was a mistake on the DRV8328AEVM, typically we recommend a 5.1kohm pullup for nFAULT to remain high since it is an open drain output. On the EVM, it is pulled up through the nFAULT LED, but I missed populating the 5.1kohm resistor. 

    The EVM and hardware files are being updated to add the 5.1kohm pullup. This can be anywhere between 1k to 10kohm, this will just affect the RC time constant of nFAULT being pulled back up. 

    One question here, for INHA=0V, can I simply leave this pin floating or is it better to connect it to a power supply and apply ~0V? 

    I would apply GND or 0V rather than leaving it floating to ensure that it stays pulled down to 0V. Internally there is a 100kohm pulldown resistor to GND but this is pretty weak. 

    Please see below the pdf of the power stage schematic. At the moment I've only installed U1 and the caps around it, R17, a 100kOhm pullup resistor instead of the LED2 (I'll replace this resistor with a smaller one, probably 1kOhm, depending on what I have available) and the current sensing resistor R18. R18 should assure a good path between LSS and GND.

    Make sure R5 and R11 are populated so you actually turn on the MOSFET when toggling each input high. If these gate resistors are not connected, then the SHx voltages will not appear and recharge the bootstrap capacitor to provide the high side/low side gate voltage.

    Thanks,
    Aaron

  • Hi Aaron,

    are you saying that I have to install R5, R11 and Q1, Q2 otherwise the gate driver won't work? I thought I could test DRV8328ARUYR by applying, for example, INLA=3.3V and INHA=0V and then checking that GLA=12V and GHA=0V. 

    Thanks

    Giorgio

  • Hi Giorgio,

    I can test today on the DRV8328AEVM to confirm if not populating the gate resistors is required to see the gate driver output.

    Thanks,
    Aaron

  • Hi Giorgio,

    I confirmed today that you need the gate resistors to see the gate driver output on the EVM. If they are not populated, nFAULT goes high, likely due to bootstrap undervoltage or GVDD undervoltage fault. 

    Please populate R5, R11 and Q1, Q2.

    Thanks,
    Aaron

  • Hi Aaron,

    sorry for the late reply but I had to deal with a more urgent task in the last week or so.

    I've managed to fully test the gate driver and it seems to be working correctly on all the 3 phases.  

    Could you just confirm that the voltages I'm measuring are in line with what you'd expect:

    if INLx = 0V and INHx = 3.3V -> V_SHx-GND = 0V; V_GHx_G-SHx = 0V; V_GLx_G-LSS = 14.1V

    if INLx = 3.3V and INHx = 0V -> V_SHx-GND =~ 30V (full DC link voltage); V_GHx_G-SHx = 9.6V; V_GLx_G-LSS = 0V

    So basically when the low side MOSFET is switched on its gate to source voltage is equal to around 14V, however, when the high side MOSFET is on its gate to source voltage is lower, about 9.6V. Is this expected?

    thanks

    Giorgio

  • Hi Giorgio,

    Could you just confirm that the voltages I'm measuring are in line with what you'd expect:

    if INLx = 0V and INHx = 3.3V -> V_SHx-GND = 0V; V_GHx_G-SHx = 0V; V_GLx_G-LSS = 14.1V

    if INLx = 3.3V and INHx = 0V -> V_SHx-GND =~ 30V (full DC link voltage); V_GHx_G-SHx = 9.6V; V_GLx_G-LSS = 0V

    I think you flipped your INHx/INLx signals. 

    INHx = 3.3V / INLx = 0V should equal V_SHx-GND =~ 30V (full DC link voltage); V_GHx_G-SHx = 9.6V; V_GLx_G-LSS = 0V

    INHx = 0V / INLx = 3.3V should equal V_SHx-GND = 0V; V_GHx_G-SHx = 0V; V_GLx_G-LSS = 14.1V

    According to the specs, the values are expected. For GHx 100% duty cycle, this should yield 9.6V:

    And for GLx 100% duty cycle, the gate drive voltage will be around GVDD. GVDD at PVDD=30V is anywhere from 11.8 to 15V. 

    Thanks,
    Aaron

  • sorry yes! The signals were flipped.

    thank you very much for the support!

    Giorgio