Safe and Unsafe pins in ESP32 and ESP32-S3
I kept using the wrong pin on ESP32 and S3 while working with them, so here is my go-to chart of pins on ESP32-S3 on the left and ESP32 on the right.
All the pins marked with green are GOOD, reds are NO-GOs and oranges are either Input-only or Output-only or have some limitations, like could be used only with certain conditions met.
Explanation Video on YouTube
ESP-32-S3
Following is the list of all usable pins on an ESP-32-S3 module. The chart includes all usable pins in green, unusable in red, and restricted ones in orange. The gray ones are other pins, I will update them appropriately as we progress.
Unusable ESP32-S3 Pins
GPIO6 to GPIO13 are used for internal flash. Depending on what you choose dual, quad, or octal SPI mode, you could partly use those pins from the higher end.
Conditionally usable ESP32-S3 Pins
GPIO2, GPIO5, and GPIO15 are strapping pins.
GPIO35 to GPIO39 are used for Octal Mode SPI, if you are using dual or quad SPI they can be usable.
ESP-32-S3 on an AI-thinker ESP-32 Breakout board
The following Chart/diagram shows the pin out of the AI-Thinker ESP-32 Breakout board, along with the usability of all GPIO pins of the ESP-32-S3 module. You can use the same board for most WROOM modules except for C3 ones.