espressif/esp-drone

Custom ESP drone hardware power problem

sasha240100 opened this issue · 5 comments

Hi, I'm trying to build a drone (esp32c3-based) inspired by an esp-drone project and I've got a problem with power supply.
Whenever the motors start spinning more than ~20% of their max power, the esp32c3 keeps restarting (shutdown).

I am using a 3.7v Fullymax, 600mah battery rated 70C (which should be enough for a small quadrocopter).

My assumption that drone keeps restarting is based on blue LED flickering, and that it reconnects to wifi everytime when it happens. I assume that the problem is that esp32c3 isn't getting enough voltage once motors start consuming more power, but I have no idea how to fix it while still staying on a 3.7v 1S battery.

I was hoping to find the answer over the internet and in the schematics of the drones from documentation:
https://espressif-docs.readthedocs-hosted.com/projects/espressif-esp-drone/en/latest/_static/ESPlane_FC_V1/Schematic_ESPlane_FC_V1.pdf
https://espressif-docs.readthedocs-hosted.com/projects/espressif-esp-drone/en/latest/_static/ESPlane_V2_S2/SCH_ESPlane_V2_S2.pdf

But unfortunately haven't found how to fix this problem yet. Maybe you could suggest why that could happen and how it could be fixed? I'm happy to provide any details!

Thanks!

P.s. some other details:

  • While connected to a multimeter that shutdown happens at roughly 700mA... consumption which looks like isn't a lot
  • There is a also a *click* sound coming from motors when the shutdown happens
  • I tried to connect a 10uF electrolytic capacitor between VBAT/GND, but that didn't help
  • esp32c3 works fine without motors being under load
  • While testing the battery was charged to ~4.1V (the less it is charged the earlier the problem appears, that's why my guess was that the problem is voltage-based)
image

@sasha240100 - i cant make out the capacitors, motors, etc, in the schematic screen shot, but have you tried:

  • apply a Vbatt gain schedule/table to the max current/torque/speed to the motor(s).

The idea is to apply a derate to the motor commands as voltage drops below current capabilities (as the batteries age, etc). Initially populate the table with ~0.9 across the Vbatt range of interest.

Also, do you have any other batteries to test?

@sasha240100 same issue here. Have you solved somehow?

@livigni actually yes, at least I think I've got some improvement from the last time.

The problem I noticed was that I've used a regular diode on the +5V power line, the voltage drop of that diode I measured was 0.7V. In my case that was a 1N4007 SOD-323 which I think was too much for a 1S LiPo battery (3.7v) that should handle both the motors & the control unit.

After I looked carefully 2nd time at the official schematics I noticed that instead they use a BAT60B Schottky diode, which in general has a lot lower voltage drop value (I measured as 0.2V), that is a much less compared to previous 0.7V I had.

image

I didn't test it enough to confirm if the issue is now gone on my side, but quick tests showed the difference in a better direction. I will test it more on weekends to find out if the issue is now completely gone away.

P.s. I am a new learner in microelectronics world and would love to share my findings and learn from other people building a similar project. If you would like to exchange experience, drop me an email at alexbuzin88@gmail.com & let's get connected

@mvschaefer Thanks for looking at my problem! The issue is definitely related to the voltage drop like you have mentioned.
I wonder are there any general recommendations on how to optimise the PCB to reduce voltage drop to minimum?

It feels like 3.7V battery (even rated 70C) is not enough to handle such load, maybe only when fully charged up to 4.2V. But at the same time what if battery voltage drops to let's say 3.5-3.6V ? The problem will appear again.

I was thinking about voltage step-up converters to boost voltage to somewhat stable 5V, but that feels like a dumb idea. Not sure what's the best practice is for similar drones. ?