FAQ
Q: Two COM ports appear in Device Manager. Which one should I select?
A: The board has an onboard CH334 USB hub. A single Type-C connection enumerates two independent COM ports, and either port can be used to flash programs.
With the USB cable connected, locate the two ports under Ports (COM & LPT) in Device Manager and distinguish them by their device names:
- The port whose name contains
USB-Enhanced-SERIAL CH343is the CH343 USB-to-UART interface. - The port whose name contains
EspressiforUSB JTAG/serial debug unitis the ESP32-S3 native USB interface, which can also be used for JTAG debugging.
To open Device Manager in Windows, right-click the Start menu in the lower-left corner of the desktop and select Device Manager. Alternatively, press Win + R, enter devmgmt.msc, and press Enter.
For a detailed comparison of the two interfaces, see Working with Arduino.
Q: Why does the board sometimes fail to connect to the serial port or fail to flash when I flash it again?
A: Use either of the following methods to put the board back into download mode:
- Press and hold the RESET button for more than 1 second, then release it. Wait for the computer to detect the device again before flashing.
- Press and hold the BOOT button, press and release the RESET button, and then release the BOOT button. The board enters download mode, which resolves most flashing failures.
Q: Why does flashing fail or the program behave unexpectedly after I replace the board with another one of the same model?
A: After replacing the board, the computer usually assigns different COM ports. Select the COM port and target chip again, then recompile and flash the program.
Q: Why does the detected serial device repeatedly reset and reconnect after the board is powered on?
A: This is usually caused by insufficient power from the USB port. Check the supply voltage of the computer's USB port. It should normally be above 4.9 V; below this value, the board may repeatedly disconnect. Switch to a USB port that provides sufficient power. Both USB interfaces on the board can operate normally.
Q: Why are the ESP-IDF controls missing from the VS Code status bar?
A: Press F1 to open the Command Palette and search for Espressif IDF. If the extension is marked as untrusted, set it to trusted so it can operate normally.
Q: Why can't I open the debugging interface when performing JTAG debugging?
A: Click the OpenOCD button in the VS Code status bar, stop OpenOCD, and then start it again.