Using MOSFETS with TTL levels (5 Volt and 3.3 Volt)

If you are looking for 3V3 compatible FETs: scroll towards the end (last update november 2021)

FET

Various Arduino projects that need to switch a high DC load are using MOSFET’s to do this, according to the circuit at the right (R1 is optional and may be necessary to switch off the FET if the pin goes low.

Popular MOSFET’s that are used are the IRF510 and IRF 520

irf510 irf520
IRF510 IRF520

Looking at those graphs one can see that at a gate to source level of 5V (Arduino levels) the IRF510 is only capable of delivering 1 Amp, whereas it is specified for 5,6 Amps continuous current. The 520 is somewhat better: at 5 V it delivers 3 Amps from its max of 9.2. This is because these FET’s are designed to pass the max current at gate voltages of around 10 Volts and that is beyond what most microcontrollers can deliver.

For the IRF522 it is even worse.

irf522

Looking at the curve, at a gate to source voltage of 5V the IRF522 is hardly turned on. You are limited to a current of about 200mA. Much better to use a cheap Darlington transistor then.

The IRF530 is a better choice:irf530

At 5V volt on the gate, the IRF530 will pass something around 4.5Amps.

If you are shopping for a MOSFET for the Arduino consider the IRL540 The L shows that is a logic level mosfet. A logic level mosfet means that it is designed to turn on fully from the logic level of a microprocessor. The standard mosfet (IRF series etc) is designed to run from 10V.

Here is the curve for the IRL540:

irl540

Now at 5V you are out of the linear region and the MOSFET can already deliver its specified 28 Amps continuous current.

You may also consider the IRLZ44.

The IRLZ44 data-sheet shows the Vgs(th) to be 1-2V. With a 3V drive the FET drops less than 0.15V at 4A (at 25C, Rds(on) is about 0.04 ohms), and under 0.25V at 175C (Rds(on) < 0.063 ohms).
So we know the FET’s I^2-R ohmic dissipation will be under 1 watt, and that’s good. If we use Vgs = 4V, specified for AVR chip outputs, the dissipation should be about 0.4W at 25C (0.8W for Tj = 175C). The  Transfer characteristics graph (figure 3 in the data sheet) shows it can handle 30 Amps  with a gate voltage of 3V3.

irlz44

Wether a MOSFET is a standard MOSFET or a ‘logic’FET becomes clear from the Datasheet. If for instance you look at the Datasheet of the IRFZ44N at the Rds(on), This lists the ‘on-resistance’ under the condition that Vgs=10V (and Id=25A). If there is no rating for Rds(on) when Vgs=5V (or 4.5V), then it is not a logic-level MOSFET. A logic level MOSFET will have Rds(on) specified for Vgs=5V or 4.5V. If its only specified for Vgs=10V, its not logic-level.

Another thing to beware of in datasheets is Vthresh (threshhold voltage). This is not the gate voltage to turn the device on, its the gate voltage at which it switches fully off (less than a few uA of current, typically). If Vthresh is given as 2..4V range, it cannot be a logic level MOSFET (Vthresh is usually 0.5 to 1V for logic-level MOSFETs).

When designing with MOSFETs be aware that instead of having a Vsat like a bipolar transistor, a fully-saturated MOSFET acts as a low-value linear resistor. If for instance you want to switch 5A in a 12V circuit and you only want to waste 0.5V across the MOSFET, then its on-resistance (Vds(on)) should be <= 0.1 ohms (0.5V / 5A)

The dissipation then is 5x5x0.1=2.5 Watt. But suppose the FET you choose has 0.05ohm Vds(on) and carries 10A then it will dissipate I^2R watts, ie 10x10x0.05 = 5W. This will need a good heatsink if the load is on for more than a second or two, but it is no issue if it gets millisecond pulses every few seconds. ‘ON-resistance’ of 0.2 to 0.001 ohms are available (though less than 0.005ohms gets expensive).

The relatively cheap BUZ11 is also an option. Although it is no Logic level MOSFET, it will go into saturation with a 5 Volt gate voltage at around 7 amps and a VDS of about 0.5 to 1 Volt. But it’s RDS(on) will be far from ideal and you will lose 3.5-7 Watts in the FET:BUZ11

Should you however be stuck with a FET like the IRF522 that really needs a high voltage to switch efficiently then use the following circuit:MOSFET

Realise though that it is an inverting circuit. A HIGH on the Output of the Arduino will switch the Load Off. Also the 520 and 510 will be more efficient with this circuit.

MOSFETwith low voltage input

Remember to use a heatsink for the MOSFET if you are using any serious loadsMOSFET Print

If you are using this circuit to switch any serious loads, then it is wise to solder some thick wire over the tracks coming from the MOSFET. You will find the print design here. This is for direct transfer so it is already mirrorred the right way.

If you have a non logic FET (like the IRF series and need some galvanic separation from your microcontroller circuit, the following circuit comes in handy:fet520

3.3 Volt levels

For a long time ‘TTL” meant 5 volt. Nowadays more and more 3.3 Volt boards are available as well in the Arduino series as in the popular ESP8266 and the raspberry Pi. On these boards the STN4NF03L (Vgs(th) 1Volt), can be a good choice. Not an ideal choice, but a good one. Check section 2.1 figure 4 in the datasheet. (Mind you the Vgs(th) -threshold gate source voltage- is not the Voltage at which to use the FET, see  warning at end of this paragraph)
Other good choices are the FQP30N60L (Vgs(th) 1-2.5 Volt), or the IRLZ44 (Vgs(th) 1-2V)(discussed above and practical results of the latter found in Jeroen’ s comment below)
Other FETs that can be used with 3V3 are for instance (By no means complete):
IRLB8721PbF Vgs(th)  1.35-2.35 Volt
PJC7400_R1_00001  Vgs(th) 1.7Volt
IRLMS2002TRPBF Vgs(th) 1.2 V
AON2408 Vgs(th) 1.2V
 PMV16XNR  Vgs(th) 0.4-0.9V. On-Resistance of only 20 mOhm when powering the gate at only 3V, and can source a bit more than 6A
AO6400 Vgs(th) is 0.65 1.45Volt (typically 1.05 V) capable of delivering almost 7 amps
SiSS52DN Vgs(th) 1-2,2 Volt at 3V3 Gate voltage it should be anle to deliver 100A. (page 3 Transfer characteristics table). It has an Rds(on) in the tens of miliOhms. AFAIK it comes i a Powerpack housing only.

Let me again stress for the novice, that the Vgs(th) is the voltage on the gate at which the FET just starts to open. It is not fully open at that voltage and can only  deliver very little power. The FETs mentioned here however can deliver more power when they have 3v3 at the gate. Check their datasheet though to see if it is enough for your project. (usually you will find it on page 3 in the ‘transfer characteristics graph). If for instance we look at the FQP30N60L That  has a Vgs(th) of 1-2.5 Volt, we can see that at room temperature at 1 Volt…it doesn’t do anything but at 2.5Volt it may do  around 2 ampere. At 3v3 however it can deliver about 11 ampere

fqp30nl60

The STN4NF03L (Vgs(th)1Volt)  for instance can deliver about 4 ampere at 3v3 but almost nothing at 1Volt.

So what about some of the popular ‘chinese web site’ MOSFET moules that are available. for instance this one:
d4184

That has two D4184 powerfets in parallel. The D4184 has a Vgs(th) of 1.7-2.6V. The datasheet (page 3) teaches us that at 3V3 the max current is probably around 1, maybe 2 ampere (it is hard to see in the graph). So the board will do for 3V3 if you only need 2-4 amps. It’s real capability of 2*50 Ampere however needs a gate voltage of 10Volt.

How about this one:

Well, that has an IRF520, that is not even very suitable for 5 Volt.

How about this one:

Well, it seems that one is available with either an FR120, an LR7843 or an AOD4184.
The FR120 has a Vgs(th) of 1-2.5 Volt. The transfercharacteristics in the data sheet though show that even at 3v3 the Drain current is really minimal.
The LR7843 has a Vgs(th) 1.4-2.3V at 3V3 it is capable of delivering high currents. the transfer chracteristics graph shows 40 Amps, but only at short bursts. The max current is 16 Amps.
The AOD4184 is AFAIK similar to the D4184 that is discussed above: the board will do for 3V3 if you only need 2-4 amps. It’s real capability of 2*50 Ampere however needs a gate voltage of 10Volt.

Epilogue
I feel compelled to add a few caveats here. I have focused mainly on whether 3V3 or 5 Volt was an appropriate level to turn on a FET and get a decent current flowing through it (as opposed to just the threshold gate voltage). That does not mean though that every FET I mentioned here as being TTL level, be it for 3v3 or 5 volt is suitable for your specific project. Eventhough 3V3 or 5 volt may be fine to even fully open a FET, there are other factors to take into account when chosing a FET for your project. 2 important ones are the Rds(on) (=Static Drain-Source On-Resistance) and the Ciss (the input capacitance).

To give an example: the AO6400 MOSFET that has a max current of 6.9 Amps can be fully switched on with even 1.05Volt. However the RDS on at a low gate voltage is about twice as high as with a Vg of 10 volt. At 10 Volt it is 28mOhm and at 2.5Volt it is 52mOhm. at max current that would be a power dissipation of 1.3 vs 2.5 Watt. Maybe both not much, but it could be important for your project. The AO6400 has a gate capacitance of 630 pF and the IRLZ44 has a gate capacitance of 3300 pF. In combination with a gate resistor that determines the RC time, or in other words the speed that the FET will react to a specific gate voltage. Again, it might be minimal but it might be of importance for your project