velxio/backend/app/services
David Montero Crespo fcd83f7424 feat(espidf): the components Espressif's own board demos are built from
A header that lives in a registry component and is not on
_MANAGED_COMPONENT_INCLUDES dies at "No such file or directory": the
project template ships no idf_component.yml, so nothing fetches it. That
list covered five display/camera components, which left the pieces the
official Espressif board demos are actually made of unavailable —
verified by compiling a one-include probe for each against staging:

  led_strip.h            FAIL  (the C3-LCDkit knob_panel's WS2812 driver)
  iot_button.h           FAIL  (its BOOT/knob-press handling)
  iot_knob.h             FAIL  (its EC11 quadrature decoder)

esp_lcd_touch_gt911 (the P4 devkit's panel) and esp_codec_dev (every
audio demo on the VoCat and the P4) are added on the same grounds.

Anyone pasting code from esp-dev-kits or esp-bsp hit this on the first
line. Detection is unchanged — the dependency is declared only when the
source actually includes the header.

Tests: ManagedComponentDetectionTests in test_espidf_pure_mode.py, incl.
negative cases (a user's own my_led_strip.h must not match).
2026-08-24 06:11:24 +02:00
..
boot_images feat(pi): gpiozero core + boot feedback, terminal and upload UX 2026-06-22 20:21:06 +02:00
esp-idf-template fix(espidf): enable BLE 4.2 legacy APIs on BLE5-only SoCs 2026-08-15 04:19:21 +02:00
__init__.py
…
arduino_cli.py fix(compile): answer the Bluetooth error ourselves instead of pointing at an IDE menu 2026-08-22 04:38:31 +02:00
asm8080.py
…
asmz80.py
…
board_access.py
…
c_compile.py
…
chip_compile.py
…
esp32_flash_image.py
…
esp32_i2c_slaves.py
…
esp32_lib_bridge.py
…
esp32_lib_manager.py fix(micropython): release the raw REPL's answer instead of buffering it (#219) 2026-08-21 22:06:16 +02:00
esp32_sd_slave.py
…
esp32_signals.py
…
esp32_spi_slaves.py
…
esp32_worker.py fix(esp32): the emulated chip keeps its radio, whatever the scan thinks (#260) 2026-08-21 22:05:10 +02:00
esp_qemu_manager.py
…
espidf_compiler.py feat(espidf): the components Espressif's own board demos are built from 2026-08-24 06:11:24 +02:00
gpio_shim.py
…
qemu_manager.py feat(pi): techo de capacidad para los guests QEMU (multiusuario) 2026-07-29 21:15:04 +02:00
rom_compile.py
…
signal_router.py
…
stm32_lib_manager.py
…
stm32_worker.py sim: drive RP2040 + STM32 digital inputs from the real circuit 2026-06-26 22:05:24 +02:00
symbol_extract.py feat(intellisense): /type/ follows inheritance; extractor records bases and splits comma declarators 2026-08-17 19:08:57 +02:00
wasm_chip_runtime.py
…
wasm_chip_slave.py
…
wifi_status_parser.py
…