• 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 » DC Motor Speed Controller Circuit using Arduino

DC Motor Speed Controller Circuit using Arduino

Last updated on 28 July 2025 by Admin-Lavi Leave a Comment

This project for DC Motor Speed Controller Circuit shows how to control DC motor speed using Arduino, MOSFET and potentiometer.

Arduino make PWM signal to control MOSFET gate.

MOSFET work like switch and control voltage to motor and changes speed.

Arduino speed controller is simple and with low cost.

It can control motor, light and heater.

Speed and power are easy to change in this circuit.

Programming Code:

const int motorPin = 9; // PWM pin for motor control
const int potPin = A0;

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

void loop() {
  int potValue = analogRead(potPin);
  int motorSpeed = map(potValue, 0, 1023, 0, 255);
  analogWrite(motorPin, motorSpeed);
}

Code Explanation:

  • Motor pin is Arduino pin connected to MOSFET gate.
  • Potentiometer pin is Arduino analog pin connected to potentiometer.
  • setup() make motor pin as output.
  • loop() keep reading potentiometer and changes value to speed from 0 to 255 and sets motor PWM.

Circuit Working:

DC Motor Speed Controller Circuit  Diagram using Arduino

Parts List:

ComponentQuantity
Resistors (All resistors are 1/4 watt)
100Ω1
10k1
Potentiometer 10k1
Semiconductors
Arduino UNO1
IC 78091
MOSFET IRF5401
Diode 1N40071
DC Motor 12V 1Amp1

In this article the 12V power give power to circuit.

Arduino make PWM signal to control MOSFET.

10k potentiometer set PWM duty cycle and controls motor speed.

MOSFET work like switch and is controlled by PWM.

It changes voltage to motor.

One diode connect with motor to stop reverse EMF from motor coil.

Motor uses own 12V power.

MOSFET controls voltage and so it controls motor speed.

How to Build:

To build a DC Motor Speed Controller Circuit using Arduino following are the connections steps to follow:

  • Collect all parts shown in circuit diagram.
  • Connect Arduino 5V and GND to PCB.

Potentiometer Connection:

  • One outer pin connects to 5V
  • Middle pin connects to A0
  • Other outer pin connects to GND

MOSFET Connections:

  • Connect 100 ohm resistor between Arduino pin 9 and MOSFET gate.
  • Connect 10k resistor between MOSFET gate and GND.
  • Connect MOSFET source to GND.
  • Connect MOSFET drain to one motor wire.
  • Connect other motor wire to 12V positive.

Diode and IC Connections:

  • Put diode in reverse across motor pins.
  • Use 7809 IC to give 9V regulated power to Arduino.

Conclusion:

This project for DC Motor Speed Controller Circuit using Arduino controls DC motor speed using Arduino, MOSFET and potentiometer.

Arduino make PWM signal and MOSFET change motor voltage and potentiometer sets the speed.

Simple way to learn motor control with electronics.

References:

Controlling a DC motor using PWM and a potentiometer

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 2-Step Programmable Timer Circuit with Independent Output Delay Adjustment
Next Post: Interfacing a 7-Segment Display Circuit with Arduino UNO »

Reader Interactions

Leave a Reply Cancel reply

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

Primary Sidebar




Categories

  • Alarm Circuits (47)
  • Amplifier Circuits (67)
  • Arduino Projects (101)
  • Audio Circuits (120)
  • Automobile Circuits (19)
  • Battery Charger Circuits (72)
  • Free Energy (13)
  • Heater and Temperature Controllers (14)
  • High Voltage (9)
  • Indicator Circuits (48)
  • Inverter Circuits (20)
  • IoT projects (1)
  • LDR Circuits (26)
  • LED and Lamps (163)
  • Meters and Testers (31)
  • Motor Controllers (22)
  • Oscillator Circuits (43)
  • Power Supply Circuits (152)
  • Remote Control Circuits (10)
  • Security and Protection (31)
  • Sensors and Detectors (130)
  • Solar Circuits (30)
  • Timer Circuits (47)
  • Transistor Circuits (114)
  • Transmitter Circuit (17)
  • Tutorials (8)
  • Water Level Controller (7)

Recent Posts

  • Simple 24V 1A DC Power Supply Circuit using 7824 IC
  • DC Voltage Splitter Circuit with Op-Amp and Transistor Buffer
  • Simple Adjustable 5V to 12V Voltage Regulator Circuit using Transistors
  • High Current 5V 3A Voltage Regulator Circuit
  • How to Increase 7805 Output Voltage using Diodes

Recent Comments

  1. Admin-Lavi on Simple Morse Key Circuit using IC 555
  2. Vladimír Zoch on Simple Morse Key Circuit using IC 555
  3. Admin-Lavi on FM Transmitter Circuit (100 meters range)
  4. Kark Arkle on FM Transmitter Circuit (100 meters range)
  5. ±15V Dual Regulator Circuit using Two Terminal Transformer - Circuit Ideas for You on ±15V Dual Power Supply Circuit using 7815 and 7915 ICs

Copyright © 2026 | New Circuit Ideas