Overview

The IRF520 MOSFET Driver Module is a widely used power switching breakout board included in Arduino starter kits (Elegoo, SunFounder, Keyes). It allows 3.3V or 5V microcontrollers to control high-power DC loads—such as 12V LED strips, 24V solenoids, DC motors, Peltier coolers, and heating elements—over a single digital PWM signal pin.

The module incorporates an IRF520 N-channel power MOSFET in a TO-220 package, onboard gate drive support components, power status LEDs, and two 2-pin screw terminal blocks (one for external load power supply input, and one for the load output connection).

Quick reference

Control signal voltage (SIG)3.3 V to 5.0 V DC (Microcontroller GPIO logic level)
Output load voltage (VIN)0.0 V to 24.0 V DC
Max continuous load currentUp to 1.0 A1.0\text{ A} (without heatsink) / Up to 5.0 A5.0\text{ A} (with heatsink)
Switching typeLow-side N-Channel MOSFET switching (sinks load negative to GND)
PWM frequency range0 Hz to 20 kHz PWM speed control
Connectors3-pin 0.1" logic header + 2 screw terminal blocks

Module Interface & Terminal Layout

text
         Logic Header Pinout          Screw Terminal Block
            ┌─────────┐                ┌─────────────────┐
        SIG │ 1   (o) │                │ VIN (+)  GND (-)│ Power Supply Input (0-24V)
        VCC │ 2   (o) │                ├─────────────────┤
        GND │ 3   (o) │                │ V+  (+)  V-  (-)│ Load Output Connection
            └─────────┘                └─────────────────┘

3-Pin Logic Header

Pin LabelNameTypeDescription
SIGDigital SignalDigital InputMicrocontroller GPIO pin (3.3V / 5V PWM logic input)
VCCPower (Optional)PowerAuxiliary power connection (NC or 5V rail)
GNDGroundPowerMicrocontroller ground reference (0 V)

Screw Terminals

Terminal LabelFunctionDescription
VIN (+ / -)External Power InputConnect external DC power supply (0V0\text{V} to 24V24\text{V} DC)
V+ / V-Load OutputConnect load device (DC Motor, LED Strip, Solenoid)

Specifications

ParameterSymbolMinTypMaxUnitConditions
Signal VoltageVSIGV_{SIG}3.35.05.5VMCU logic HIGH
Load Voltage RangeVLOADV_{LOAD}0.012.024.0VExternal supply voltage
Continuous Load Current (Uncooled)Iload1I_{load1}1.01.5AVSIG=5.0VV_{SIG} = 5.0\text{V}, no heatsink
Max Load Current (Heatsinked)Iload2I_{load2}3.55.0AVSIG=5.0VV_{SIG} = 5.0\text{V}, aluminum heatsink
Peak Pulsed Drain CurrentIDMI_{DM}9.2A<300 μs<300\ \mu\text{s} pulse
Static RDS(on)R_{DS(on)} at 5V GateRDSR_{DS}0.270.40ΩVGS=5.0VV_{GS} = 5.0\text{V}
Module WeightWW10.0gPCB with terminals

Internal Schematic Circuit

text
  SIG ────[ 1kΩ ]────┬─── Gate (IRF520)

                  [10kΩ] (Pull-Down to GND)

  GND ───────────────┴─── Source (IRF520) ────── VIN (-) Ground

                             Drain (IRF520) ──── V- Output Terminal
  • When SIG is High (5V5\text{V}), the IRF520 turns on, pulling terminal V- down to GND, completing the circuit for the connected load.
  • Terminal V+ is connected directly to VIN (+) on the PCB trace.

Wiring (12V LED Strip / DC Motor Control)

Module ConnectionTarget DeviceNotes
Header SIGArduino Digital D3 (PWM)PWM dimming / speed control pin
Header GNDArduino GNDShared common ground
Terminal VIN (+)+12V Power Supply PositiveExternal load power
Terminal VIN (-)+12V Power Supply NegativeExternal load ground
Terminal V+LED Strip Positive / Motor RedPower output terminal
Terminal V-LED Strip Negative / Motor BlackSwitched ground output terminal

Example (Arduino AnalogWrite PWM Speed Control)

cpp
const int mosfetSigPin = 3; // PWM output pin

void setup() {
  pinMode(mosfetSigPin, OUTPUT);
}

void loop() {
  // Ramp PWM brightness/speed from 0% to 100%
  for (int pwmVal = 0; pwmVal <= 255; pwmVal += 5) {
    analogWrite(mosfetSigPin, pwmVal);
    delay(30);
  }

  delay(1000);

  // Ramp down
  for (int pwmVal = 255; pwmVal >= 0; pwmVal -= 5) {
    analogWrite(mosfetSigPin, pwmVal);
    delay(30);
  }

  delay(1000);
}

Common mistakes

  • Drawing >1.5A>1.5\text{A} continuously without a heatsink: Because the onboard IRF520 is a standard-gate MOSFET (RDS(on)0.27 ΩR_{DS(on)} \approx 0.27\ \Omega at 5V5\text{V} gate drive), running >1.5A>1.5\text{A} dissipates >0.6 Watts>0.6\text{ Watts} of heat on the TO-220 tab. Attach an aluminum heatsink for currents >1.5A>1.5\text{A}.
  • Attempting to switch AC mains: The IRF520 is a DC-only N-channel MOSFET. Attempting to switch 120V/230V AC mains power will destroy the module. Use a relay module or SSR for AC loads.

Notes

  • IRF520 Module vs Relay Module: The IRF520 module supports fast PWM speed/brightness control without mechanical clicking; relays support AC loads but cannot perform fast PWM.

Assets & downloads