enter image description here

This is my mosfet datasheet RFP30N06LE

i have my schematic setup exactly like this (except powering a 12v load not 60v) and even confirming with a multimeter when i set my gpio pin to high that there is a 3.3v voltage between gate and source. upon disconnecting the gpio out jumper wire and supplying 5v from the raspi instead, current is allowed to flow between drain and source and my load (12v dc fan 500ma) is turned on.

why does this work with the 5v pin and not the 3.3v gpio pins?

I have tried to switch out mosfets in the event there is a bad one i have and even moved them around my breadboard and swapped cables in case of any faulty wiring. Based off the data sheet i see 250uA as the VGS(TH) testing and a max of 2v.

the raspi delivers 3.3v and i think max around 50mA on the 3.3v rail, am i reading these mosfet charts incorrect?

  • 8
    \$\begingroup\$ Yes, you are interpreting the datasheet incorrectly. The gate threshold voltage is the voltage at which the MOSFET just barely starts to turn on. This is mostly used so you know the minimum value required when operating the MOSFET as a linear device. But if you want to operate it as a switch you don't want to be anywhere near this value since you want it to be fully conducting, not in a careful equilibrium of partially on. Look at the gate voltages used to obtain the on-resistance values of the MOSFET instead. \$\endgroup\$
    – DKNguyen
    Commented Mar 7, 2019 at 3:28
  • \$\begingroup\$ The datasheet specifies Vgs as being 5 volts under most test conditions, with minimum threshold as high as 2 volts, so 3.3 volts is just barely getting the MOSFETs attention. Consider another MOSFET with a lower Vgs or consider using a simple pulse amplifier. \$\endgroup\$
    – user105652
    Commented Mar 7, 2019 at 5:14
  • \$\begingroup\$ "... the raspi delivers 3.3v and i think max around 50mA on the 3.3v rail ..." - Note that the Pi can't deliver 50mA safely through a single gpio; if I recall correctly, 10mA is more in the ballpark. I'm not sure how well-protected Pi gpios are, but without a current limiting resistor you might even risk damaging the Pi's gpio, as the possible gate current of a switching mosfet can be several amps. \$\endgroup\$
    – marcelm
    Commented Mar 7, 2019 at 12:40
  • \$\begingroup\$ I'm glad @Toor agrees with me \$\endgroup\$ Commented Mar 7, 2019 at 16:41
  • 1
    \$\begingroup\$ Possible duplicate of Is this MOSFET a good choice? PWM -> FET -> DC Fan \$\endgroup\$
    – winny
    Commented Mar 7, 2019 at 17:15

2 Answers 2


why does this (circuit) work with the 5v pin and not the 3.3v gpio pins (of the Raspberry Pi)?

You should certainly expect that the RFP30N06LE should work with a 3.3V GPIO signal from the Raspberry Pi.

The datasheet shows the typical characteristics in Figure 7"

enter image description here

NOTE: The graph shows that as you require less current the gate voltage becomes less important. From the graph you can see that it does not matter whether you have V(GS)=3V or V(GS)=10V if the current flow is limited by the load to <1A. The voltage V(DS) is a simple voltage divider formed by R(l) and R(DS). The device is operating in the Ohmic region I showed in the Red circle. See Figure 16 and 17 in the datasheet. This Appnote might help some.

You will not get the minimum RDS(on), but you would expect with a 12V VDD and less than 1A load current to see more about 0.2-0.3V on voltage.

However, the device has been obsolete for many years and if your source of parts is Ebay, the chances are it is NOT an RFP30N06 at all, but some substitute part.
The official replacement device for the RFP30N06LE was the HUF76423P3. This device (which is available) has a VGS(th) of 3V max so is definitely likely not to work with a 3.3V gate drive.

I would suggest that you should connect your device gate direct to the R'Pi 3.3V supply (Pin1), and if it does not turn on your fan then the VGS(th) is high enough to prevent operation.

You can use a device with a higher VGS(th) by changing the circuit slightly.


simulate this circuit – Schematic created using CircuitLab

