From f318b0611660d3b34e6ed1cd4c00b172e1ada455 Mon Sep 17 00:00:00 2001 From: David Montero Crespo Date: Mon, 27 Jul 2026 16:36:00 +0200 Subject: [PATCH] feat(espidf): fijar CONFIG_ARDUINO_VARIANT en la plantilla de sdkconfig Sin esta linea la variante se queda en el nombre del chip, asi que TODA placa compila como dev-kit generico y variants//pins_arduino.h nunca entra en el include path: los nombres propios de la placa (D0..D10 en una XIAO, la serigrafia de las M5) sencillamente no existen. Justo los sketches que la gente copia de la wiki del fabricante. El helper que deriva la variante del FQBN leyendo boards.txt ya estaba; faltaba la plantilla que la consume. Sigue pendiente rellenar 'arduinoVariant' en normalized para que surta efecto (ver F7.6 en velxio-prod). --- .../app/services/esp-idf-template/sdkconfig.defaults.in | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/backend/app/services/esp-idf-template/sdkconfig.defaults.in b/backend/app/services/esp-idf-template/sdkconfig.defaults.in index 0128b07c..1d9d9c00 100644 --- a/backend/app/services/esp-idf-template/sdkconfig.defaults.in +++ b/backend/app/services/esp-idf-template/sdkconfig.defaults.in @@ -63,6 +63,14 @@ CONFIG_AUTOSTART_ARDUINO=n # Which core Arduino's setup/loop and event task run on. Both default to # core 1 (matches Arduino IDE) but the user can pin them independently. +# Which board variant Arduino builds against. This is what puts +# variants//pins_arduino.h on the include path, and therefore what +# makes the board's own pin names (D0..D10 on a XIAO, the M5 silk names, ...) +# exist at all. Left at its default it is just the chip name, so every board +# compiles as a generic dev-kit and any sketch copied from a vendor's wiki +# fails on its very first pin macro. +CONFIG_ARDUINO_VARIANT="${ARDUINO_VARIANT}" + CONFIG_ARDUINO_RUNNING_CORE=${ARDUINO_RUNNING_CORE} CONFIG_ARDUINO_EVENT_RUNNING_CORE=${ARDUINO_EVENT_RUNNING_CORE}