Built-in JTAG is unable to automatically flash on ESP32-C3-DevKitC-02
Posted: Wed Mar 22, 2023 10:17 am
Hello.
I'm using ESP32-C3-DevKitC-02 development board with ESP32-C3 (rev. 0.3) with ESP-IDF Stable v 5.0.1 (all operations are performed in ESP-IDF Windows Command Prompt).
I want to flash the example blinky project using built-in JTAG capabilities. To do that I made a custom USB-cable and connected its header to the DevKit board as follows:
GPIO18 -> USB_D-
GPIO19 -> USB_D+
G -> GND
The other end of the cable is a USB-A flat connector, which is connected to the PC with Windows 10.
A new COM-port (later referred as COM-JTAG) is discovered in Windows' Device Manager and appears everytime I connect the header to DevKit board.
When I press and hold RST button, the COM-JTAG port disappears and re-appears when the RST button is released. I assume this is a normal behaviour.
Now, in order to flash (according to https://docs.espressif.com/projects/esp ... nsole.html):
which hangs for several seconds on the line 'Serial port COM37' and then returns an error "A serial exception error occurred: Write timeout".
At the same time I still can flash the device with the UART0 COM-port.
Then I entered the boot mode (held Boot button and pressed RST button) and this time command
worked and device was programmed successfully. The last message that appeared after flashing was:
Once in the user app, flashing using COM-JTAG wouldn't work again.
Documentation specifically states that the USB Serial/JTAG Controller is able to put the ESP32-C3 into download mode automatically (without UART's RTS/DTS signals), which is not what's happening.
I'm using ESP32-C3-DevKitC-02 development board with ESP32-C3 (rev. 0.3) with ESP-IDF Stable v 5.0.1 (all operations are performed in ESP-IDF Windows Command Prompt).
I want to flash the example blinky project using built-in JTAG capabilities. To do that I made a custom USB-cable and connected its header to the DevKit board as follows:
GPIO18 -> USB_D-
GPIO19 -> USB_D+
G -> GND
The other end of the cable is a USB-A flat connector, which is connected to the PC with Windows 10.
A new COM-port (later referred as COM-JTAG) is discovered in Windows' Device Manager and appears everytime I connect the header to DevKit board.
When I press and hold RST button, the COM-JTAG port disappears and re-appears when the RST button is released. I assume this is a normal behaviour.
Now, in order to flash (according to https://docs.espressif.com/projects/esp ... nsole.html):
So I typed in the command:The USB Serial/JTAG Controller is able to put the ESP32-C3 into download mode automatically. Simply flash as usual, but specify the USB Serial/JTAG Controller port on your system: idf.py flash -p PORT where PORT is the name of the proper port.
Code: Select all
idf.py -p COM37 flash
At the same time I still can flash the device with the UART0 COM-port.
Then I entered the boot mode (held Boot button and pressed RST button) and this time command
Code: Select all
idf.py -p COM37 flash
However device didn't reset and I assume stayed in the bootloader. Only pressing the RST button would reset the device into the user app.Leaving...
Hard resetting via RTS pin...
Done
Once in the user app, flashing using COM-JTAG wouldn't work again.
Documentation specifically states that the USB Serial/JTAG Controller is able to put the ESP32-C3 into download mode automatically (without UART's RTS/DTS signals), which is not what's happening.