Do I need a resistor in front of FET gate?

I'm switching 8 RFP30N06's on/off through a SN74HC595 at 3.3V. I understand the gate acts similar to a capacitor that needs to be charged before the FET allows current to flow. Do I need a resistor to protect the SN74HC595 from sourcing too much current at once during this charge period or is it not a concern because the required charge is so small?

Also, is it sufficient to set the SN74HC595 to high impedance to turn the FET off, or should I set the outputs LOW instead?

Thanks in advance.

I think most EE types do use a gate resistor. It’s supposed to prevent ringing, and prevent the output pin driving the gate from seeing an instantaneous dead short because of the capacitance. But I think it may depend on whether you’re changing state once every hour, or modulating something at 40KHz. I’m sure some of the formally trained guys here will give you the real story. But I would be less bothered driving from an HC595 output without a reisistor than from an Arduino GPIO pin.

But you have to bring the output low to turn off the mosfet. If you switch the output to high impedance, the gate can remain charged for quite some time, and the mosfet will stay on during that period. If there’s no active low, there’s no disharge path for the gate except leakage. So unlike bipolars, you need to turn it off with authority.

The 74HC595 has an absolute max continuous output current rating of +/-35mA, but its not clear what
the pulse rating is - so its hard to be sure if a resistor is needed - a value of 150 would be enough whatever.

Don't give a MOSFET gate a high-Z state, it can drift into the half-on-half-off region and dissipate destructive levels of power. With a shift register you have the problem of a random power-up state.

This is probably best handled by explicitly controlling the OE pin, and providing appropriate
pull-ups or pull-downs to this pin and all the FET gates.

Until the microcontroller has got its act together and set the initial state of the shift register you probably
want to prevent any FET from turning on. The microcontroller pin driving the OE pin can be made active
after the first set of 8 bits have been shifted in.

Reasons to have a gate resistor.

For an Arduino we add a resistor to protect the output pin.


Note:

There are times that a MOSFET must be driven hard with a MOSFET driver like the MIC4421/4422.

Thanks for the detailed answers guys, just the info I was looking for. I'll definitely put in gate resistors and pull-downs now.

I just noticed they have flyback diodes across the MOSFETs in the videos you linked. I didn't know that was needed either!

  1. IMHO the resistance of outputs is already high enough (when supply is 3V3 it is even less). No need to add another resistor.
  2. Flyback diodes are only needed for inductive load.
  3. 3V3 is marginal for this MOSFET - you should use 5V unless you are driving only a light load.

ShermanP:
But I would be less bothered driving from an HC595 output without a resistor than from an Arduino GPIO pin.

That is a decidedly funny comment. Why do you say that? the 74HC595 is rated for less current on its output pins than an ATmega328.

Paul__B:
That is a decidedly funny comment. Why do you say that? the 74HC595 is rated for less current on its output pins than an ATmega328.

I was just thinking it would be less likely to mess up other stuff if just the 595 was over-stressed, not the processor. But from your comment I guess I was wrong about that.

Smajdalf:

  1. IMHO the resistance of outputs is already high enough (when supply is 3V3 it is even less). No need to add another resistor.
  2. Flyback diodes are only needed for inductive load.
  3. 3V3 is marginal for this MOSFET - you should use 5V unless you are driving only a light load.

I’m only driving a relay at 5V / 70mA (I do have a diode across that). The reason I’m not using 5V for the MOSFET is that I’d then be forced to translate 3.3V microcontroller outputs to 5V, since the 595 doesn’t have separate load and logic supply pins. So you’re saying I don’t need another flyback across the FET? Only asking because the test circuit in the video linked by larryd (screenshot attached) included one.

Flyback diodes do not go across the MOSFET. They go across the inductive load.

And a relay is an inductive load so the flyback diode is needed.

shazool:
The reason I'm not using 5V for the MOSFET is that I'd then be forced to translate 3.3V microcontroller outputs to 5V, since the 595 doesn't have separate load and logic supply pins.

I think you would find that the HC595 would recognize a 3.3V input as HIGH. So I doubt you would have to translate. But if that doesn't work, the 74HCT595 certainly would.

Capture.JPG

Sorry, but whoever created that diagram has simply no idea what they are doing or what the "flyback" diode does! :roll_eyes: It appears to be complete nonsense.

D1 is not nonsense. It is a Schottky diode which can improve the performance of the reverse current flow in some switching circuits. It is not effective for a single FET switch as pointed out above. However, it could function in a circuit like this:

aarg:
It is not effective for a single FET switch as pointed out above.

Exactly! :grinning:

Do I need a resistor to protect the SN74HC595 from sourcing too much current at once during this charge period or is it not a concern because the required charge is so small?

If you did, it would be called a "current inrush resistor".

To power a RFP30N06 you need a resistor to ground, not in series

Know your 74HC595 will not be able to switch the RFP30's very quickly.

I'm going to assume you are switching some LEDs or similar load maybe at 250 Hz or maybe up to 1kHz. If this is indeed the case you need only put a resistor from each gate to its source. Perhaps a 10k. This is only to keep the RFP30's off if the driver outputs are disabled. It is NOT to turn the RFP30's off. You should turn the RFP30's ON and OFF using the driver.