@tutorial: Brushed motors Arduino drone - PCB

In a past tutorial we have buid an Arduino based drone using brushless motors. That was a good project. But, uisng brushless motors could get the prject quite expensiv around 8$ for each motor and also for each ESC, so that could get you up to 80$ just for the motors. A cheapper solution is using mini brushed coreless motors and that's what we will do in this tutorial.

External Link: https://electronoobs.com/eng_arduino_tut23_4.php

by: ELECTRONOOBS on 2026-05-12

First of all, check the previous tutorial, is the same but in a prototype form. This is the same but with PCB. To control the DC brushed motors, we will only need a MOSFET for each motor, controlled with PWM signal. The input will be 3.7V from a lipo battery. The PID will be generated using data from and IMU module and the radio receiver will be a NRF24 module once again. So the transmitter will be the same as in the past TRANSMITTER tutorial so make sure you check that out in order to see how to build the transmitter.


Step 1 Part list


Ok so first of all we will see all the parts we need for this project and why we need each part. There are two ways to make this project. One is using an Arduino pro mini pn a drilled prototyping PCB and all the components or design our own PCB and have it printed by a professional manufacturer.


This is PART 2, with the designed PCB.


ATmega328 AU: LINK eBay

16MHz crystal: LINK eBay

Coreless DC motors: LINK eBay

Plastic gears: LINK eBay

Plastic propellers: LINK eBay

HT7333 regulator: LINK eBay

MPU6050: LINK eBay

NRF24 radio: LINK eBay

SI2302 MSOFET: LINK eBay

FTDI module: LINK eBay

SMD resisistors: LINK eBay

SMD capacitors: LINK eBay

SMD schottky: LINK eBay

SMD LED: LINK eBay

SMD push button: LINK eBay

SMD tantalum 3528 cap: LINK eBay

3.7V lipo: LINK eBay

3D drone body: LINK DIY


Make sure you check the schematic while soldering in order to know each value. All the smd capaciotrs and resistors are 0805 except the tatnalum 10uF one.


Step 2 The schematic


In the photo below you have the schematic I've used for my board. The board in the photo is not the final version, since the first 4 versions had some errors. But as you can see, we have the 4 MOSFETs, the pins for the IMU, the NRF24 module and all the inputs and outputs that we need. Once again, we haev the 3.3V voltage regulator for the radio module. I' create a new PCB layout and place all the components.


Brushed Drone PCB Schematic
Brushed Drone PCB Schematic

So as you can see in the schematic above, we have the ATmega328p chip. To make it work we have to add the 16MHz crystal oscillator between pins 7 and 8 and also two 22pF capacitors betwenn the crystal and GND to amke it oscillate. We haev to add the 10k pullup to the reset pin. We also have a reset push button, some copuling capacitors, and LED at pin 13 (SCK) and maybe a buzzer.


The transistors are the same, the SI2302. Remember to add the flyback diodes. Let's see the layout.

Step 3 The board


Let's prepare the PCB. I've sent the design to a proffessional manufacturer. I've received the board and all the components. I first solder the smd ATmega328p AU chip in the middle of the board. It might seam tricky but it is easier than it looks. Jsut put a bit of solder on the PCB pads. Place the chip and add a lot of flux. Solder will only stick to the metal pads and pins.


As youc an see above, I solder the smd chip. Once we do that, take your multimeter anc check for short circuits. If everything is ok we keep soldering the components. We add the voltage regulator, the capacitors, the push button and pins. But, dodn't solder the modules and MOSFETs yet. Why? well because this chip has no bootloader yer and to burn one we need the SPI pins. So let's prepare the bootloader.

Step 4 The bootloader


Ok, so the board won't work without a bootloader. For that make the enxt connections between an Arduino NANO and the designed PCB.


Be careful. The DTR pin has to go to the reset pin on the push button. The final board will haev a separated pad for the DTR pin. Now all the connections are made. Before burnning the bootloader we haev to first upload a code to the arduino.

Open Arduino IDE. Go to File, examples, ArduinoISP and open that code. Now connect the Arduino NANO to the USB and select the com. Uplaod the code to the Arduino NANO. Now make sure you ahve the connections above between the Arduino NANO and the PCB. Now go to tools, probrammer and select Arduino as ISP. Now go to tools once again and select burn bootloader.

The LEDs of the Arduino will flash rapidlly. The bootloader is now burned. We can now upload a code to the PCB using an external FTDI programmer. Make the connections below between the module and the baord and remember to change back the programmer to Arduino mkII.


Step 4 The body

Well, my drone body is 3D printed uisng PLA material. You heve the STL files below if you want to print the same. Youl'll need a big printing area for the full body or use the divided parts for a smaller printer.


if you don't have a 3D printer, just made the body out of foam or thin plywood. Make it as lighter as you can since this drone won't have too much power.


Download: 3D Files Drone Body

As you can see in the photo above, the body has holes in the arms for the DC motors gears. With just one screw, or maybe super glue, we fit those plastic gears in place. In these gear supports, we fit the DC motors and on the other side the plastic propellers. The body is basically ready. The plastic gear parts already have foots so the drone will be a bit high over the ground.


Now the body and the PCB are ready. Solder the motors to the PCB adn let's look over the multiwii code. Also make sure that the propellers are spinning in the correct direction.


Step 5 The code

Now we know that each part works ok. The code that we will use first is a MultiWii platform as in the past tutorial on Arduino based drone for quadX drone. Ina future part we will make our own code but that doesn't work quite well yet, sorry.

Go to the link below and donwload that zip file. Inside you will have the MultiWii Arduino code and the Multiwii Java platform for 32 and 64 bits.

Connect the FTDI module to to the Arduino pro mini, open the code, select Arduino pro mini as programmer and upload the code. Now with the FTDI module connected, open the Java Multiwii Platform and let's see if everything is ok.


With the code uploaded, the FTDI connected and the Multiwii platform on, power the transmitter and chech if you can receive data for throttle, yaw, pithc and roll. Also the extra 2 AUX channel. To power the motors put throttle to maximum and yaw to amximum for 3 seconds. Now we can fly.

Leave a comment

Please login in order to comment.

Comments

ADVERTISERS
ADVERTISERS
PCBWAY