From f9a2c44389811f788dadeb8ef6219f5174b5507b Mon Sep 17 00:00:00 2001 From: Oliver Panacek Date: Mon, 11 May 2026 01:38:26 +0200 Subject: [PATCH] Add ESP32 module schematic tutorial --- docs/tutorials/esp32-module-schematic.mdx | 276 ++++++++++++++++++++++ 1 file changed, 276 insertions(+) create mode 100644 docs/tutorials/esp32-module-schematic.mdx diff --git a/docs/tutorials/esp32-module-schematic.mdx b/docs/tutorials/esp32-module-schematic.mdx new file mode 100644 index 0000000..404df1e --- /dev/null +++ b/docs/tutorials/esp32-module-schematic.mdx @@ -0,0 +1,276 @@ +--- +title: ESP32 Module Schematic +description: Build a schematic-only ESP32-WROOM style module circuit with USB power, USB-UART programming, reset, boot, and strapping resistors. +--- + +import CircuitPreview from "@site/src/components/CircuitPreview"; + +This tutorial builds a schematic-only ESP32 module circuit similar to the +minimum system around an ESP32-WROOM module. The goal is to show the electrical +blocks clearly before doing any PCB placement or RF layout work. + +The circuit includes: + +- USB-C 5 V input +- A 3.3 V regulator and bulk/decoupling capacitors +- An ESP32-WROOM style module symbol +- A CP2102N-style USB-UART bridge +- EN reset and IO0 boot buttons +- Pullups and pulldowns for the common boot strapping pins + +:::tip +This is intentionally a schematic-first example. Before manufacturing a board, +copy the exact module, USB-UART bridge, regulator, and antenna layout guidance +from the vendor datasheets. +::: + +## Complete Schematic + + ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +) +`} +/> + +## How the Blocks Fit Together + +### USB-C Input + +`J1` brings in `VBUS_5V`, `USB_DP`, `USB_DM`, and the two CC pins. The two +5.1 k resistors on `CC1` and `CC2` advertise the board as a USB device that +wants 5 V from a USB-C host or charger. + +### 3.3 V Rail + +The ESP32 module and USB-UART bridge both run from `V3_3`. The regulator input +and output capacitors keep the rail stable, while the extra 100 nF capacitors +show the local bypass capacitors that should be placed near the IC power pins in +a PCB layout. + +### USB-UART Programming + +The CP2102N-style bridge converts USB data to `UART_TX` and `UART_RX`. Those nets +cross into the ESP32 module as `RXD0` and `TXD0`, which is the serial bootloader +interface used for flashing firmware. + +### Reset and Boot + +`EN` has a 10 k pullup and a small capacitor to ground for power-on reset. The +reset button pulls `ESP_EN` low manually. `IO0` has a pullup and a boot button +that pulls it low, putting the ESP32 into its serial bootloader when reset. + +The two small NPN transistors show the common auto-reset circuit used by USB-UART +bridges. Host tools can toggle `DTR` and `RTS` so firmware uploads do not require +pressing both buttons by hand. + +### Strapping Pins + +`IO2`, `IO5`, `IO12`, and `IO15` are represented with explicit pull resistors so +the schematic makes the boot-mode assumptions visible. Check the datasheet for +the exact ESP32 variant before changing these values or reusing the pattern on a +custom module. + +## PCB Follow-up Checklist + +Before turning this schematic into a PCB: + +- Use the exact ESP32 module footprint and keepout from the module vendor. +- Keep copper, ground pours, and tall components out of the antenna keepout. +- Place regulator and ESP32 decoupling capacitors close to the relevant pins. +- Route USB D+ and D- as a controlled differential pair when possible. +- Confirm the EN, IO0, and strapping resistor values against the module + datasheet. +- Add ESD protection on USB for production hardware.