ESP32-S3 USB-C Dev Board

Minimal ESP32-S3 module breakout with USB-C, BOOT/RST buttons, and 3.3 V LDO.

Difficulty: Surface-mount. Estimated build time: about 120 minutes. Estimated parts cost: about US$10.00. 10-line bill of materials. Compare supplier offers when available. A minimal development board for the ESP32-S3-WROOM-1 module, the successor to the original ESP32 with a faster Xtensa LX7 core, native USB, and more GPIO.

Solder the USB-C connector

Apply solder paste to the USB-C footprint pads. The connector has large outer pads for mechanical retention and small signal pads in the center. Reflow with hot air at 300–350 °C. Inspect the signal pads under magnification; bridges on the differential pair pins (D+/D−) are common. Solder the 5.1 kΩ CC pull-down resistors (CC1 and CC2 to GND) before testing—without them the host will not negotiate 5 V power delivery.

Solder the LDO and filter capacitors

Solder the AMS1117-3.3 (or ME6211 SOT-23-5) LDO with its input connected to VBUS (5 V from USB-C), output to the 3.3 V rail, and GND to common ground. Place a 10 µF electrolytic or ceramic capacitor on the LDO input and a 10 µF on the output—check the specific LDO datasheet for its output capacitance requirements to avoid oscillation.

Solder the ESP32-S3 module

Apply paste to the castellated pad footprint. Align pin 1 carefully—misalignment by even half a pitch will bridge pads. Reflow with hot air directed at the castellated edges. Drag-soldering with an iron is also viable; work quickly and use flux. Place 100 nF decoupling capacitors on each 3.3 V supply pin of the module as shown in the Espressif WROOM-1 hardware design guidelines.

Fit BOOT and RST buttons

Solder two momentary tactile switches. BOOT connects GPIO0 to GND when pressed. RST connects EN to GND when pressed. Both need a 10 kΩ pull-up to 3.3 V in the default high state—check if your chosen LDO circuit already provides this, or add explicit pull-ups. Wire the native USB D+ (GPIO20) and D− (GPIO19) pins directly to the USB-C connector D+/D− pads.

First program and verify

Connect a USB-C cable to the board. Hold BOOT, press and release RST, then release BOOT—this puts the ESP32-S3 in download mode. In Arduino IDE with the ESP32S3 Dev Module board selected, upload a blink sketch to GPIO48 (the onboard RGB LED on reference DevKit boards) or any GPIO you have broken out. If the USB port is not recognised, confirm the CC resistors are soldered correctly. If upload fails, re-check the BOOT pin pull-down is making contact.