Zbotic Logo Zbotic Logo
  • Home
  • Shop
  • Sale
  • 3D Print Service
  • PCB Service
  • B2B
  • Blogs
  • Contact Us
0 0

View Wishlist Add all to cart

0 0
0 Shopping Cart
Shopping cart (0)
Subtotal: ₹0.00

View cartCheckout

  • Shop
  • About Us
  • Contact Us
  • Reseller
  • Blogs
020 69134444
1800 209 0998
[email protected]
Help Desk
Facebook Twitter Instagram Linkedin YouTube
Zbotic Logo Zbotic Logo
0 0

View Wishlist Add all to cart

0 0
0 Shopping Cart
Shopping cart (0)
Subtotal: ₹0.00

View cartCheckout

All departments
  • 3D Print Service
  • 3D Printer
  • Batteries & Chargers
  • Development Boards
  • Drone Parts
  • EBike parts
  • Sensor Modules
  • Electronic Components
  • Electronic Modules
  • IoT and Wireless
  • Mechanical Parts and Workbench Tools
  • Motors & Drivers & Pumps & Actuators
  • DIY and Robot Kits
  • Show more
  • Home
  • Shop
  • Sale
  • 3D Print Service
  • PCB Service
  • B2B
  • Blogs
  • Contact Us
Return to previous page
Home Motors & Actuators

MOSFET vs Relay for Motor Switching: Which Is Better?

MOSFET vs Relay for Motor Switching: Which Is Better?

March 11, 2026 /Posted byJayesh Jain / 0

Every motor project eventually faces the same question: should I switch the motor with a MOSFET or a relay? Both can turn a motor on and off. Both can be driven from a microcontroller pin. But the similarities end there. MOSFETs and relays operate on completely different physical principles, and choosing the wrong one for your application can mean wasted power, EMI interference, burnt components, or a circuit that simply doesn’t work as expected.

This guide gives you a thorough, practical comparison of MOSFETs and relays for DC motor switching — covering physics, wiring, efficiency, lifespan, PWM compatibility, and the scenarios where each wins decisively.

Table of Contents

  1. How a Relay Works
  2. How a MOSFET Works
  3. Side-by-Side Comparison
  4. Switching Speed & PWM
  5. Power Dissipation & Efficiency
  6. Lifespan & Reliability
  7. Noise, EMI & Contact Bounce
  8. Practical Motor Control Circuits
  9. H-Bridge for Bidirectional Control
  10. When to Use Which
  11. Recommended Products
  12. FAQ

How a Relay Works

A relay is an electromechanical switch. An electromagnetic coil, when energised by a control signal (typically 5V DC from a microcontroller), creates a magnetic field that physically pulls a metal armature. This armature moves a set of electrical contacts from their normally-open (NO) or normally-closed (NC) position, completing or breaking the power circuit to the motor.

Relay Key Parameters

  • Coil voltage: 5V, 12V, or 24V DC are most common
  • Coil current: 60–100 mA for a 5V relay (too much for direct Arduino pin; needs transistor driver)
  • Contact rating: 10A/250VAC or 10A/30VDC on a typical SRD relay
  • Contact resistance: 100–500 mΩ (causes I²R heat at high current)
  • Operate time: 5–15 ms (slow!)
  • Release time: 3–8 ms
  • Mechanical life: 100,000–10,000,000 operations
  • Electrical life: 100,000–500,000 operations (contacts arc and erode)

Relay Wiring for Motor Switching

You cannot drive a relay coil directly from an Arduino I/O pin — the ~80mA coil current exceeds the 40mA pin limit. You need a driver transistor (NPN BC547, 2N2222, or similar) between the Arduino and the coil. Always add a flyback diode (1N4007) across the relay coil with cathode toward positive supply — without it, the collapsing magnetic field produces a voltage spike of hundreds of volts that destroys the driver transistor.

How a MOSFET Works

A MOSFET (Metal-Oxide-Semiconductor Field-Effect Transistor) is a voltage-controlled semiconductor switch. Applying sufficient voltage between the Gate and Source terminals (VGS) creates a conductive channel between Drain and Source, allowing current to flow. Remove the gate voltage and the channel collapses — the switch opens.

