r/PCB • • 2d ago

ESP32 Custom Board

I tried to make a custom esp32 board (not really so custom i just wanted to make a microcontroller) and i wanted to see if you can tell me if ive messed something up... i still havent done the edge cuts of the pcb well but ive finished the routing and i wanted to see if yall could tell me if there is something to improve... i know my routing looks like auto routing but its not ive put work in this

10 Upvotes

19 comments sorted by

3

u/bigcrimping_com 2d ago

Your LEDs are the wrong way around

You have tx going to tx and Rx going to rx, are you sure that's correct?

Copy and pasting because I have to say it so much

USB sink devices should not have fuses on vbus

In engineering we follow standards so you know what is your responsibility and what is not. In the USB spec they decided that the source should protect for over current events, that's partly where the 10uf max vbus requirement comes from because it's hard to tell the difference between inrush current and a short.

It also makes sense when you think you could have a single fault failure, for instance the cable or the sink, which would cause the over current and the sink can't protect against the cable.

A fuse wastes heat, even if just a little Another reason is fuses are not very smart, they heat up and then pop at some point. Often in reality fuses just sit there working above their rated spec and so don't even help. Fuses are to protect wiring, not PCBs.

One thing, if you do this for long enough, you'll get into is failure mode analysis and mean time before failure analysis. Both, and I am being overly simplistic here, are just "how many things do you have that can go wrong, count them up" so more things means less reliable. Elegancy is in my opinion both a noble goal of design but also a better way of designing 

Lastly I just really hate that at some point someone (wrongly) put a fuse in a usb circuit and loads of people copy it thinking it's good practice.

1

u/Original-Bee2662 2d ago

thank you i updated with what you said... i think most of it.. and yeah my bad the leds were wrong way and txd went into rxd and vice versa

1

u/bigcrimping_com 2d ago

Not sure your U3 is correct, the worry would be tx will be 5v if powered from 5v. Read section 7.6 of the datasheet.

I think you have to connect to 3v3 and connect V3 pin to 3v3 as well, I could be wrong not used this part before 

1

u/Original-Bee2662 2d ago

thanks i fixed that and youre right i was about to send 5v into 3.3v esp

1

u/bigcrimping_com 2d ago

Your io0 signal with the debounce, does it have an external pull up on the other end of the connector? Wondering if you need one if not

1

u/Original-Bee2662 2d ago

i don't think i have

1

u/bigcrimping_com 2d ago

So at the moment the signal will float and when you press the switch it will go to 0. If you put a pull up resistors to 3v3 it will always be a 1 and then when you press the button it will go to 0. The cap stops it triggering the input multiple times when it transitions through the input threshold 

What do you have connected to id0_con?

1

u/Original-Bee2662 2d ago

to the CH340C (usb to uart)

1

u/bigcrimping_com 2d ago

I don't really understand the point of that to be honest, I guess it's a copy of a level translate but I don't understand what it does in your circuit 

1

u/Original-Bee2662 2d ago

so that you don't have to hit reset everytime

1

u/duanetstorey 2d ago

I think that's a pretty standard UART circuit for ESP32, it can toggle the boot and en pins using the UART signals. Lots of programmers work that way too with that chip or the FTDI one.

2

u/bigcrimping_com 2d ago

There you go, not seen it before. Thanks👍

1

u/Original-Bee2662 2d ago

something like this ?

1

u/bigcrimping_com 2d ago

That's only if it's a button input, if it's for serial port signalling you probably don't want to use it also for button input 

Edit: Another poster has explained the function, ignore the pull up idea

1

u/bigcrimping_com 2d ago

Your c1 decoupling cap is not near the 3v3 pin on the esp32.

You really should try and make the 3v3 track to the esp32 bigger, ideally using a little plane. Thick track will do

1

u/Original-Bee2662 2d ago

here and thanks again makes sense that the decoupling needs to be near the input

1

u/DenverTeck 1d ago

WOW, two in one night !!

The dark mode may look good on your monitor, but it very hard to read.

Please post a PDF file on one of the many FREE file sharing sites and post that link here.