Diy Drone motors not in sync and board keeps resetting

Hello everyone,
I am currently building a DIY drone using brushed motors and I'm facing several issues. When I arm my drone and start increasing the throttle, I encounter the following problems:

  1. Inconsistent Motor Start:
    -Some motors start spinning early while others only start at full throttle.
    -Sometimes only two motors (specifically, the front right and rear left) spin while the others don't.
    -Occasionally, some motors spin at full throttle while others barely spin.

  2. Board Resetting:
    -The board sometimes resets itself during operation, requiring me to remove and reattach the battery to restart the drone.

Initial Diagnosis and Steps Taken
I suspect the resetting issue is caused by uneven voltage from the battery. To address this, I added a 1000uF capacitor parallel to the battery input to smooth out voltage spikes. This has slightly improved the resetting problem, but the main issue of motors not being in sync still remains.

Components I am using -

  1. Arduino Nano
  2. MPU6050 (for gyro and acc)
  3. MT3608 DC-DC Booster to 3.7->5v for nano
  4. 4 x 8520 coreless Motors with 65mm prop
  5. 4 x IRLB4132 N-channel logic level mosfets (IRLB4132 N-Channel MOSFET 30V 150A | IRLB4132 MOSFET)
  6. 10k ohm pull-down resistors between the left and right legs of mosfet
  7. 1k ohm resistor between the left leg and the digital pin on nano
  8. 1N5819 flyback diodes between the two ends of the motors
  9. 3.7v 1500mah Lipo Battery (3.7V 1500mAH Li-Po Rechargeable Battery (KP 683040) – QuartzComponents)

Circuit Diagram

Actual Drone-

Tutorial I am following
Part1 - https://youtu.be/HGWw5KO5fM4?feature=shared
Part2 - availabe on his youtube

Code -
I am using multiwii firmware with RemoteXY application to control the drone using Mobile bluetooth

code files - (MultiWii BL Drone Final.rar - Google Drive)

Code changes in config.h of Multiwii-

#define QUADX
#define MINTHROTTLE 1000
#define MAXTHROTTLE 2000
#define I2C_SPEED 100000L
#define LADYBIRD
#define MOTOR_STOP

Help me solve this issue, any feedback appreciated !

I have not undertaken this same sort of project, so these may just be suggestions, but are what I would do given some experience with similar things.

Your mosfets need a 100 ohm to 220 ohm resistor on the gate instead of 1k, and a 10k to 0v on the Arduino side (not across the Gate and Source of the mosfets as noted on that diagram)

image

Also it cant hurt to add 4 1N4004 diodes from Drain to +Bat , so basically across each motor, with the cathode to the +Bat
(corrected anode to cathode)

On the output of the MT3608 DC to DC regulator, try adding a 100uF electrolytic and a 1N4734 5.6v Zener. Ensure the DC to DC converter is set to exactly 5.1v

1 Like

Thank you for your kind reply,

okay i will try to change 1k resistor to 100ohm to 220 ohm and see how it goes
also I have already attached 1N5819 across the motor terminals as shown in actual drone image above i.e anode to +Bat, so should I replace it with 1N4004 diode ?
and also can you explain why to use 100uF electrolytic and a 1N4734 5.6v Zener across MT3608 ? is it to reduce voltage spikes ?

Thanks !

Yes I saw in the image after I typed everything :slight_smile: that is good.

Yes exactly. You could even try a smaller capacitor like 47uF, whatever you have laying around.
The Vin on an Arduino assumes a very well regulated supply. Those other components connected to 5v could also be causing a bit more noise or ripple on the 5v supply than we expect.

It's important that the 10k resistors are on the arduino side of the 100ohm/220ohm gate resistors. Actually I suppose it wouldnt make a lot of difference, and how you have them will probably work, but it is definitely tried and true convention to have those 10k resistors nearest to the arduino.

See this post on one of the suggested threads related to yours:

image

1 Like

You've got wrong diode wiring, bro. I see that you dont know how to read a schematic diagram. Besides, the diagram you show has no diode.

Here's the diagram:
diagram_drone

NOTE:
If you see your nano resetting, double check of voltage output of step up and it looks your arduino nano NOW turns into low power (then u need to replace your nano :p)
Your drone looks so heavy (not more than 60 grams for 720/820/8520 coreless DC motor). If it flies then your motor will be burned so fast.

SUGGESTION:

  1. use AWG 28
  2. soldering is the best, instead of using jumper (to avoid unknown trouble in wiring)
1 Like

Hello Thanks for replying,

I know the diagram has no diode shown but i have attached the actual pic of my drone which has diode attached correctly, the yellow-wire you see across the body is the +ve from the battery i.e [vin+ pin of MT3608 ] and is connected the cathode (ring side) of the diode on each mosfet and the anode is connected to middle leg of mosfet, also motors terminals are ig correctly connected to the two ends of diodes
I also checked the output of MT3608 its 5v
I checked the weight of my drone is 53grms without battery (it just seems heavy in pic lol !)

I have ordered 100ohm resistor to attach instead of 1k let's see how it goes and also now i have attached a 1000uf capacitor parallel to battery to smooth out voltage which slightly reduces the issue of board resetting just the motors out of sync remains constant !

Also do i need to attach motors +ve wire individually to the battery , now i have a common (yellow) wire that power the motors in series will it help ?

Thanks !

Reduce also the frequency of the pwm ( the output pin can't drive the mosfet very fast especially the one you selected which has huge current, but also a huge gate to charge )

1 Like

What do you say about diode wiring??

the cathode is to v+ ok

isn't it connected correctly ?
should i reverse it ? but the ring side of diode is connected to +ve battery terminal
your diagram showed similar wiring
or you telling to attach a wire to diode and then connect it with the battery +ve terminal
Also is my battery not powerfull enough should i change my current battery 3.7V 1500mAH Li-Po Rechargeable Battery (KP 683040) – QuartzComponents
I'm confused can you explain :sweat_smile:

Hello,
How to reduce pwd, is it possible through MultiWii code ? or using any component ?
is it there in MultiWii 2.3 as the provided code does not shows such configuration

No. I dont do that. I never show anything related to diode connected to battery or step-up booster.

Dioda is only used in diy brushed esc.
Besides, you connected the all diodes in series. I never do that.

Full diagram of mine:

Here's the ESC as I illustrated above:

diy-brushed-esc

Out of the my explanation above, IF YOU want to add diode in your battery from the power supply, you can use in4001. The one of the motor probes must be connected to battery (3.7v) directly.

Just follow this tutorial, you'll see how all wires connected.

Demo - how diy brushed esc being made using mosfet.

1 Like

You might need to use mosfet drivers...reasons can be looked up online.

Hi,
Do you have a DMM? (Digital MultiMeter)

Do you have test code to test your motors?
If not then how do you know it is not the 6050 attempting to level your drone.

You need to go back to basics and write basic code to test you peripherals.

Sorry, but if you cannot write basic testing code, then you need to, and forget about the drone code for now.

Please answer this question;

Can you please tell us your electronics, programming, arduino, hardware experience?

Thanks.. Tom.. :smiley: :+1: :coffee: :australia:

Shorten all wires (cable), including battery wire.