Here the off voltage is about 0.7v (less than minimum VGS(th) in the datasheet) but the on voltage is about 4V, which should be enough to activate your device if it's VGS(th) is anywhere near 3V.

  • \$\begingroup\$ @winny Did you understand the quote from Toor about threshold impedance? and Jack , same question. It seems you guys just may be on the wrong side of understanding MOSFET tolerances about threshold effects on RdsOn. the curves are nominal whereas the table data are the specs. and only rated at 5V here on the part in question \$\endgroup\$ Commented Mar 7, 2019 at 18:57

The problem with datasheets if often the reader may not realize the fact that parts have tolerances and the tables are the guaranteed specs for min. and/or max. , while the curves are guidelines for nominal parts, unless limits are stated.

Normally we expect to drive the gate as a switch with an input voltage at least as follows; $$V_t≡V_{gs(th)}*(1.5 \text{ to }3) $$ This multiplier factor is a function of Vt so it is closer to 1.5x for Vt<1V and closer to 3x for Vt = 2 to 4V FETs. I will use Vt as it is easier to type than V_{gs(th)}

Yet \$r_{dsOn}\$ or simply \$R_{on}\$ continues to reduce slightly with higher \$V_{gs}\$ towards the max.

So let's examine these guarantees and guideline curves.

Gate to Threshold Voltage \$V_{GS(TH)}=1V_{(min)}, 2V_{max} @ V_{GS} = V_{DS}, I_D = 250µA\$, Figure 10
Drain to Source On Resistance (Note 2) \$r_{DS(ON)}=0.047 Ω [max] @ I_D = 30A, V_{GS} = 5V,\$ Figure 9

This means if we take the nominal between 1 and 2 or 1.5 times 2, we expect 3V to work and 3.3V to work even better and the nominal curve shows that. But if we take the max 2V times 2 we expect some batches of parts may not conduct much current at 3.3V, well certainly not the Amps that the parts with a lower Vt actual threshold.

enter image description here


This means you are safer for worst case tolerances to choose a part with Vt=1.5Vmax or even 1.1V. There are alot FETs with thresholds in this range for this reason and lower sub-threshold types for lower Vdd's.

.. Or as @Andy suggested use a charge pump to create a higher drive voltage.

  • 3
    \$\begingroup\$ Since the OP already specified the load current at about 500mA, your math is flawed showing use at 30A. Figure 6 the curve set for a typical device (VGS(th) of about 2.0V @25C). To suggest that you need VGS(th) * 1.5 or 3 times VGS(th) is not supported by anything I've seen. \$\endgroup\$ Commented Mar 7, 2019 at 14:46
  • 3
    \$\begingroup\$ What does 3.3V/500mA have to do with it?? If you look at Figure 7 you'll see the operation is constrained to the bottom left hand corner. For a typical device with Id of <1A you expect Vds to be only 0.2-0.3V with a VGS of 3V ( the lowest curve). This would imply an Rds of about 0.3 Ohm ...so I have absolutely no idea how you come up with 6.6 Ohms! In other words how do you qualify Rds are VGS/I(load)??? \$\endgroup\$ Commented Mar 7, 2019 at 16:04
  • 4
    \$\begingroup\$ NO ….the OP described a 12V fan @500mA. The 3.3v is the supply for the R'Pi. To calculate RDS for the FET when turned on you use VDS(on)/I(load) …..0.3/0.5 ...which would give RDS of 0.66 Ohm. I used 0.3V/1A to give an approximate 0.3 Ohm. And I agree that this changes with temperature by your simply obfuscating the result. The temperature of the device will change very little since there is very little power being dissipated in it (300mW). \$\endgroup\$ Commented Mar 7, 2019 at 16:47
  • 2
    \$\begingroup\$ @JackCreasey So it’s not just me then. This is a common theme in all his answers. \$\endgroup\$
    – winny
    Commented Mar 7, 2019 at 17:13
  • 2
    \$\begingroup\$ @SunnyskyguyEE75 Absolutely I see what you are saying but your math is screwed up ….you can't use VGS(th)/I(load) to derive RDS(on) ...and VGS=VDS is used to build the graph. In reality you set a VGS value and the current and V(DS) are described by the output load. \$\endgroup\$ Commented Mar 7, 2019 at 18:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.