Tres piezas: - _arduino_board_flags lee <id>.build.board y <id>.build.cdc_on_boot de boards.txt (cache, mismo patron que _arduino_variant). - Cada compile escribe velxio_board.cmake (incluido OPTIONAL por el CMakeLists ANTES de project(), asi los defines llegan a TODOS los componentes — que Serial sea el CDC se decide dentro del core Arduino): ARDUINO_<BOARD> siempre que boards.txt lo nombre (los sketches de vendor hacen #ifdef ARDUINO_XIAO_ESP32S3), y ARDUINO_USB_CDC_ON_BOOT=1 + ARDUINO_USB_MODE=1 cuando cdc_on_boot=1. USB_MODE va FORZADO a 1 (HWCDC por USB-Serial-JTAG, la opcion de menu USBMode=hwcdc): el motor modela esa consola, no la pila OTG/TinyUSB. Ir por archivo y no por env hace el flag dependencia de configure: CMake reconfigura al cambiar. - CONFIG_ESP_CONSOLE_SECONDARY_NONE en el sdkconfig: sin ella el ROM/IDF espejan cada byte de log al USB y el monitor unico del emulador (que mezcla ambos streams) mostraria el log entero dos veces en builds CDC. |
||
|---|---|---|
| .. | ||
| app | ||
| board-indexes | ||
| scripts | ||
| sdk | ||
| tests | ||
| .env.example | ||
| Dockerfile | ||
| debug_qemu.py | ||
| mcp_server.py | ||
| mcp_sse_server.py | ||
| requirements.txt | ||