MOSFET Key Parameters

  • VGS(th) (gate threshold voltage): The minimum VGS to start conducting. Logic-level MOSFETs (e.g., IRLZ44N) conduct fully at VGS = 5V, making them directly drivable from Arduino. Standard MOSFETs (e.g., IRF540N) need VGS = 10–12V for full conduction.
  • RDS(on) (on-state resistance): IRLZ44N: 22 mΩ; IRLB3034: 1.4 mΩ. Lower is better — less heat at high current.
  • Continuous drain current (ID): IRLZ44N: 47A; IRF3205: 110A (at rated VGS, derated for temperature)
  • Switching speed: 10–100 ns (thousands of times faster than a relay)
  • Gate capacitance (Cgs): Must be charged/discharged each switching cycle — determines gate drive current requirement for high-frequency PWM

MOSFET Wiring for Motor Switching

For an N-channel MOSFET switching the low side of a motor:

  • Drain → motor negative terminal
  • Motor positive terminal → supply positive
  • Source → GND
  • Gate → Arduino PWM pin (via 100–470Ω resistor to limit gate current spikes)
  • Gate-Source → 10kΩ pull-down resistor (prevents floating gate turning MOSFET on during power-up)
  • Drain-Source → flyback diode (motor is inductive — always add a Schottky diode like 1N5822)

Side-by-Side Comparison

Parameter Relay MOSFET
Operating principle Electromechanical Semiconductor
Switching speed 5–15 ms 10–100 ns
PWM compatible? No (too slow, contact wear) Yes (up to MHz)
On-state loss I²×Rcontact (0.1–0.5Ω) I²×RDS(on) (1–100 mΩ)
Quiescent power 0.3–1.5W (coil always on) ~0W (voltage-controlled)
Isolation Full galvanic isolation None (common ground)
Can switch AC? Yes No (standard N-channel)
Voltage rating 250VAC / 30VDC typical 20V–1200V (device dependent)
Current rating 5–30A 1A–200A (device dependent)
Audible noise Clicks Silent
EMI High (contact arcing) Moderate (fast switching)
Lifespan 100K–1M operations Essentially unlimited
Cost (single device) ₹10–₹80 ₹5–₹60

Switching Speed & PWM

This is the most important difference for motor control. DC motors can be speed-controlled by varying the duty cycle of the power supplied — this is PWM (Pulse Width Modulation). At 50% duty cycle, the motor gets half the average voltage and runs at roughly half speed.

A relay takes 5–15ms to open or close. At just 100 Hz PWM (a common motor control frequency), each cycle is 10ms long. The relay cannot switch at anywhere near this rate — it would physically jam or weld its contacts. You cannot use a relay for PWM motor speed control.

A MOSFET switches in nanoseconds. Common motor PWM frequencies:

  • Arduino analogWrite default: 490–980 Hz → MOSFET: perfect, relay: impossible
  • L298N driver: 25 kHz → MOSFET: no problem, relay: impossible
  • Modern ESC (brushless): 8–32 kHz → MOSFET: fine with adequate gate drive

PWM Frequency & Audible Noise

Below ~20 kHz, motor PWM produces audible whining from the windings vibrating at the switching frequency. At 20 kHz, it’s above human hearing. Most quality motor drivers operate at 20–32 kHz for this reason. High-frequency PWM requires sufficient gate drive current and may need a gate driver IC (e.g., IR2104) to rapidly charge/discharge the MOSFET’s input capacitance.

Power Dissipation & Efficiency

Relay Power Dissipation

Two sources of loss in a relay-switched motor circuit:

  1. Contact resistance loss: P = I² × Rcontact. At 5A through 200mΩ contacts: P = 5² × 0.2 = 5W. Significant.
  2. Coil power: A 5V/70mA coil consumes 0.35W continuously while the motor is running. Small but constant.

Total relay power loss at 5A motor current: ~5.35W. At 10A: ~20W — the contacts get very hot.

MOSFET Power Dissipation

For an IRLZ44N (RDS(on) = 22mΩ) at 5A: P = 5² × 0.022 = 0.55W. At 10A: 2.2W. Near-zero quiescent power. The MOSFET wins on efficiency by a large margin, especially at higher currents and during continuous operation.

Lifespan & Reliability

A mechanical relay has a finite number of switching operations before the contacts wear out. An SRD-05VDC-SL-C relay is rated for 100,000 electrical operations at rated load (10A resistive). At 10 operations per minute in an automated system, that’s just 7 days of continuous operation before the relay should be replaced.

MOSFET failure modes are different: they fail from overvoltage (exceeding VDS(max)), overcurrent, or thermal runaway. A well-protected MOSFET circuit with a flyback diode, heatsink, and operating within 50% of its rated current will last indefinitely — millions of switching cycles cause no degradation. For high-cycle automated machinery, MOSFETs are strongly preferred.

Noise, EMI & Contact Bounce

Relay Contact Bounce

