← index #18213Issue #8640
Related · medium · value 1.481
QUERY · ISSUE

ESP32C6: USB not in board.json `features` but GPIO pins are disabled anyway

openby smurfixopened 2025-10-05updated 2025-10-08
enhancementport-esp32

Description

IMHO the default value for MICROPY_HW_ESP_USB_SERIAL_JTAG should be "is the USB feature turned on in the board.json file".

An even better default might be "micropython checks the EFuse flags and enables the pins iff these flags are set".

The relevant efuse bits are DIS_PAD_JTAG and DIS_USB_JTAG, see tech manual 9.2.4 "JTAG Signal Source Control" page 378/379.

Code Size

No response

Implementation

I would like to sponsor development of this feature

Code of Conduct

Yes, I agree

CANDIDATE · ISSUE

ESP32-C3 CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG=y disables repl on USB

closedby bdambrosioopened 2022-05-06updated 2022-05-06

On my ESP32-C3 boards (AI-Thinker, Espressif esp32-c3 devkit, and Espressif esp32-c3-wroom), I could only get repl on the uart RX/TX pins using the default GENERIC_C3_USB board defs.

I had to change to
CONFIG_ESP_CONSOLE_UART_DEFAULT=y
CONFIG_ESP_CONSOLE_USB_CDC=y
CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG=

and now I get repl on the USB.
Shouldn't this be the default, or am I missing something?

Keyboard

j / / n
next pair
k / / p
previous pair
1 / / h
show query pane
2 / / l
show candidate pane
c
copy suggested comment
r
toggle reasoning
g i
go to index
?
show this help
esc
close overlays

press ? or esc to close

copied