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.

DRV8323R: PWM input mode etc.

Part Number: DRV8323R
Other Parts Discussed in Thread: DRV8301, DRV832X, DRV8323

Greetings, I am using the above part (the RH version) in combination with a 28052F running Instaspin FOC. I am attempting to migrate across from using the DRV8301, plus additional current shunt amplifier, but am having trouble with the 8323RH, mostly in terms of the 8323 self destructing and sometimes losing MOSFETs.

In my previous experience with the DRV8301 the only reason I ever accidentally lost a MOSFET was when configuring the dead time compensation in the Instaspin software. With the DRV8301 I actively disabled the on board dead time compensation and managed it entirely within Instaspin. This worked brilliantly and once configured my implementations have been robust and extremely reliable, across a number of motors and with greatly varying input voltages. Cue the 8323RH and things aren't going as smoothly.

First of all does the 6-PWM input mode allow for properly adjusting the dead time compensation with outside sources? Or do I need to be using the independent PWM input mode for that? The datasheets imply that for the DRV8301, 6-PWM input mode is equivalent in operation to independent PWM input mode on the 8323RH.

3 PWM mode requires the 8323RH perform dead time compensation as a 3 wire input doesn't have the capability to do this externally.

Independent PWM mode allows you to do whatever you want with the outputs, so obviously you can do external dead time compensation.

6 PWM mode gives you the additional inputs necessary to send the data to perform external dead time compensation, but from what I can make out it doesn't work like this? The datasheet says that if you send both inputs low the gate drivers go into a high impedance state, which is not the same as using the gate driver to quickly turn off a FET. If the datasheet is correct, and turning both inputs off results in the gate drivers going into high-Z, what's the point of 6 PWM mode? You may as well connect the INLx pins high, remove half of your wires and switch to 3PWM mode, because if you cannot do external dead time compensation in 6 wire PWM, it offers nothing vs 3 wire. Or am I missing something?

Many thanks,

Matt.

  • Hi Matt,

    First, independent mode of the DRV8323RH is not equivalent to the DRV8301 6x PWM mode.

    Independent mode of the DRV8323RH allows both the high side and low side FET to be enabled. There is no internal shoot-through prevention.

    The DRV8323RS may be a better choice for you. There are many more settings available using the SPI. These additional settings should allow you to dial in the dead time, gate currents, drive times, OCP trip voltage, and deglitch times.
  • Greetings, yes, you are right, that was a brainfart on my own part, the 8301/2 don't allow for both sides to be switched on simultaneously. But that doesn't answer my question.

    Of course I'm aware of the SPI version but it was deliberately disregarded due to the added complexity and wanting to remove redundant aspects of the design. I do not need the built in OCP protection and OCP deglitching as the Instapin software handles current limiting. The range of gate currents available on the hardware device fit my applications too, the only thing that could possibly be necessary is allowing the Instaspin software to handle the dead time compensation.

    What I am wanting to know is if the only way to do this with the DRV8323RH is by using independent mode?
  • Hi Matt,

    The DRV8323RH minimum dead time is 100ns. The DRV8301 has a minimum dead time of 50ns. You can increase the dead time beyond the typical DRV8323RH 100ns using the software.

    If you need less than 100ns, the DRV8323RS version is recommended. The minimum dead time can be set to 50ns in the DRV8323RS.

    Independent mode is an option, but is not recommended due to the risk of shoot-through. Independent mode was provided to allow additional flexibility when controlling unidirection loads.
  • Yeah the reason I haven't yet tried independent mode is the risk involved with something accidentally switching both gates high.

    Under normal operation I cannot see that being a problem as the PWM drivers inside the Instaspin MCU won't send both gates high, but that's not to say it's impossible. Such as when you initially turn on a system or it goes through a boot sequence/reprogramming there's always the chance that something spurious could result in shoot through.

    It would seem that changing 6 PWM mode so that when both inputs go low, the gates actively drive the FETs off, rather than transition into a high-Z state, would be an obvious improvement. That way an MCU/DSP can program in dead time compensation without risking turning both sides on at the same time accidentally and give additional functionality to the 6PWM input mode.

    The DRV832x have pull downs on the inputs and the datasheet for the TMS320F280052F says that the PWM outputs default to GPIO functionality on reset but do not engage their internal pull-up resistors, like the other pins do. It seems like someone thought about this at TI when designing the PWM modules so that those pins don't accidentally go high unless directly told to by the operation code.

    Obviously this is less than ideal but cannot be helped.

    For one application I am actually using more deadband compensation than even the SPI controlled module can provide, so going to full on independent mode would seem like my only option with this line of devices. Either that or stick with the previous parts.
  • Hi Matt,

    "It would seem that changing 6 PWM mode so that when both inputs go low, the gates actively drive the FETs off, rather than transition into a high-Z state, would be an obvious improvement. That way an MCU/DSP can program in dead time compensation without risking turning both sides on at the same time accidentally and give additional functionality to the 6PWM input mode."

    The 6 PWM mode does drive both gates low when both inputs go low. Please refer to Table 2 of the DRV8323RH datasheet.

    "For one application I am actually using more deadband compensation than even the SPI controlled module can provide, so going to full on independent mode would seem like my only option with this line of devices. Either that or stick with the previous parts."

    Can you explain how you are using more deadband compensation than even the SPI module can provide?
  • My goodness I feel like such an idiot. I was comparing the last column in the 8301/2 datasheet, with the final column in the 8323 datasheet, without realising that the latter is showing the state of the SHx pins, not the gate drivers.

    You can alter the timing of the PWM modules in the Piccolo devices. You can add in additional dead time/band compensation by leading/lagging the relevant leading/falling edges on the outputs of the PWM module. This is how I've been doing things so far. With the Piccolo MCU driving the DRV.

    Now that my idiot brain is looking at the right column and that the gates are driven low when both inputs are driven low this doesn't explain why I've been having trouble.

    I've been having success with the DRV8323 when prototyping at 20volts, but have been having trouble when working at the intended operating voltages of 40V+ . This is at very low power levels and when using 15kHz PWM, so hardly the demanding side of things. Is there anything specific you need to look out for with the 8323s implementation? In contrast I've never destroyed, or had trouble with a 8301/2 even when abusing it badly with a badly configured system when I was first getting my feet wet with motor control. It seems far more robust a part.