When relay contacts close, they physically bounce 2–10 times in rapid succession over 1–5ms before settling. Each bounce creates a brief arc, causing:

  • Contact erosion (shortens life)
  • Conducted and radiated EMI
  • False edges in digital signals (problematic if using relay output as a logic input)

Solid-state relays (SSRs) use MOSFETs or TRIACs internally, eliminating contact bounce. They’re essentially MOSFET switches in a relay-pinout package, priced between relays and discrete MOSFETs.

MOSFET Switching EMI

Fast MOSFET switching (nanosecond rise times) creates high dV/dt and dI/dt transitions — these are rich in high-frequency harmonics that can interfere with sensors, wireless modules, and other electronics. Mitigation:

  • Slowing the switching slightly with a gate resistor (100–470Ω)
  • Adding a small RC snubber across the motor terminals
  • Adding bulk decoupling capacitors close to the MOSFET
  • Proper PCB layout (short, low-inductance power paths)

Practical Motor Control Circuits

Simple On/Off with Relay (High-Side)

Use case: switching a pump or fan on/off from a microcontroller, no speed control needed. Wire the relay NO contact in series with the motor positive supply. Use a ULN2003 or NPN transistor to drive the coil. Add flyback diode across the coil.

PWM Speed Control with N-Channel MOSFET (Low-Side)

Use case: variable-speed DC motor controlled by Arduino PWM. Connect motor positive to supply, motor negative to MOSFET Drain, Source to GND, Gate to Arduino PWM pin via 100Ω resistor, with 10kΩ pull-down Gate-Source. Flyback Schottky diode (cathode to motor positive, anode to motor negative) handles inductive kickback.

Bidirectional Control (H-Bridge)

Neither a single relay nor a single MOSFET can reverse motor direction. You need an H-bridge — four switches in an H configuration. Dedicated ICs (L298N, TB6612FNG, DRV8833) are preferred over discrete implementations for their built-in protection features.

25GA-370 DC Gear Motor

25GA-370 12V DC Reducer Gear Motor

Controlled perfectly with a MOSFET + PWM for variable speed, or a relay for simple on/off. Pair with an N-channel MOSFET and this motor for a smooth, efficient drive circuit.

View on Zbotic

H-Bridge for Bidirectional Control

An H-bridge uses four switches (Q1–Q4) arranged around the motor. To drive the motor forward: Q1 and Q4 ON (Q2/Q3 off). To reverse: Q2 and Q3 ON (Q1/Q4 off). To brake: both low-side switches ON simultaneously. PWM is applied to one switch to control speed.

You can build an H-bridge with four N-channel MOSFETs, but the two high-side MOSFETs need a bootstrap gate drive circuit (since their sources are at motor voltage, not GND). Gate driver ICs like IR2104 handle this automatically. Dedicated H-bridge ICs (DRV8833, DRV8871, TB6612FNG) combine all of this in a single package with thermal shutdown and current limiting.

Relay H-Bridge

Two double-throw relays can implement a relay H-bridge for bidirectional control at low switching frequency. This is acceptable for simple forward/reverse applications (conveyor belts, door openers) but cannot do PWM speed control. It also has a mandatory dead time (relay operate time) between direction changes to prevent shoot-through.

When to Use Which

Use a Relay When:

  • You need to switch AC mains (relay is essential — N-channel MOSFETs don’t switch AC)
  • Complete galvanic isolation is required between control circuit and motor circuit
  • The motor draws over 30A continuous (heavy-duty relays outclass most affordable power MOSFETs at extreme currents)
  • The motor switches less than 10 times per minute (relay lifespan is adequate)
  • Speed control is not required
  • The control signal is a simple on/off from an IoT device or SCADA system

Use a MOSFET When:

  • PWM speed control is required
  • Switching frequency exceeds 10 Hz
  • The motor operates continuously and efficiency matters
  • Silent operation is required (no relay clicking)
  • High cycle count operation (automation equipment)
  • The circuit must be compact (MOSFETs are much smaller than relays)
  • Battery-powered systems where every milliwatt counts
30A BLDC ESC

30A BLDC ESC Brushless Electronic Speed Controller

A prime example of MOSFET-based motor switching at its best — six MOSFETs in a 3-phase bridge, switching at 8–32 kHz to drive brushless motors with smooth speed control.

View on Zbotic

Frequently Asked Questions

Can I use a relay for PWM motor speed control?

No. Relay mechanical response time (5–15ms) is far too slow for PWM frequencies used in motor control (490Hz–32kHz). Attempting PWM through a relay results in the relay welding its contacts shut or failing almost immediately. Always use a MOSFET or dedicated motor driver IC for PWM speed control.

