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.

DRV8302 fault

Other Parts Discussed in Thread: DRV8302, DRV8332, DRV8312

Hello,

I have been working on a design based on the DRV8302 chip. The input voltage is 12V, but I have tried different voltages as well. The problem that I have is that the fault pin always goes low and starts toggling when I enable the outputs and start to send PWM. The pulses at the output are very short, so I guess that some protection feature kicks in after a few microseconds on each pulse. The switching frequency is 50KHz, but I have tried 20KHz and 100KHz as well.

You can see the schematic here:

http://vedder.se/Temp/BLDC_3.pdf

I have double checked all component values and voltage tolerances and exchanged the DRV8302 chip to a new one three times with the same results. I have also tried to connect the OC_ADJ-pin directly to DVDD with the same result. The MOSFETs are definitely working and there is no short on any gate.

There are a few things that I suspect could be the problem:

* The OCTW pin is unconnected, so maybe I have to connect a pull-up to it to not trigger faults internally in the chip. (the FAULT pin is pulled up by the programmable pull-up in the microcontroller)

* The IRFS3006 MOSFETs are a too heavy load for the DRV8302. I have to use weaker MOSFETs.

* I have to toggle EN_GATE after the fault. I thought the DRV8302 did reset the fault by itself since the fault pin goes high again all the time and does not stay constantly low.

Do you have any idea what I should try next? I have already spent a lot of time on this.

Thanks in advance.

/Benjamin

  • Benjamin,

    Sorry you are having problems. 

    Your FETs are quite large, so I would recommend driving at a lower frequency than higher to reduce the burden on the internal charge pump.  20kHz should be fine, but you can also try lower.

    But, I don't this that is your main problem.  It may sound like a stupid question, but have you soldered down the power pad?  This is the only GND path for the IC and you get some very funny operation if you don't solder the exposed powerpad underneath to the ground plane.

     

  • I have soldered the power pad and the buck converter works perfectly, so that's not the problem. I figured the fault was an under voltage fault on GVDD, PVDD, or DVDD since the fault was not latching and it was showing on the fault pin. I managed to solve it by disconnecting the supply voltage (HV in the schematic) from the DRV8302 and driving the DRV8302 from a separate supply while driving the FETs from the other supply. After some more testing, I found out that putting a shottky diode between the FET supply and the DRV8302 also made it work on a single supply. I have tried adding capacitors everywhere as well, but this did not help at all. Also, driving the FETs without any motor connected works fine, but as soon as I connect the motor the pulses get limited after a few microseconds. This also happened for a really really small motor.

    I was thinking that I don't have enough decoupling on my supply voltage, but adding capacitors everywhere made no difference at all, the only thing that works so far is the shottky diode or a separate supply. The ground nets are connected in only one place, so this should not be a problem either. Is this something I should be worried about, or is everything OK if I simply use a diode between the FET supply voltage and the DRV8302 supply?

    Also, about the switching frequency, I'm worried that 20KHz is too slow, since I measure voltage and current in every switching cycle. Some outrunner motors may have very high electrical angular velocities, like 50K RPM, so the sampling frequency will be limited at that speed. When running FOC, the only way I see to sample the current is at the end of the PWM cycle when all low side fets are on since the current shunts are between the low FETs and ground and not on the motor phases directly. Is there maybe some other switching technique that would allow me to run at 20KHz and measure the current multiple times in a single PWM cycle?

  • So the dual supply or diode did NOT solve the problem, I only became a little bit better. 8 DRV8302, 2 microcontrollers and 2 PCBs are dead now, and I have no clue what the problem is. This is the most problematic mosfet driver I have worked with so far.

    Everything seems to work as long as no load is connected to the FETs, but as soon as I connect even a small load, the fault pin starts toggling and the PWM pulses get cut off. The same symptom whatever I do. The difference with a dual supply is that the pulses become a bit longer before they are cut off.

  • I did manage to make it work. I changed the FETs to IRF1324 (24V, 160nC) and added an inductor between the power supply and the PVDD pins. As far as I can tell, the problem was not that the irf3006 FETs are too heavy to drive, but that voltage spikes caused the problem. Even if the supply voltage at the bridge did not have any spikes above 30V, I could measure 60V across the low side FETs for a few nanoseconds. As the IRF1324 are avalanche rated (as most FETs today), they will clamp such voltage spikes (IRFS3006 will clamp them at 60V). I don't think there are too long traces either as the whole 4-layer PCB is 50mm x 52mm in size.

    6-step commutation is working perfectly now on a 1000W motor with the old code I wrote for the DRV8332 and DRV8312, so it is time to start working on FOC.

    I'm planning to use IRFS3004, so I hope that they work as well. Is there something I can do to protect the DRV8302 against voltage spikes? maybe add series resistors on the SH_X pins? Or is there likely to be something wrong with my PCB layout?

  • Benjamin,

    Glad you got it working...sounds like a heck of a weekend project. 

    Layout is certainly critical when driving that much current.  One of the biggest problems I have seen is GND bouncing significantly on the switching edges.  If you check out our layout for the DRV8301EVM, you will see a solid GND on a 2-layer board.  This EVM is rated up to 60V and 60A.  We have not experienced any damage with this board.  I suggest scoping the GND connection (PowerPAD) in this case in reference to your power supply GND and see how many volts negative you are taking the substrate.  I have seen a couple of volts taking our chip out.

    The DRV8302 will handle up to 70V with narrow...nanosecond level...spikes.  The charge pump regulator for GVDD can only source up to 30mA.  I = C*Fsw*# of FETs switching.  With the first FETs you were using, I think you were close or over on this specification.