/** * Official Curated Database: ESP Component Registry & IDF Component Manager * * The ESP Component Registry (https://components.espressif.com) is the central * distribution ecosystem for modular libraries targeting ESP-IDF v4.4+ / v5.x+. */ export const CATEGORIAS_COMPONENTES = [ { id: "todos", nome: "All Components", icone: "Layers", descricao: "Explore the curated catalog of libraries and drivers" }, { id: "ui_display", nome: "UI, Displays & Graphics", icone: "Monitor", descricao: "Graphics libraries (LVGL), LCD/OLED display drivers, touch controllers and decoders" }, { id: "cloud_conectividade", nome: "Cloud & Connectivity", icone: "Cloud", descricao: "ESP RainMaker, AWS IoT, MQTT, WebSockets, Mesh-Lite and ESP-Hosted coprocessing" }, { id: "audio_voz_ia", nome: "Audio, Voice & AI", icone: "Brain", descricao: "ESP-SR speech recognition, DSP processing, audio codecs, DVP cameras and TinyML" }, { id: "smart_home_mesh", nome: "Smart Home & Mesh", icone: "Home", descricao: "Matter SDK, Zigbee 3.0 (ZBOSS) stacks, Thread and ESP-NOW networks" }, { id: "drivers_perifericos", nome: "Drivers & Sensors", icone: "Cpu", descricao: "Buttons, encoders, RGB LEDs, Ethernet (W5500/CH390), native USB and environmental/IMU sensors" }, { id: "bsp_placas", nome: "BSPs (Board Support Packages)", icone: "CircuitBoard", descricao: "Direct board support packages for official boards like ESP-BOX-3, Korvo, EYE and M5Stack" }, { id: "sistema_utilitarios", nome: "System & Utilities", icone: "Wrench", descricao: "LittleFS file systems, modern C++ wrappers, CBOR and networking utilities" } ]; export const COMPONENTES_REGISTRY = [ // ========================================== // 1. UI, Displays & Graphics // ========================================== { id: "espressif-esp_lvgl_port", namespace: "espressif", name: "esp_lvgl_port", versao: "^2.4.0", categoria: "ui_display", oficial: true, popular: true, titulo: "ESP LVGL Port", descricao: "Official thread-safe LVGL (Light and Versatile Graphics Library) port for ESP-IDF with hardware acceleration and multi-display support.", tags: ["LVGL", "GUI", "Display", "Touch", "HMI"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-P4", "ESP32-C3", "ESP32-C6"], dependenciasSugeridas: ["lvgl/lvgl^9.1.0"], urlRegistry: "https://components.espressif.com/components/espressif/esp_lvgl_port", urlRepo: "https://github.com/espressif/esp-bsp/tree/master/components/esp_lvgl_port", exemploYaml: `dependencies: espressif/esp_lvgl_port: "^2.4.0" lvgl/lvgl: "^9.1.0"` }, { id: "lvgl-lvgl", namespace: "lvgl", name: "lvgl", versao: "^9.1.0", categoria: "ui_display", oficial: false, popular: true, titulo: "LVGL Graphics Library Core", descricao: "Most popular open-source C graphics library for embedded systems. Provides rich widgets, smooth animations, and modern layout support.", tags: ["LVGL 9", "Graphics", "Widgets", "GUI", "Embedded UI"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-P4", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/lvgl/lvgl", urlRepo: "https://github.com/lvgl/lvgl", exemploYaml: `dependencies: lvgl/lvgl: "^9.1.0"` }, { id: "espressif-esp32_display_panel", namespace: "espressif", name: "esp32_display_panel", versao: "^0.2.0", categoria: "ui_display", oficial: true, popular: true, titulo: "ESP32 Display Panel Driver", descricao: "Unified driver for LCD controllers (RGB, SPI, QSPI, MIPI-DSI) and capacitive touch panels tailored for ESP32-S3 and ESP32-P4.", tags: ["LCD", "MIPI-DSI", "QSPI", "Touch", "ST7789", "ILI9341"], chips: ["ESP32-S3", "ESP32-P4", "ESP32-S2", "ESP32"], urlRegistry: "https://components.espressif.com/components/espressif/esp32_display_panel", urlRepo: "https://github.com/esp-arduino-libs/ESP32_Display_Panel", exemploYaml: `dependencies: espressif/esp32_display_panel: "^0.2.0"` }, { id: "espressif-esp_lcd_touch", namespace: "espressif", name: "esp_lcd_touch", versao: "^1.1.2", categoria: "ui_display", oficial: true, popular: true, titulo: "ESP LCD Touch Framework", descricao: "Core touch panel abstraction component for LCDs. Supports coordinate calibration, multi-touch tracking, and direct LVGL integration.", tags: ["Touchscreen", "Capacitive", "Resistive", "I2C Touch", "Coordinates"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-P4", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/esp_lcd_touch", urlRepo: "https://github.com/espressif/esp-iot-solution/tree/master/components/display/touch_panel/esp_lcd_touch", exemploYaml: `dependencies: espressif/esp_lcd_touch: "^1.1.2"` }, { id: "espressif-esp_lcd_touch_gt911", namespace: "espressif", name: "esp_lcd_touch_gt911", versao: "^1.1.2", categoria: "ui_display", oficial: true, popular: true, titulo: "GT911 Capacitive Touch Driver", descricao: "Specialized I2C driver for Goodix GT911 capacitive touch controllers, widely used in 4.3\", 5.0\", and 7.0\" LCD modules.", tags: ["GT911", "Goodix", "Touch I2C", "Capacitive"], chips: ["ESP32", "ESP32-S3", "ESP32-P4", "ESP32-S2"], dependenciasSugeridas: ["espressif/esp_lcd_touch^1.1.2"], urlRegistry: "https://components.espressif.com/components/espressif/esp_lcd_touch_gt911", urlRepo: "https://github.com/espressif/esp-iot-solution/tree/master/components/display/touch_panel/esp_lcd_touch_gt911", exemploYaml: `dependencies: espressif/esp_lcd_touch_gt911: "^1.1.2" espressif/esp_lcd_touch: "^1.1.2"` }, { id: "espressif-esp_lcd_touch_ft5x06", namespace: "espressif", name: "esp_lcd_touch_ft5x06", versao: "^1.1.2", categoria: "ui_display", oficial: true, popular: false, titulo: "FocalTech FT5x06 / FT6x36 Touch Driver", descricao: "Capacitive touch panel driver for FocalTech controllers commonly integrated into maker displays and development modules.", tags: ["FT6236", "FT5406", "Touchscreen", "I2C"], chips: ["ESP32", "ESP32-S3", "ESP32-C3"], dependenciasSugeridas: ["espressif/esp_lcd_touch^1.1.2"], urlRegistry: "https://components.espressif.com/components/espressif/esp_lcd_touch_ft5x06", urlRepo: "https://github.com/espressif/esp-iot-solution/tree/master/components/display/touch_panel/esp_lcd_touch_ft5x06", exemploYaml: `dependencies: espressif/esp_lcd_touch_ft5x06: "^1.1.2"` }, { id: "espressif-esp_jpeg", namespace: "espressif", name: "esp_jpeg", versao: "^1.0.5", categoria: "ui_display", oficial: true, popular: true, titulo: "ESP JPEG Decoder (TJpgDec)", descricao: "High-speed JPEG decoder and encoder optimized with assembly and SIMD instructions for rapid rendering on RGB and SPI displays.", tags: ["JPEG", "TJpgDec", "Image Decoder", "Display", "SIMD"], chips: ["ESP32", "ESP32-S3", "ESP32-P4"], urlRegistry: "https://components.espressif.com/components/espressif/esp_jpeg", urlRepo: "https://github.com/espressif/esp-jpeg", exemploYaml: `dependencies: espressif/esp_jpeg: "^1.0.5"` }, // ========================================== // 2. Cloud & Connectivity // ========================================== { id: "espressif-esp_rainmaker", namespace: "espressif", name: "esp_rainmaker", versao: "^1.4.0", categoria: "cloud_conectividade", oficial: true, popular: true, titulo: "ESP RainMaker Agent", descricao: "Official firmware agent for Espressif's serverless AIoT cloud platform. Handles dynamic data modeling, OTA, and mobile app integration.", tags: ["RainMaker", "AWS IoT", "Cloud", "App Control", "Zero-Code-Backend"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6"], dependenciasSugeridas: ["espressif/net_connect^0.1.0"], urlRegistry: "https://components.espressif.com/components/espressif/esp_rainmaker", urlRepo: "https://github.com/espressif/esp-rainmaker", exemploYaml: `dependencies: espressif/esp_rainmaker: "^1.4.0"` }, { id: "espressif-mesh_lite", namespace: "espressif", name: "mesh_lite", versao: "^1.0.2", categoria: "cloud_conectividade", oficial: true, popular: true, titulo: "ESP Mesh-Lite Network Stack", descricao: "Lightweight Wi-Fi mesh network where every node maintains IP connectivity, communicating directly with local servers or cloud platforms.", tags: ["Mesh-Lite", "Wi-Fi Mesh", "IoT Network", "No-Gateway"], chips: ["ESP32", "ESP32-C3", "ESP32-S3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/mesh_lite", urlRepo: "https://github.com/espressif/esp-mesh-lite", exemploYaml: `dependencies: espressif/mesh_lite: "^1.0.2"` }, { id: "espressif-esp_modbus", namespace: "espressif", name: "esp_modbus", versao: "^2.0.0", categoria: "cloud_conectividade", oficial: true, popular: true, titulo: "ESP-Modbus Industrial Stack", descricao: "Complete industrial Modbus stack (Master/Slave) over Serial RS485 (RTU/ASCII) and Ethernet/Wi-Fi (TCP) for PLC and SCADA integration.", tags: ["Modbus RTU", "Modbus TCP", "RS485", "PLC", "Industrial IoT"], chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-P4"], urlRegistry: "https://components.espressif.com/components/espressif/esp_modbus", urlRepo: "https://github.com/espressif/esp-modbus", exemploYaml: `dependencies: espressif/esp_modbus: "^2.0.0"` }, { id: "espressif-net_connect", namespace: "espressif", name: "net_connect", versao: "^0.1.1", categoria: "cloud_conectividade", oficial: true, popular: false, titulo: "Network Connect Helper", descricao: "Unified helper module to establish and monitor Wi-Fi, Ethernet, and Thread connections with automatic reconnection and event callbacks.", tags: ["Wi-Fi Connect", "Ethernet", "Thread", "Network Manager"], chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/net_connect", urlRepo: "https://github.com/espressif/esp-iot-solution", exemploYaml: `dependencies: espressif/net_connect: "^0.1.1"` }, { id: "espressif-esp_hosted", namespace: "espressif", name: "esp_hosted", versao: "^2.0.0", categoria: "cloud_conectividade", oficial: true, popular: false, titulo: "ESP-Hosted Network Coprocessor", descricao: "Turns the ESP32 into a Wi-Fi and Bluetooth wireless network card for external Linux hosts (Raspberry Pi) or MCUs via SPI/SDIO/UART.", tags: ["Network Coprocessor", "SDIO", "SPI Slave", "Linux Wireless"], chips: ["ESP32", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/esp_hosted", urlRepo: "https://github.com/espressif/esp-hosted", exemploYaml: `dependencies: espressif/esp_hosted: "^2.0.0"` }, { id: "espressif-esp-now", namespace: "espressif", name: "esp-now", versao: "^2.5.0", categoria: "cloud_conectividade", oficial: true, popular: true, titulo: "ESP-NOW Connectionless Protocol", descricao: "Direct peer-to-peer wireless protocol by Espressif enabling ultra-fast, low-power communication without a Wi-Fi router.", tags: ["ESP-NOW", "P2P", "Low Power", "Quick Pairing", "Sub-10ms"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C2", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/esp-now", urlRepo: "https://github.com/espressif/esp-now", exemploYaml: `dependencies: espressif/esp-now: "^2.5.0"` }, // ========================================== // 3. Audio, Voice & AI // ========================================== { id: "espressif-esp-sr", namespace: "espressif", name: "esp-sr", versao: "^2.0.0", categoria: "audio_voz_ia", oficial: true, popular: true, titulo: "ESP-SR Speech Recognition Framework", descricao: "Complete offline voice recognition framework: wake word detection (WakeNet), command recognition (MultiNet), acoustic echo cancellation (AEC), and beamforming.", tags: ["WakeNet", "MultiNet", "Voice Assistant", "AEC", "Offline AI", "Audio DSP"], chips: ["ESP32-S3", "ESP32-P4"], urlRegistry: "https://components.espressif.com/components/espressif/esp-sr", urlRepo: "https://github.com/espressif/esp-sr", exemploYaml: `dependencies: espressif/esp-sr: "^2.0.0"` }, { id: "espressif-esp_codec_dev", namespace: "espressif", name: "esp_codec_dev", versao: "^1.3.0", categoria: "audio_voz_ia", oficial: true, popular: true, titulo: "ESP Audio Codec Device Driver", descricao: "Unified hardware abstraction layer for audio DACs, ADCs, and Codecs (ES8311, ES8388, TAS5805M, Everest) communicating over I2S and I2C.", tags: ["Audio Codec", "DAC", "I2S", "Microphone", "Speaker", "ES8311"], chips: ["ESP32", "ESP32-S3", "ESP32-P4", "ESP32-C3"], urlRegistry: "https://components.espressif.com/components/espressif/esp_codec_dev", urlRepo: "https://github.com/espressif/esp-codec-dev", exemploYaml: `dependencies: espressif/esp_codec_dev: "^1.3.0"` }, { id: "espressif-es8311", namespace: "espressif", name: "es8311", versao: "^0.2.0", categoria: "audio_voz_ia", oficial: true, popular: true, titulo: "Everest ES8311 Low-Power Audio Codec Driver", descricao: "Low-power mono audio codec driver with analog microphone input and class-D speaker output, standard on ESP-BOX and LyraT boards.", tags: ["ES8311", "Mono Codec", "Microphone Preamp", "ESP-BOX"], chips: ["ESP32", "ESP32-S3", "ESP32-S2"], urlRegistry: "https://components.espressif.com/components/espressif/es8311", urlRepo: "https://github.com/espressif/esp-bsp/tree/master/components/es8311", exemploYaml: `dependencies: espressif/es8311: "^0.2.0"` }, { id: "espressif-esp32-camera", namespace: "espressif", name: "esp32-camera", versao: "^2.0.9", categoria: "audio_voz_ia", oficial: true, popular: true, titulo: "ESP32 Camera Driver", descricao: "Official driver for DVP CMOS camera sensors (OV2640, OV3660, OV5640, GC0308). Delivers DMA-accelerated JPEG and RGB565 streaming.", tags: ["Camera", "OV2640", "OV5640", "DVP", "Video Streaming", "ESP32-CAM"], chips: ["ESP32", "ESP32-S3", "ESP32-S2"], urlRegistry: "https://components.espressif.com/components/espressif/esp32-camera", urlRepo: "https://github.com/espressif/esp32-camera", exemploYaml: `dependencies: espressif/esp32-camera: "^2.0.9"` }, { id: "espressif-esp-dsp", namespace: "espressif", name: "esp-dsp", versao: "^1.5.0", categoria: "audio_voz_ia", oficial: true, popular: true, titulo: "ESP-DSP Digital Signal Processing Library", descricao: "Digital signal processing library with vector-accelerated FFTs, IIR/FIR filtering, and matrix math for audio and vibration analysis.", tags: ["DSP", "FFT", "Matrix", "FIR Filter", "IIR Filter", "Assembly SIMD"], chips: ["ESP32", "ESP32-S3", "ESP32-P4"], urlRegistry: "https://components.espressif.com/components/espressif/esp-dsp", urlRepo: "https://github.com/espressif/esp-dsp", exemploYaml: `dependencies: espressif/esp-dsp: "^1.5.0"` }, { id: "espressif-esp-nn", namespace: "espressif", name: "esp-nn", versao: "^1.1.0", categoria: "audio_voz_ia", oficial: true, popular: false, titulo: "ESP-NN Neural Network Kernel Kernels", descricao: "Optimized neural network convolution, depthwise-conv, and activation kernels for TensorFlow Lite for Microcontrollers and TinyML models.", tags: ["Neural Network", "TinyML", "TFLite Micro", "Vector Math", "Convolution"], chips: ["ESP32-S3", "ESP32-P4"], urlRegistry: "https://components.espressif.com/components/espressif/esp-nn", urlRepo: "https://github.com/espressif/esp-nn", exemploYaml: `dependencies: espressif/esp-nn: "^1.1.0"` }, // ========================================== // 4. Smart Home & Mesh // ========================================== { id: "espressif-esp-matter", namespace: "espressif", name: "esp-matter", versao: "^1.3.0", categoria: "smart_home_mesh", oficial: true, popular: true, titulo: "ESP-Matter SDK", descricao: "Official Matter SDK by Espressif built on Connected Home IP. Create Matter over Wi-Fi and Matter over Thread smart devices with Apple Home, Alexa, and Google Home interoperability.", tags: ["Matter", "CHIP", "Thread", "Smart Home", "Apple Home", "Google Home"], chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-H2"], urlRegistry: "https://components.espressif.com/components/espressif/esp-matter", urlRepo: "https://github.com/espressif/esp-matter", exemploYaml: `dependencies: espressif/esp-matter: "^1.3.0"` }, { id: "espressif-esp-zigbee-lib", namespace: "espressif", name: "esp-zigbee-lib", versao: "^1.4.0", categoria: "smart_home_mesh", oficial: true, popular: true, titulo: "ESP-Zigbee 3.0 Stack Library", descricao: "Certified Zigbee 3.0 (ZBOSS) stack supporting Coordinator, Router, and End Device roles on IEEE 802.15.4 radios.", tags: ["Zigbee 3.0", "ZBOSS", "802.15.4", "Coordinator", "Router", "End Device"], chips: ["ESP32-C6", "ESP32-H2"], urlRegistry: "https://components.espressif.com/components/espressif/esp-zigbee-lib", urlRepo: "https://github.com/espressif/esp-zigbee-sdk", exemploYaml: `dependencies: espressif/esp-zigbee-lib: "^1.4.0"` }, { id: "espressif-esp_rcp_update", namespace: "espressif", name: "esp_rcp_update", versao: "^0.1.2", categoria: "smart_home_mesh", oficial: true, popular: false, titulo: "Thread Radio Co-Processor (RCP) Update", descricao: "Firmware manager and updater for Thread RCP architectures, used in OpenThread Border Routers (OTBR) combining ESP32-S3 and ESP32-H2.", tags: ["OpenThread", "RCP", "Border Router", "OTBR", "802.15.4"], chips: ["ESP32-S3", "ESP32-C6", "ESP32-H2"], urlRegistry: "https://components.espressif.com/components/espressif/esp_rcp_update", urlRepo: "https://github.com/espressif/esp-thread-lib", exemploYaml: `dependencies: espressif/esp_rcp_update: "^0.1.2"` }, // ========================================== // 5. Drivers & Sensors // ========================================== { id: "espressif-led_indicator", namespace: "espressif", name: "led_indicator", versao: "^0.9.3", categoria: "drivers_perifericos", oficial: true, popular: true, titulo: "LED Indicator & Blink Pattern Driver", descricao: "Visual status engine managing simple and RGB LEDs with non-blocking blink sequences, breathing effects, and priority queues.", tags: ["LED Blink", "RGB Status", "Breathing Effect", "User Feedback"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C2", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/led_indicator", urlRepo: "https://github.com/espressif/esp-iot-solution/tree/master/components/led/led_indicator", exemploYaml: `dependencies: espressif/led_indicator: "^0.9.3"` }, { id: "espressif-button", namespace: "espressif", name: "button", versao: "^3.3.0", categoria: "drivers_perifericos", oficial: true, popular: true, titulo: "Advanced Button & Event Handler (IoT Button)", descricao: "Robust debounce and event engine for physical buttons: detects single-click, double-click, long-press, repeat events, and ADC resistor ladder keys.", tags: ["Debounce", "Double Click", "Long Press", "ADC Button", "GPIO Key"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/button", urlRepo: "https://github.com/espressif/esp-iot-solution/tree/master/components/button", exemploYaml: `dependencies: espressif/button: "^3.3.0"` }, { id: "espressif-led_strip", namespace: "espressif", name: "led_strip", versao: "^2.5.3", categoria: "drivers_perifericos", oficial: true, popular: true, titulo: "Addressable RGB LED Strip Driver (RMT / SPI)", descricao: "Official driver for addressable RGB/RGBW LED strips (WS2812B, SK6812, APA102) utilizing hardware RMT or SPI peripherals without CPU overhead.", tags: ["WS2812", "NeoPixel", "SK6812", "RMT", "RGB Strip", "Addressable LED"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-P4"], urlRegistry: "https://components.espressif.com/components/espressif/led_strip", urlRepo: "https://github.com/espressif/idf-extra-components/tree/master/led_strip", exemploYaml: `dependencies: espressif/led_strip: "^2.5.3"` }, { id: "espressif-esp_tinyusb", namespace: "espressif", name: "esp_tinyusb", versao: "^1.4.5", categoria: "drivers_perifericos", oficial: true, popular: true, titulo: "TinyUSB Hardware Native USB Stack", descricao: "Complete native USB stack (Device and Host): emulates HID (Keyboard/Mouse), CDC (Virtual Serial), MSC (Mass Storage Flash Drive), and MIDI.", tags: ["USB OTG", "TinyUSB", "USB CDC", "USB HID", "USB Flash Drive", "Mass Storage"], chips: ["ESP32-S2", "ESP32-S3", "ESP32-P4"], urlRegistry: "https://components.espressif.com/components/espressif/esp_tinyusb", urlRepo: "https://github.com/espressif/esp-tinyusb", exemploYaml: `dependencies: espressif/esp_tinyusb: "^1.4.5"` }, { id: "espressif-w5500", namespace: "espressif", name: "w5500", versao: "^1.1.0", categoria: "drivers_perifericos", oficial: true, popular: true, titulo: "WIZnet W5500 SPI Ethernet Driver", descricao: "Official driver for WIZnet W5500 SPI Ethernet controllers, integrating seamlessly into ESP-IDF's lwIP network stack with high throughput.", tags: ["Ethernet", "W5500", "SPI LAN", "lwIP", "Wired Network"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/w5500", urlRepo: "https://github.com/espressif/esp-eth-drivers/tree/master/w5500", exemploYaml: `dependencies: espressif/w5500: "^1.1.0"` }, { id: "espressif-ch390", namespace: "espressif", name: "ch390", versao: "^0.1.2", categoria: "drivers_perifericos", oficial: true, popular: false, titulo: "WCH CH390 SPI 10/100M Ethernet Driver", descricao: "Cost-effective 10/100Mbps Ethernet MAC/PHY driver for WCH CH390 chips communicating over high-speed SPI.", tags: ["CH390", "Ethernet SPI", "WCH", "Cost Effective", "lwIP"], chips: ["ESP32", "ESP32-C3", "ESP32-S3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/ch390", urlRepo: "https://github.com/espressif/esp-eth-drivers", exemploYaml: `dependencies: espressif/ch390: "^0.1.2"` }, { id: "espressif-usb_host_uvc", namespace: "espressif", name: "usb_host_uvc", versao: "^1.0.3", categoria: "drivers_perifericos", oficial: true, popular: false, titulo: "USB Host UVC Video Camera Driver", descricao: "Native USB Host driver allowing connection to standard USB UVC webcams directly from ESP32-S2/S3/P4.", tags: ["USB Host", "UVC", "Webcam USB", "Video Streaming"], chips: ["ESP32-S2", "ESP32-S3", "ESP32-P4"], urlRegistry: "https://components.espressif.com/components/espressif/usb_host_uvc", urlRepo: "https://github.com/espressif/esp-iot-solution", exemploYaml: `dependencies: espressif/usb_host_uvc: "^1.0.3"` }, { id: "espressif-sensor_hub", namespace: "espressif", name: "sensor_hub", versao: "^0.5.2", categoria: "drivers_perifericos", oficial: true, popular: false, titulo: "Sensor Hub Data Acquisition Architecture", descricao: "Modular sensor abstraction framework with event-driven sampling, buffer management, and automatic calibration for environmental and IMU sensors.", tags: ["Sensor Hub", "I2C Sensor", "Sampling Event", "IMU"], chips: ["ESP32", "ESP32-S3", "ESP32-C3"], urlRegistry: "https://components.espressif.com/components/espressif/sensor_hub", urlRepo: "https://github.com/espressif/esp-iot-solution/tree/master/components/sensors/sensor_hub", exemploYaml: `dependencies: espressif/sensor_hub: "^0.5.2"` }, { id: "espressif-bmi270_sensor", namespace: "espressif", name: "bmi270_sensor", versao: "^0.1.2", categoria: "drivers_perifericos", oficial: true, popular: true, titulo: "Bosch BMI270 6-Axis IMU Sensor Driver", descricao: "Driver for Bosch BMI270 6-axis ultra-low-power IMU (accelerometer and gyroscope) featuring built-in step counter and gesture detection.", tags: ["BMI270", "IMU 6-Axis", "Accelerometer", "Gyroscope", "Bosch"], chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/bmi270_sensor", urlRepo: "https://github.com/espressif/esp-iot-solution", exemploYaml: `dependencies: espressif/bmi270_sensor: "^0.1.2"` }, { id: "espressif-ds18b20", namespace: "espressif", name: "ds18b20", versao: "^0.1.1", categoria: "drivers_perifericos", oficial: true, popular: true, titulo: "Dallas DS18B20 1-Wire Temperature Sensor", descricao: "RMT-accelerated 1-Wire temperature sensor driver providing non-blocking precision multi-sensor reading on a single bus line.", tags: ["DS18B20", "1-Wire", "Temperature", "RMT", "Waterproof"], chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/ds18b20", urlRepo: "https://github.com/espressif/esp-iot-solution", exemploYaml: `dependencies: espressif/ds18b20: "^0.1.1"` }, { id: "esp-idf-lib-scd4x", namespace: "esp-idf-lib", name: "scd4x", versao: "^1.0.0", categoria: "drivers_perifericos", oficial: false, popular: true, titulo: "Sensirion SCD40 / SCD41 CO2 Photoacoustic Sensor", descricao: "Driver for Sensirion SCD40/SCD41 true CO2 sensors with integrated relative humidity and ambient temperature measurements.", tags: ["SCD40", "SCD41", "CO2 Sensor", "Air Quality", "I2C Sensirion"], chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/esp-idf-lib/scd4x", urlRepo: "https://github.com/UncleRus/esp-idf-lib", exemploYaml: `dependencies: esp-idf-lib/scd4x: "^1.0.0"` }, // ========================================== // 6. BSPs (Board Support Packages) // ========================================== { id: "espressif-esp-box-3", namespace: "espressif", name: "esp-box-3", versao: "^1.3.1", categoria: "bsp_placas", oficial: true, popular: true, titulo: "ESP32-S3-BOX-3 Board Support Package (BSP)", descricao: "Comprehensive BSP for the ESP-BOX-3 development kit: configures display, capacitive touch, ES8311 codec, dual microphones, sensor dock, and PCIe connector out-of-the-box.", tags: ["ESP-BOX-3", "ESP32-S3", "BSP", "Touch LCD", "Voice AI", "Sensors"], chips: ["ESP32-S3"], dependenciasSugeridas: ["espressif/esp_lvgl_port^2.4.0"], urlRegistry: "https://components.espressif.com/components/espressif/esp-box-3", urlRepo: "https://github.com/espressif/esp-bsp/tree/master/bsp/esp-box-3", exemploYaml: `dependencies: espressif/esp-box-3: "^1.3.1"` }, { id: "espressif-esp32_s3_korvo_2", namespace: "espressif", name: "esp32_s3_korvo_2", versao: "^1.0.2", categoria: "bsp_placas", oficial: true, popular: false, titulo: "ESP32-S3-Korvo-2 Audio Development Board BSP", descricao: "Official BSP for the multi-microphone Korvo-2 board: initializes dual ES7210 ADCs, ES8311 DAC, far-field beamforming, and AEC processing.", tags: ["Korvo-2", "Audio Board", "Microphone Array", "AEC", "ESP-ADF"], chips: ["ESP32-S3"], urlRegistry: "https://components.espressif.com/components/espressif/esp32_s3_korvo_2", urlRepo: "https://github.com/espressif/esp-bsp/tree/master/bsp/esp32_s3_korvo_2", exemploYaml: `dependencies: espressif/esp32_s3_korvo_2: "^1.0.2"` }, { id: "espressif-esp32_s3_eye", namespace: "espressif", name: "esp32_s3_eye", versao: "^1.1.0", categoria: "bsp_placas", oficial: true, popular: true, titulo: "ESP32-S3-EYE Vision AI Board BSP", descricao: "BSP for the ESP32-S3-EYE computer vision kit: auto-initializes the OV2640 camera, 1.3\" SPI display, microphone, and on-board digital sensors.", tags: ["S3-EYE", "Camera AI", "OV2640", "Face Recognition", "ESP-WHO"], chips: ["ESP32-S3"], urlRegistry: "https://components.espressif.com/components/espressif/esp32_s3_eye", urlRepo: "https://github.com/espressif/esp-bsp/tree/master/bsp/esp32_s3_eye", exemploYaml: `dependencies: espressif/esp32_s3_eye: "^1.1.0"` }, { id: "espressif-m5stack_core_s3", namespace: "espressif", name: "m5stack_core_s3", versao: "^0.2.0", categoria: "bsp_placas", oficial: true, popular: true, titulo: "M5Stack CoreS3 BSP for ESP-IDF", descricao: "BSP for the popular M5Stack CoreS3: configures ILI9342C display, FT6336 touch controller, AXP2101 power management PMIC, camera, and dual microphones.", tags: ["M5Stack", "CoreS3", "AXP2101", "ILI9342C", "Modular IoT"], chips: ["ESP32-S3"], urlRegistry: "https://components.espressif.com/components/espressif/m5stack_core_s3", urlRepo: "https://github.com/espressif/esp-bsp/tree/master/bsp/m5stack_core_s3", exemploYaml: `dependencies: espressif/m5stack_core_s3: "^0.2.0"` }, { id: "waveshare-esp32_p4_wifi6_touch_lcd_7b", namespace: "waveshare", name: "esp32_p4_wifi6_touch_lcd_7b", versao: "^0.1.0", categoria: "bsp_placas", oficial: false, popular: true, titulo: "Waveshare ESP32-P4 7-inch Touch LCD BSP", descricao: "Support package for Waveshare's flagship ESP32-P4 board featuring 7.0\" MIPI-DSI (1024x600) display, GT911 touch controller, and Wi-Fi 6 coprocessor.", tags: ["ESP32-P4", "MIPI-DSI", "Waveshare 7B", "1024x600", "High Performance HMI"], chips: ["ESP32-P4"], urlRegistry: "https://components.espressif.com/components/waveshare/esp32_p4_wifi6_touch_lcd_7b", urlRepo: "https://github.com/waveshare/esp32-p4-bsp", exemploYaml: `dependencies: waveshare/esp32_p4_wifi6_touch_lcd_7b: "^0.1.0"` }, // ========================================== // 7. System & Utilities // ========================================== { id: "joltwallet-littlefs", namespace: "joltwallet", name: "littlefs", versao: "^1.14.8", categoria: "sistema_utilitarios", oficial: false, popular: true, titulo: "LittleFS Resilient Embedded File System", descricao: "Power-failure resilient file system designed for microcontrollers with wear leveling, zero RAM leaks on unexpected resets, and high speed.", tags: ["LittleFS", "File System", "VFS", "Flash Wear Leveling", "Power Safe"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C2", "ESP32-C3", "ESP32-C6", "ESP32-P4"], urlRegistry: "https://components.espressif.com/components/joltwallet/littlefs", urlRepo: "https://github.com/joltwallet/esp_littlefs", exemploYaml: `dependencies: joltwallet/littlefs: "^1.14.8"` }, { id: "espressif-esp-idf-cxx", namespace: "espressif", name: "esp-idf-cxx", versao: "^0.2.1", categoria: "sistema_utilitarios", oficial: true, popular: false, titulo: "Modern C++ (C++17/20/23) ESP-IDF Wrappers", descricao: "Modern type-safe C++ wrappers for ESP-IDF primitives: RAII locks, exceptions, tasks, queues, GPIOs, and I2C/SPI buses.", tags: ["C++20", "C++17", "RAII", "Object Oriented", "Type Safe"], chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-P4"], urlRegistry: "https://components.espressif.com/components/espressif/esp-idf-cxx", urlRepo: "https://github.com/espressif/esp-idf-cxx", exemploYaml: `dependencies: espressif/esp-idf-cxx: "^0.2.1"` }, { id: "espressif-cbor", namespace: "espressif", name: "cbor", versao: "^0.6.0", categoria: "sistema_utilitarios", oficial: true, popular: false, titulo: "TinyCBOR Binary Serialization Library", descricao: "Compact binary object serialization library (RFC 8949) offering lightweight alternative to JSON for low-bandwidth constrained IoT communication.", tags: ["CBOR", "Binary JSON", "Compact Serialization", "RFC 8949", "CoAP"], chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/cbor", urlRepo: "https://github.com/intel/tinycbor", exemploYaml: `dependencies: espressif/cbor: "^0.6.0"` }, { id: "espressif-esp_websocket_client", namespace: "espressif", name: "esp_websocket_client", versao: "^1.2.3", categoria: "sistema_utilitarios", oficial: true, popular: true, titulo: "ESP WebSocket Client (WS / WSS)", descricao: "Full-duplex real-time WebSocket client supporting text and binary frames over secure TLS connections (WSS) and automatic reconnections.", tags: ["WebSocket", "WSS", "TLS", "Real-Time", "Full Duplex"], chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6"], urlRegistry: "https://components.espressif.com/components/espressif/esp_websocket_client", urlRepo: "https://github.com/espressif/esp-protocols/tree/master/components/esp_websocket_client", exemploYaml: `dependencies: espressif/esp_websocket_client: "^1.2.3"` } ]; export const GUIA_COMPONENT_MANAGER = { titulo: "How to Use the ESP Component Registry in ESP-IDF", resumo: "Starting with ESP-IDF v4.4 and established in v5.x+, Espressif adopted a modular package architecture managed by the IDF Component Manager. Forget complex git submodules: declare libraries in your project's idf_component.yml manifest file.", vantagens: [ { titulo: "Automatic and Decoupled Installation", descricao: "The build system downloads, compiles, and manages library versions automatically during 'idf.py build' or 'idf.py reconfigure'." }, { titulo: "Strict Semantic Versioning", descricao: "Control exactly when to update using version operators (^ for minor compatibility, ~ for patches, or exact fixed versions)." }, { titulo: "Lighter and Cleaner Projects", descricao: "Your project repository stays clean, without embedding third-party code in your Git history." }, { titulo: "Enterprise or Community Sharing", descricao: "Publish your own components to the public Espressif cloud registry or your company's private internal registries." } ], comandosCli: [ { comando: "idf.py add-dependency \"namespace/component^version\"", exemplo: "idf.py add-dependency \"espressif/esp_lvgl_port^2.4.0\"", explicacao: "Automatically creates or updates the 'main/idf_component.yml' file by adding the specified dependency." }, { comando: "idf.py reconfigure", exemplo: "idf.py reconfigure", explicacao: "Forces CMake and Component Manager to re-resolve the dependency tree and download pending packages." }, { comando: "compote component upload --name --namespace ", exemplo: "compote component upload --name my_sensor_driver --namespace myteam", explicacao: "Publishes your open-source or proprietary component to the ESP Component Registry using the official Compote CLI tool." } ], sintaxeManifesto: "# Typical file structure: main/idf_component.yml\ndependencies:\n # Download from official Espressif registry\n espressif/esp_lvgl_port: \"^2.4.0\"\n espressif/button: \"~3.4.0\"\n \n # Exact version\n espressif/led_indicator: \"1.2.0\"\n \n # Community dependency\n joltwallet/littlefs: \"^1.14.8\"\n \n # Local disk dependency (optional)\n # my_local_driver:\n # path: \"../../components/my_driver\"" };