Why does my motor run in reverse when I use a MOSFET?

A single N-channel MOSFET on the low side can only switch the motor on or off in one direction. To reverse motor direction, you need an H-bridge with at least two switches (or four for full bidirectional control). Dedicated H-bridge ICs like the L298N or TB6612FNG provide this functionality.

Do I really need a flyback diode with a MOSFET?

Yes, absolutely. Motors have inductive windings. When the MOSFET turns off rapidly, the magnetic field collapses and induces a large voltage spike (can reach 50–200V even on a 12V motor). This spike exceeds the MOSFET’s drain-source voltage rating and destroys it instantly. Always add a flyback diode (1N4007 for slow switching, Schottky like 1N5822 for PWM) across the motor with correct polarity.

What MOSFET should I use for a 12V, 5A DC motor from Arduino?

For 12V / 5A: use an IRLZ44N (logic-level, VGS(th)=2V, RDS(on)=22mΩ at 5V gate). It conducts fully with a 5V Arduino signal, handles 47A drain current (well above your 5A need), and dissipates only 0.55W — no heatsink needed. Pair with a 100Ω gate resistor and 10kΩ pull-down, plus a 1N5822 Schottky flyback diode.

What is a solid-state relay (SSR) and is it better than both?

A solid-state relay uses a MOSFET or TRIAC as its switch (triggered by an LED-optocoupler for isolation) in a relay-compatible package. SSRs offer relay-style isolation and pinout, but MOSFET-speed switching. They are ideal for AC load switching with PWM capability (AC SSRs can handle this at line frequency zero-crossings). They cost more than either a relay or a MOSFET alone, but combine the best of both worlds.

Get the right motor switching solution for your project
Zbotic stocks DC motors, brushless motors, ESCs, and motor accessories for every application. From simple on/off pump control to high-speed PWM drone drives — find it all in one place. Browse all motor drivers and motors at Zbotic →
Tags: Arduino motor, DC motor driver, MOSFET motor control, PWM motor control, relay motor switching
Share Post
  • Facebook
  • Linkedin
  • Whatsapp
Buck-Boost Converter: When and...
blog buck boost converter when and how to use them 597253
blog charge pump circuit doubler and inverter design tutorial 597255
Charge Pump Circuit: Doubler a...

Related posts

Svg%3E
Read more

Gear Motor Guide: N20, JGB37, and Planetary Motors Compared

April 1, 2026 0
When your project needs more torque than a bare DC motor can provide, a gear motor is the answer. By... Continue reading
Svg%3E
Read more

Miniature Pump Hydroponics: Automated Nutrient Dosing System

April 1, 2026 0
Hydroponics grows plants in nutrient-rich water instead of soil, and automating the nutrient dosing process with peristaltic pumps and Arduino... Continue reading
Svg%3E
Read more

Drone Motor Testing: Thrust Stand Build and KV Measurement

April 1, 2026 0
If you are building a drone, selecting the right motor-propeller combination is critical for flight performance. A drone motor thrust... Continue reading
Svg%3E
Read more

Pump Selection Guide: Peristaltic, Submersible, and Diaphragm

April 1, 2026 0
When your Arduino project needs to move liquid — whether for automated plant watering, hydroponics, aquarium management, or a coffee... Continue reading
Svg%3E
Read more

Solenoid Guide: Door Locks, Valves, and Automation Projects

April 1, 2026 0
A solenoid is an electromechanical device that converts electrical energy into linear motion. When you energise the coil, a plunger... Continue reading

Add comment Cancel reply

Your email address will not be published. Required fields are marked

Facebook Twitter Instagram Pinterest Linkedin Youtube

Get the latest deals and more.

Download on Google Play Download on the App Store

Call us: 020 69134444 / 1800 209 0998

Monday - Saturday 09:30 AM - 06:00 PM
For Technical Supports Email: [email protected]
For Sales / Enquiries Email: [email protected]

  • My Account

    • Cart

    • Wishlist

    • Checkout

    • My Orders

    • Track Order

    • My Account

  • Information

    • FAQs

    • Blogs

    • Career

    • About Us

    • Contact Us

    • Payment Options

  • Policies

    • Privacy Policy

    • Terms & Conditions

    • GST Input Tax Credit

    • Shipping Return Policy

    • E-Waste Collection Points

    • Our Sitemap

© Zbotic.in is registered trademark of Moxie Supply Pvt Ltd – All Rights Reserved
Login
Use Phone Number
Use Email Address
Not a member yet? Register Now
Reset Password
Use Phone Number
Use Email Address
Register
Already a member? Login Now