Okay this is my first try in making a custom board with ESP32. (Or any IC for that matter)
I'm using the S3-MINI-1U and I'm a little unsure about which GPIOs are best to use and which need to be left alone.
Also I'm unsure if I missed something cruzial to make it work correctly?
Here my first setup (see image)
EN + GPIO0 : pullup resistor and reset buttons to ground.
RX/TX : to UART connector (RX also connected to MIDI interface )
Analog inputs
GPIO4 : Pushbutton
GPIO6 : Pushbutton
GPIO8 : Potentiometer
GPIO10: Voltage Measurer (VCC in divided down to max 3V)
SPI
GPIO48 : SPI CLock
GPIO38 : SDI
GPIO13-18 : Chip Select (x6)
Other outputs
GPIO26 : LED
GPIO33 : LED
GPIO35 : Relay control out
ESP32-S3-MINI-1U - safe GPIO choices?
Re: ESP32-S3-MINI-1U - safe GPIO choices?
It looks like you're off to a good start with your design, but there are a few things worth adjusting, especially regarding GPIO usage and ensuring stability. The ESP32-S3-MINI-1U has some specific GPIOs that are best left alone. Here are a few suggestions:
1. GPIOs to avoid
GPIO6-11: These pins are typically reserved for internal flash SPI communication. Using them (like GPIO6 and GPIO10 for analog inputs) might cause instability or boot issues.
GPIO12: This pin can cause boot problems if it's high during startup.
GPIO0: You’ve set it up with a pull-up and reset, which is correct, but be mindful that this pin is used for boot mode selection. Use it carefully in your design.
2. Analog inputs (ADC)
Replace GPIO6, GPIO8, and GPIO10 with other pins that are safer for analog inputs. For example, GPIO36 and GPIO39 are great choices for ADC and won’t interfere with internal functionality.
3. SPI
Your SPI setup looks fine. You're using dedicated GPIOs for SPI, and GPIO48 for the SPI clock is a correct choice.
4. Other outputs
GPIO26, GPIO33, and GPIO35 are safe choices and should work well for LEDs and relay control.
5. Additional tips
Decoupling capacitors: Make sure you’ve added 0.1 µF capacitors close to the VCC and GND pins for proper power supply filtering.
Grounding: Ensure a solid ground connection, especially for SPI and analog inputs, to minimize noise.
Programming setup: If you're using UART for flashing, double-check that your auto-reset circuit (EN and GPIO0 connected to DTR and RTS of the programmer) is correctly wired.
Summary
Change GPIO6, GPIO8, and GPIO10 for something more suitable, and the rest of your setup looks promising! Let us know how it goes!
-
- Posts: 3
- Joined: Fri Nov 22, 2024 9:44 pm
Re: ESP32-S3-MINI-1U - safe GPIO choices?
Thank you!
Okay I'll stay away from GPIO 6 - 11
I guess I could use GPIO 2-5 for the analog inputs then. The only reason only used even inputs was that on my Arduino Nano ESP32, I had trouble reading two analog inputs next to each other. I skipped one and it worked.
Then you mention the auto-reset circuit (EN and GPIO0 connected to DTR and RTS of the programmer) is correctly wired.
This one i couldn't fint any examples for. Do I need to make a pin connection available from the EN and GPIO0 to the pinout, so that the programmer can access them? I plan to use something like the one below.
I'm not sure how the connection should be. Right from the EN/GPIO0 output directly to the pinout -> programmer?
Okay I'll stay away from GPIO 6 - 11
I guess I could use GPIO 2-5 for the analog inputs then. The only reason only used even inputs was that on my Arduino Nano ESP32, I had trouble reading two analog inputs next to each other. I skipped one and it worked.
Then you mention the auto-reset circuit (EN and GPIO0 connected to DTR and RTS of the programmer) is correctly wired.
This one i couldn't fint any examples for. Do I need to make a pin connection available from the EN and GPIO0 to the pinout, so that the programmer can access them? I plan to use something like the one below.
I'm not sure how the connection should be. Right from the EN/GPIO0 output directly to the pinout -> programmer?
-
- Posts: 3
- Joined: Fri Nov 22, 2024 9:44 pm
Re: ESP32-S3-MINI-1U - safe GPIO choices?
This one told me something different:
https://www.revk.uk/2023/08/esp32-s3-mini-1-gpio.html
I suppose it's very important to know exactly what version of ESP32 we're working with..
This one says be careful with GPIO0 (boot mode),19 and 20 (USB data) and also 26,43,44,46 (3 and 45)
And then I'll try using the D-/D+ for USB flashing instead of Serial UART, seems a lot less complicated.
Let me know if I'm making an obvious mistake
https://www.revk.uk/2023/08/esp32-s3-mini-1-gpio.html
I suppose it's very important to know exactly what version of ESP32 we're working with..
This one says be careful with GPIO0 (boot mode),19 and 20 (USB data) and also 26,43,44,46 (3 and 45)
And then I'll try using the D-/D+ for USB flashing instead of Serial UART, seems a lot less complicated.
Let me know if I'm making an obvious mistake
Who is online
Users browsing this forum: No registered users and 50 guests