I'm using Arduino 2.3.6, ESP33 board manager 3.3.2.
I made a custom board and followed guide here:
https://docs.espressif.com/projects/esp ... ction.html
ESP Pin Serial Pin
EN --> RTS
GPIO0 --> DTR
When Open the Serial Monitor in Arduino, it pulls the Reset down to GND, and does not release. So I am unable to get serial connection, or any board activity for that matter.
Is there a way to have the RTS pin not stay pulled down when the serial connection is opened?
ESP-32S3 in RESET mode when Serial Monitor Open
-
lbernstone
- Posts: 1132
- Joined: Mon Jul 22, 2019 3:20 pm
Re: ESP-32S3 in RESET mode when Serial Monitor Open
I think their explanation there is pretty poor. The development kits include a couple transistors to help the DTR/RTS behavior do the right thing. In practice, I have found it pretty much impossible to not also have a switch on the reset (aka CHIP_PU) line. If you have never made an ESP32-based board before, I'd recommend you examine the whole devkit schematic as well as the hardware design guidelines which talks about the timing circuit needed on CHIP_PU.
- Attachments
-
- Screenshot from 2025-11-02 08-49-58.png (21.25 KiB) Viewed 4559 times
Re: ESP-32S3 in RESET mode when Serial Monitor Open
I've made several boards with ESP8266 and ESP32. This new one is the first ESP32-S3. I have never had a problem wiring directly, it seems to be the preferred method per the documentation. The extra transistor circuit seems to be for outlying software stacks like Linux.
Some OS and/or drivers may activate RTS and or DTR automatically when opening the serial port (true only for some serial terminal programs, not esptool), pulling them low together and holding the ESP in reset. If RTS is wired directly to EN then RTS/CTS “hardware flow control” needs to be disabled in the serial program to avoid this. An additional circuitry is implemented in order to avoid this problem - if both RTS and DTR are asserted together, this doesn’t reset the chip. The schematic shows this specific circuit with two transistors and its truth table.
Arduino is using esptool, so I dont know why this is happening.
FYI, board is using CH340C
Some OS and/or drivers may activate RTS and or DTR automatically when opening the serial port (true only for some serial terminal programs, not esptool), pulling them low together and holding the ESP in reset. If RTS is wired directly to EN then RTS/CTS “hardware flow control” needs to be disabled in the serial program to avoid this. An additional circuitry is implemented in order to avoid this problem - if both RTS and DTR are asserted together, this doesn’t reset the chip. The schematic shows this specific circuit with two transistors and its truth table.
Arduino is using esptool, so I dont know why this is happening.
FYI, board is using CH340C
-
MicroController
- Posts: 2667
- Joined: Mon Oct 17, 2022 7:38 pm
- Location: Europe, Germany
Re: ESP-32S3 in RESET mode when Serial Monitor Open
Notice that the S3 has a USB/CDC peripheral built-in. You can connect it directly to USB without a USB-serial converter, which also avoids any issues with RTS/DTR signals.This new one is the first ESP32-S3
...
FYI, board is using CH340C
Who is online
Users browsing this forum: Google [Bot] and 3 guests