ESP32-S3 PCB Design Problems
-
- Posts: 10
- Joined: Wed Jun 01, 2022 11:41 pm
ESP32-S3 PCB Design Problems
Hello All,
I would like to thank anyone in advance for helping me solve my problems, if you can.
Recently I had tried to create my first PCB using the ESP32 S3 but in my smarts, I decided to not use the module but instead use the chip directly, which was the start of my problems. Then after designing a board to the hardware design guide, I got it made at JLCPCB and soldered it together. But then I ran into an issue, the spi chip has nothing flashed to it, not even a 2nd bootloader, and for some reason UART and JTAG over USB wasn't working either. It's not a power issue, because I can get a read of 3.3v on the multimeter to each pin. And its not soldering because the chip is on firm, so the only thing I can think of is that the eFuses are only tuned to work with JTAG on the pins, and the booloader is missing, so nothing can be uploaded.
Am I right or is there something else I can do?
How do I upload the 2nd bootloader?
Should I redesign my board or just use another uC? (I rather not do this though.)
Many Thanks
Oh and prerequest, here are the files:
I would like to thank anyone in advance for helping me solve my problems, if you can.
Recently I had tried to create my first PCB using the ESP32 S3 but in my smarts, I decided to not use the module but instead use the chip directly, which was the start of my problems. Then after designing a board to the hardware design guide, I got it made at JLCPCB and soldered it together. But then I ran into an issue, the spi chip has nothing flashed to it, not even a 2nd bootloader, and for some reason UART and JTAG over USB wasn't working either. It's not a power issue, because I can get a read of 3.3v on the multimeter to each pin. And its not soldering because the chip is on firm, so the only thing I can think of is that the eFuses are only tuned to work with JTAG on the pins, and the booloader is missing, so nothing can be uploaded.
Am I right or is there something else I can do?
How do I upload the 2nd bootloader?
Should I redesign my board or just use another uC? (I rather not do this though.)
Many Thanks
Oh and prerequest, here are the files:
Last edited by UnknownBot on Fri Jun 03, 2022 1:48 am, edited 1 time in total.
-
- Posts: 9764
- Joined: Thu Nov 26, 2015 4:08 am
Re: ESP32-S3 PCB Design Problems
The bootloader that allows for uploading via serial or USB of ESP32 chips is in ROM; it comes from the factory and cannot be erased or modified; given that the schematic you designed is correct, the setup you describe should allow you to upload and run a program. Could you share your schematic here? Perhaps there's something wrong with it.
-
- Posts: 10
- Joined: Wed Jun 01, 2022 11:41 pm
Re: ESP32-S3 PCB Design Problems
Hello there! Thanks for responding!
I'm honestly really new to ESP and PCB design but I have plenty of experience with stm32 and Kicad (weird but true).
Here are my files: I honestly want to note that this could also be a soldering error or the fact I bought the chip from Digikey so here's a picture of my board: The board has a melted button, my bad, I solder using a hot air gun, and I kept readjusting the chip.
Or this could just be me messing things up.
If you can just help me through my stupidity that would be amazing.
I'm honestly really new to ESP and PCB design but I have plenty of experience with stm32 and Kicad (weird but true).
Here are my files: I honestly want to note that this could also be a soldering error or the fact I bought the chip from Digikey so here's a picture of my board: The board has a melted button, my bad, I solder using a hot air gun, and I kept readjusting the chip.
Or this could just be me messing things up.
If you can just help me through my stupidity that would be amazing.
-
- Posts: 9764
- Joined: Thu Nov 26, 2015 4:08 am
Re: ESP32-S3 PCB Design Problems
That is a slightly crunchy board but I see no obvious soldering issues.
Let's start debugging this.
- Always measure your rails. Do you get a steady 3.3V on the output of the LDO?
- You seem to be missing the capacitor for the RC network on the CHIP_PU pin. Can you add an 1uF capacitor from that pin to ground? It's probably easiest to solder it to R1. Note that R1 seems to be a 0-om link; you'd have to change that to the 10K indicated in the schematic as well.
- Do you have an oscilloscope or something to make sure you are getting a 40MHz signal from the crystal?
Btw, we also sell modules (like the ESP32-S3-Wroom series) that make it way, way easier to get a working devboard... especially getting the antenna stuff right can be Deeper Magic which those modules solve for you.
Let's start debugging this.
- Always measure your rails. Do you get a steady 3.3V on the output of the LDO?
- You seem to be missing the capacitor for the RC network on the CHIP_PU pin. Can you add an 1uF capacitor from that pin to ground? It's probably easiest to solder it to R1. Note that R1 seems to be a 0-om link; you'd have to change that to the 10K indicated in the schematic as well.
- Do you have an oscilloscope or something to make sure you are getting a 40MHz signal from the crystal?
Btw, we also sell modules (like the ESP32-S3-Wroom series) that make it way, way easier to get a working devboard... especially getting the antenna stuff right can be Deeper Magic which those modules solve for you.
-
- Posts: 10
- Joined: Wed Jun 01, 2022 11:41 pm
Re: ESP32-S3 PCB Design Problems
You're absolutely right! I need to take out the reset switch and put in the 1 UF Capacitor to create the RC Circuit! I'll do that in a bit...
Yeah, although, my board is less crunchy than the previous prototype.
Yes the pins always read the correct voltage, I've been tested that since day 1.
I sadly don't have an oscilloscope, I haven't had much of a use of one until recently, and I'm practically broke, so I'll see where I can buy one.
I would use the module, which would make things 100 times easier but I'm pretty stubborn when it comes to electronics, so I always want to figure out the issue, so I don't make it again, or it will haunt me for years. (Wait, was that a Narnia Joke???)
I'm also going to do a few dummy checks that I probably should have done before going to the forum. Thanks for the suggestions by the way! I would have never caught that!
Yeah, although, my board is less crunchy than the previous prototype.
Yes the pins always read the correct voltage, I've been tested that since day 1.
I sadly don't have an oscilloscope, I haven't had much of a use of one until recently, and I'm practically broke, so I'll see where I can buy one.
I would use the module, which would make things 100 times easier but I'm pretty stubborn when it comes to electronics, so I always want to figure out the issue, so I don't make it again, or it will haunt me for years. (Wait, was that a Narnia Joke???)
I'm also going to do a few dummy checks that I probably should have done before going to the forum. Thanks for the suggestions by the way! I would have never caught that!
-
- Posts: 10
- Joined: Wed Jun 01, 2022 11:41 pm
Re: ESP32-S3 PCB Design Problems
Ok! I'm back!
Sorry for the delay. I have lots of projects to work on and so it took me a while to get back to this project.
After soldering the 10k Ohm resistor on to the board I realized that I don't have any extra 1uF caps lying around, so I wonder if I can do the following:
1. Desolder the 10k Ohm resistor to the Chip_PU is untouched.
2. Plug in power.
3. Hold down the flash button
4. Connect the Chip_pu to 3.3v
Hopefully that will put the chip into flash without the RC delay circuit. What do you think?
Sorry for the delay. I have lots of projects to work on and so it took me a while to get back to this project.
After soldering the 10k Ohm resistor on to the board I realized that I don't have any extra 1uF caps lying around, so I wonder if I can do the following:
1. Desolder the 10k Ohm resistor to the Chip_PU is untouched.
2. Plug in power.
3. Hold down the flash button
4. Connect the Chip_pu to 3.3v
Hopefully that will put the chip into flash without the RC delay circuit. What do you think?
-
- Posts: 9764
- Joined: Thu Nov 26, 2015 4:08 am
Re: ESP32-S3 PCB Design Problems
That more-or-less should work, but I'd go at it the other way: keep the 10K and do the following to get the thing into flash mode: force CHIP_PU low (using a wire or something), press flash, release CHIP_PU. The 10K will enable the ESP32 and it should run.
-
- Posts: 10
- Joined: Wed Jun 01, 2022 11:41 pm
Re: ESP32-S3 PCB Design Problems
Whelp screw it, i'm going to design another board, the test did not work although something happened. The regulator died randomly but before that, I saw some activity on the Uart Tx pin on my USB to Uart adapter, maybe meaning the test would of worked if I hadn’t done so much with the chip? Anyways, I have the kicad files below in which I fixed a lot of errors including:
Increasing length of Crystal pads
Adding hatched ground pour
Adding direction signifiers to chip footprint
Decreasing size of ESP32 Ground pad
Adding Integrated USB to UART adapter
Adding RC Circuit
Adding Flash Switch
Decreasing number of exposed GPIO pins
Decreasing number of decoupling capacitors
Switch to different Crystal
Taking out RTC Crystal
Applied 3.3v to SPI Flash instead of VDD_SPI
Adding LEDs on power lines and UART lines
Rearranging the components to one side of the board.
If you could take a look at them please and tell me if I am missing anything, that would be great. If not, I appreciate what you have done. Also I still want to figure out what is wrong with my board. My prevailing theory is that the chip has melted due to the number of times I have resoldered it, and also the fact that I solder using a 1000 F heat gun (537.7 C). Next time I am just going to use a hot bed to solder
Increasing length of Crystal pads
Adding hatched ground pour
Adding direction signifiers to chip footprint
Decreasing size of ESP32 Ground pad
Adding Integrated USB to UART adapter
Adding RC Circuit
Adding Flash Switch
Decreasing number of exposed GPIO pins
Decreasing number of decoupling capacitors
Switch to different Crystal
Taking out RTC Crystal
Applied 3.3v to SPI Flash instead of VDD_SPI
Adding LEDs on power lines and UART lines
Rearranging the components to one side of the board.
If you could take a look at them please and tell me if I am missing anything, that would be great. If not, I appreciate what you have done. Also I still want to figure out what is wrong with my board. My prevailing theory is that the chip has melted due to the number of times I have resoldered it, and also the fact that I solder using a 1000 F heat gun (537.7 C). Next time I am just going to use a hot bed to solder
-
- Posts: 10
- Joined: Wed Jun 01, 2022 11:41 pm
Re: ESP32-S3 PCB Design Problems
Whoops forgot to include the files:
-
- Posts: 9764
- Joined: Thu Nov 26, 2015 4:08 am
Re: ESP32-S3 PCB Design Problems
I quickly looked at it, it seems OK. You may want to either add an auto-reset circuit (if your USB-serial chip has DTR/RTS outputs) or add a button on the RESET line, otherwise you'll be pulling the USB lead every time you need to reprogram the thing. (Or you can use the S3 internal USB to reprogram it, but why include the USB-serial chip then?)
Also, technically you'll need that pi network at the antenna output, but from what I understand you can only find the values needed there using HF measuring stuff... if you don't have that and are OK with yolo'ing that, I can understand replacing it with a zero-ohm link.
Also, technically you'll need that pi network at the antenna output, but from what I understand you can only find the values needed there using HF measuring stuff... if you don't have that and are OK with yolo'ing that, I can understand replacing it with a zero-ohm link.
Who is online
Users browsing this forum: acsoprana and 50 guests