How to Make BLDC Motor Controller Arduino UNO


A Brushless DC or BLDC motor is commonly used in a variety of applications, including drones, robotics, electric cars, and industrial machinery. In order to control the speed and direction of the motor, a motor controller is required. In this article, we will discuss how to make a BLDC motor controller using Arduino UNO and IR2104 IC. Before diving into the details, let’s have a quick look at Arduino Nano, IR2104 IC, and BLDC motor.

Explanation of How to Make BLDC Motor Controller

Arduino Nano:

Arduino Nano is a small, low-cost development board designed for projects that need a compact form factor and low power consumption. It is based on the ATmega328P microcontroller, which features 32 KB of Flash memory and runs at 16 MHz. The board has 14 digital pins, 8 analog inputs, and can be powered by either USB or an external power supply. Arduino Nano is popular among hobbyists and professionals alike, as it is easy to use and can be programmed using the Arduino IDE.

IR2104 IC:

IR2104 IC is a high-voltage, high-speed power MOSFET and IGBT driver with independent high and low-side referenced output channels. It is commonly used for driving half-bridge configurations in applications such as DC-DC converters, motor drives, and Class-D amplifiers. The IR2104 IC features a proprietary HVIC and latch immune CMOS technology, which ensures high noise immunity and reliable operation.

BLDC Motor:

A BLDC motor is a type of synchronous motor that uses permanent magnets instead of brushes to generate torque. It consists of a rotor with permanent magnets and a stator with windings. The rotor is attracted by the magnetic field generated by the stator windings, causing it to rotate. BLDC motors offer higher efficiency, longer lifespan, and better performance than traditional brushed motors.

How to Make BLDC Motor Controller
How to Make BLDC Motor Controller

Circuit Diagram of How to Make BLDC Motor Controller

This project can be designed using a few basic components. The circuit diagram of this project is shown below.

How to Make BLDC Motor Controller Circuit Diagram
BLDC Motor Controller Circuit Diagram

More Circuit Layouts

Components List of How to Make BLDC Motor Controller

Following is the list of all components used in this project:

  • Arduino UNO Board
  • BLDC Motor
  • 3 x IR2104 IC
  • 6 x IRFZ44 MOSFET
  • 3 x Push Button
  • 3 x 2.2uf Capacitor
  • 1 x 1uf Capacitor
  • 3 x 1N4148 Diode
  • 3 x 200 ohms Resister
  • 3 x 100 ohms Resister

Arduino Code File:

Project Zip File:

Text File:

Making BLDC Motor Controller using Arduino Nano and IR2104 IC:

The first step in making a BLDC motor controller is to gather all the required components, including an Arduino Nano, IR2104 IC, MOSFETs, resistors, capacitors, and diodes. A complete list of material is already provided above in the Components List section. Once you have all the components, start by soldering them onto a prototyping breadboard. Follow the circuit diagram to make sure everything is connected correctly.

The next step is to write the code for the Arduino Nano. You can download the entire code through the link provided in the Components List section above. The code will control the MOSFETs, which in turn will drive the BLDC motor. You will need to write some basic functions such as setup() and loop() that will initialize the Arduino Nano and control the MOSFETs. You can find various code examples online that you can modify to suit your specific needs.

Once you have the code ready, upload it to the Arduino Nano using the Arduino IDE. Connect the BLDC motor to the controller and test it by running some simple programs. You should be able to control the speed and direction of the motor using the Arduino Nano.


In conclusion, making a BLDC motor controller using Arduino Nano and IR2104 IC is a relatively simple and cost-effective process. Proper soldering of components and efficient coding of Arduino are key to make it work. It’s a perfect fit for those who want to build small to medium-level electronic gadgets and projects without breaking the bank. Give it a go, and explore more possibilities by using it wherever you can have control over the Brushless DC Motor.

More projects, You may like:

(Visited 2,186 times, 1 visits today)

Leave a Reply

Your email address will not be published.