ESP32 USB-UART Connection – Custom Hardware Guide

esp32ttluartusb

I'm designing custom hardware based on the ESP32. I'm using Adafruit's ESP32 Huzzah as a reference. In the Adafruit design, an onboard CP2104 USB-to-UART chip is used, but I will be programming the ESP32 with an external USB-to-UART converter.

Unfortunately, my USB-to-UART converter does not have an RTS pin. It only has the DTR, RXD, TXD, VCC, CTS, and GND pins.

The attached circuit is the auto-programming circuit and I wish to add this to my custom board. What should I do in order to program the ESP32 given my situation?

enter image description here

**Update: I ended up getting the Adafruit CP2104 Friend board that has the RTS and DTR pins in addition to the other pins.

Best Answer

Your solution is the ESP-PROG from Espressif. It only uses GND, TX, RX (uart), EN and GPIO0. It will do the trick with the boot and reset buttons for you, automatically.

You don’t need the MMBT2222’s, only a header or TAG Connect (the latter can be connected directly to the ESP-PROG. It also saves components.

You can optionally feed your project trough the ESP-PROG (3.3V/5V), but i don’t use that myself.

ESP-Prog

6-pin TAG Connect

Retention for TAG Connect