ESP32 boards suddenly shorting

Well, that’s my second ESP32 board that the resistance between 3.3v and GND hits almost 0.

That’s the ciruit:

The first ESP32 board got shorted in this circuit, and now the second one too.

The circuit is from my RC car, and as you can the entire circuit is sharing the same battery.

It worked fine for a couple of hours, and then when I turned the circuit on again, it wasn’t working anymore, noticed that the ESP32 chip was getting hotter than normal (When Bluetooth is on, it gets warm, but not as much as it did after it stopped working.)

On the motor I was using one 104 ceramic capacitor in parallel with it, and two 103 ceramic capacitor, one in each terminal of the motor and soldered to it’s body. On the ESP32 I was using one 1000uF capacitor on 3.3 and GND and also one 104 ceramic capacitor in parallel with the 1000uF capacitor

I think the electromagnetic interference generated in the motor is interfering with the ESP32's internal circuitry.

What model of ESP32 board are you using? Not all can accept 8.4V on the 5V pin.

A schematic would be more helpful than the diagram you posted. Fritzing does have a schematic mode/view. Switch to that and fix up a schematic. Fritzing will show every component and every wire on the schematic for you, from your wiring diagram. You just need to arrange the components and re-draw the connections in a neat and easy to follow way. Tip: use as many Ground symbols as you like to avoid confusing criss-crossing connections.

That’s the board I’m using. It uses a 3.3 AMS1117C

I will post the schematic soon

Then it should be ok with 8.4V, I think. But it will need to dissipate around 0.7W 0.4W of heat. is it in a small enclosed space?

How you exactly turn the circuit off?

Yeah, most of the time, but I didn’t know that low heat would cause this. After each run I touched the board with my finger and the only heated part was the chip cover, because of the Bluetooth activities.

There’s a on-off switch between the 8.4v and the BMS. I forgot to put it on the diagram.

  • Show us good images of your wiring.

- The black and red wires from the main board were soldered to pins p+ and p- from the BMS.

- The bottom part of the main board might be messy but there aren’t short circuits.

.

That doesn't sound like the regulator was overheating. It would be too hot to touch.

Now it’s overheating, because the board is now a short circuit.

Right now I'm thinking poor quality knock-off AMS1117 on the ESP32 board...

Do you have any other AMS1117-33? You could test it the ESP powers up if you power it through it's 3.3V pin.

I got a batch of bad AMS1117 a few years back. When they failed, they passed the full 12V input voltage to the output, destroying other components in the circuit!

The 1000uF Cap is a short when discharged , when you apply power the Cap will draw max amps from the 3.3V regulator for a short period and start charging up to the regulator output voltage.

I can’t, because as I said, the resistance between 3.3 and GND is almost 0. I have a working ESP32 board here, and my multimeter can’t even read it’s resistance between 3.3 and GND because it’s much greater than 200Ω, and the shorted ESP32 resistance is 5Ω.

Yeah that happened to me on the first ESP32, but even after changing the AMS it would still overheat because of the ESP32’s short circuit. Something under that ESP32’s cover is shorted, but I don’t have a heat gun to open it up and see what’s going on.

So next time should I place it at 8.4v instead of the 3.3v pin?

Yes , but why is the Cap so big (1000uF) that size Cap in often used in filtering mains hum from a bridge rectifier in a power supply.

The ESP32 does have all the noise filtering Caps already fitted , which will work in most cases.

You could but it does absolutely nothing.
Just get rid of it and place a 100uF capacitor right on the power terminals of the motor driver board.

That's was the cause, I am testing the AMS right now, and it's output is 8.4v. That's why it happened on both ESP32 boards, the AMS couldn't handle that “high” voltage. Next time I will use a buck converter

I think you have misunderstood what has happened.
If your device is passing 12v to an I/O pin, then using a buck will not fix the problem You are sure to burn out number 3

The internal AMS of the board is not enough to convert 8.4 to 3.3, that’s why it only worked for a while before burning out, next time I will use a more efficient way to do that, using a buck converter instead of a linear voltage regulator. It will convert 8.4 to 3.3 and I will connect it directly to the 3.3 pin, instead of going through the ams.

I don't recommend doing that. Use a buck to convert to 5V and connect to Vin. Remove the 1000uF capacitor.

You must also protect the I/O pins from 12V.

Why?

What do you mean?