• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Circuit Ideas for You

Get free circuit ideas online.

  • Home
  • Privacy Policy
  • About
Home » Arduino DC Motor Controller Circuit using MOSFET

Arduino DC Motor Controller Circuit using MOSFET

Last updated on 16 December 2025 by Admin-Lavi Leave a Comment

This project is about controlling DC motor with Arduino and MOSFET.

MOSFET is small electronic part but very strong which can handle big current.

Arduino cannot drive big motor directly, so MOSFET help Arduino to run motor safely.

This Arduino DC Motor Controller Circuit using MOSFET is simple, safe and cheap.

Arduino Coding:

int motorPin = 9;

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

void loop() { analogWrite(motorPin, 0); delay(2000);

analogWrite(motorPin, 128); delay(2000);

analogWrite(motorPin, 255); delay(2000); }

Code Explanation:

  • motorPin is the PWM pin.
  • pinMode sets pin as output.
  • analogWrite sends PWM signal.
  • 0 means motor off.
  • 128 means medium speed.
  • 255 means full speed.
  • delay is used for testing.

Circuit Working:

Arduino DC Motor Controller Circuit  Diagram using MOSFET

Parts List:

ComponentSpecification / DetailsQuantity
Resistor1k 1/4 watt1
Arduino BoardArduino Uno1
MOSFETIRF37081
DC Motor24V 2A1
Power Supply+3V to +60V1
Schottky diode1N58221
HeatsinkOptional1

The circuit work with DC supply from about +3V to +60V.

Arduino sends PWM signal to MOSFET gate.

MOSFET turns ON and OFF fast and PWM controls average motor voltage.

Motor speed changes with PWM value and external supply gives motor power.

Pull-down resistor R1 ensures MOSFET stays OFF when Arduino pin is floating during boot.

Arduino only controls the gate and D1 diode protects MOSFET from back EMF.

How to Build:

To build a Arduino DC Motor Controller Circuit using MOSFET follow the below steps:

  • Take all parts like in circuit diagram.
  • MOSFET source pin connect to common GND.
  • Arduino PWM pin 9 connect to MOSFET gate pin through R1 resistor.
  • MOSFET drain pin connect to one end of DC motor terminal.
  • DC Motor other terminal connect to +3V to +60V power supply.
  • Power supply negative connect to external GND.
  • Diode connect across motor terminals.

Conclusion:

This Arduino DC Motor Controller Circuit using MOSFET is easy and with low cost.

It controls high power DC motors safely.

Arduino is protected from high current and MOSFET gives efficient switching.

This circuit is good for robotics and automation projects.

References:

MOSFET for controlling a DC motor

Filed Under: Arduino Projects, Motor Controllers

About Admin-Lavi

Lavi is a B.Tech electronics engineer with a passion for designing new electronic circuits. Do you have questions regarding the circuit diagrams presented on this blog? Feel free to comment and solve your queries with quick replies

Previous Post: « Arduino Based 55W Halogen Light Controller Circuit
Next Post: Simple 9V Transistor Inverter Circuit »

Reader Interactions

Leave a Reply Cancel reply

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

Primary Sidebar




Categories

  • Alarm Circuits (45)
  • Amplifier Circuits (67)
  • Arduino Projects (99)
  • Audio Circuits (114)
  • Automobile Circuits (19)
  • Battery Charger Circuits (65)
  • Free Energy (13)
  • Heater and Temperature Controllers (13)
  • High Voltage (1)
  • Indicator Circuits (45)
  • Inverter Circuits (20)
  • IoT projects (1)
  • LDR Circuits (26)
  • LED and Lamps (148)
  • Meters and Testers (30)
  • Motor Controllers (22)
  • Oscillator Circuits (39)
  • Power Supply Circuits (104)
  • Remote Control Circuits (10)
  • Security and Protection (29)
  • Sensors and Detectors (126)
  • Solar Circuits (29)
  • Timer Circuits (41)
  • Transistor Circuits (87)
  • Transmitter Circuit (17)
  • Tutorials (8)
  • Water Level Controller (6)

Recent Posts

  • 12V Battery Low Voltage Alarm Circuit
  • Low Voltage Alert Circuit for 9V Battery
  • Digital Code Lock Circuit using IC 4017
  • Darkness Activated LED Circuit
  • Fan Start 10 Second Delay Timer Circuit

Recent Comments

  1. TDHofstetter on DIY Variable Power Supply Circuit using Arduino
  2. feathbuff on Simple Micro Ampere Meter Circuit
  3. Admin-Lavi on Simple School Project Multimeter Circuit
  4. choke on Simple School Project Multimeter Circuit
  5. Admin-Lavi on Analog to Digital Converter Circuit using IC 555

Copyright © 2026 | New Circuit Ideas