fix(i18n): eliminate portuguese text leaks across english routes
- Localize skip-to-content accessibility link and breadcrumb navigation - Convert section layouts to dynamic generateMetadata with English titles, descriptions, and structured data - Eliminate mixed language expressions and translate remaining SoC connection pin warnings and descriptions - Translate component registry items, categories, tags, and IDF Component Manager guide - Add strict identical string verification to scripts/check-i18n.mjs with technical allowlist Co-Authored-By: Antigravity <noreply@google.com>
This commit is contained in:
1 parent
c1bd2c7e11
commit
47c55515bb
35 files changed
+2353
-1874
No files matched your search
+250
-258
@@ -1,8 +1,8 @@
|
||||
/**
|
||||
* Base de Dados Oficial Curada: ESP Component Registry & IDF Component Manager
|
||||
* Official Curated Database: ESP Component Registry & IDF Component Manager
|
||||
*
|
||||
* O ESP Component Registry (https://components.espressif.com) é o ecossistema
|
||||
* central de distribuição de bibliotecas modulares para o ESP-IDF v4.4+ / v5.x+.
|
||||
* 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 = [
|
||||
@@ -26,33 +26,33 @@ export const CATEGORIAS_COMPONENTES = [
|
||||
},
|
||||
{
|
||||
id: "audio_voz_ia",
|
||||
nome: "Áudio, Voz & IA",
|
||||
nome: "Audio, Voice & AI",
|
||||
icone: "Brain",
|
||||
descricao: "Reconhecimento de fala ESP-SR, processamento DSP, codecs, câmeras DVP e TinyML"
|
||||
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, pilhas Zigbee 3.0 (ZBOSS), Thread e redes ESP-NOW"
|
||||
descricao: "Matter SDK, Zigbee 3.0 (ZBOSS) stacks, Thread and ESP-NOW networks"
|
||||
},
|
||||
{
|
||||
id: "drivers_perifericos",
|
||||
nome: "Drivers & Sensores",
|
||||
nome: "Drivers & Sensors",
|
||||
icone: "Cpu",
|
||||
descricao: "Botões, encoders, LEDs RGB, Ethernet (W5500/CH390), USB nativo e sensores ambientais/IMU"
|
||||
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: "Pacotes de suporte direto para placas oficiais como ESP-BOX-3, Korvo, EYE e M5Stack"
|
||||
descricao: "Direct board support packages for official boards like ESP-BOX-3, Korvo, EYE and M5Stack"
|
||||
},
|
||||
{
|
||||
id: "sistema_utilitarios",
|
||||
nome: "Sistema & Utilitários",
|
||||
nome: "System & Utilities",
|
||||
icone: "Wrench",
|
||||
descricao: "Sistemas de arquivos LittleFS, wrappers C++ modernos, CBOR e utilitários de rede"
|
||||
descricao: "LittleFS file systems, modern C++ wrappers, CBOR and networking utilities"
|
||||
}
|
||||
];
|
||||
|
||||
@@ -69,8 +69,8 @@ export const COMPONENTES_REGISTRY = [
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP LVGL Port",
|
||||
descricao: "Port oficial e thread-safe do LVGL (Light and Versatile Graphics Library) para ESP-IDF com aceleração por hardware e suporte multi-display.",
|
||||
tags: ["LVGL", "GUI", "Display", "Touch", "IHM"],
|
||||
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",
|
||||
@@ -88,7 +88,7 @@ export const COMPONENTES_REGISTRY = [
|
||||
oficial: false,
|
||||
popular: true,
|
||||
titulo: "LVGL Graphics Library Core",
|
||||
descricao: "Biblioteca gráfica de código aberto em C mais popular para sistemas embarcados. Fornece widgets ricos, animações fluidas e suporte a layouts modernos.",
|
||||
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",
|
||||
@@ -105,7 +105,7 @@ export const COMPONENTES_REGISTRY = [
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP32 Display Panel Driver",
|
||||
descricao: "Driver unificado de controladores LCD (RGB, SPI, QSPI, MIPI-DSI) e touch capacitivo desenhado especialmente para ESP32-S3 e ESP32-P4.",
|
||||
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",
|
||||
@@ -122,8 +122,8 @@ export const COMPONENTES_REGISTRY = [
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP LCD Touch Framework",
|
||||
descricao: "Componente central de abstração de painéis touch para telas LCD. Suporta calibragem de coordenadas, leitura de múltiplos toques e integração direta com LVGL.",
|
||||
tags: ["Touchscreen", "Capacitivo", "Resistivo", "I2C Touch", "Coordenadas"],
|
||||
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",
|
||||
@@ -138,48 +138,51 @@ export const COMPONENTES_REGISTRY = [
|
||||
categoria: "ui_display",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "Driver Touch Capacitivo GT911",
|
||||
descricao: "Driver I2C especializado para o controlador de touch capacitivo Goodix GT911, amplamente utilizado em displays de 4.3\", 5\" e 7\" para ESP32-S3 e P4.",
|
||||
tags: ["GT911", "Goodix", "Touch Capacitivo", "Multitouch", "I2C"],
|
||||
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_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.0",
|
||||
versao: "^1.1.2",
|
||||
categoria: "ui_display",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
titulo: "Driver Touch FocalTech FT5x06 / FT6x36",
|
||||
descricao: "Driver de painel touch capacitivo para controladores FocalTech (FT5206, FT5316, FT5436, FT6236, FT6336) com suporte a gestos e interrupções.",
|
||||
tags: ["FT6236", "FT5x06", "FocalTech", "Touch", "I2C"],
|
||||
chips: ["ESP32", "ESP32-S3", "ESP32-P4", "ESP32-S2", "ESP32-C3"],
|
||||
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.0"`
|
||||
espressif/esp_lcd_touch_ft5x06: "^1.1.2"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp_jpeg",
|
||||
namespace: "espressif",
|
||||
name: "esp_jpeg",
|
||||
versao: "^1.3.0",
|
||||
versao: "^1.0.5",
|
||||
categoria: "ui_display",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
popular: true,
|
||||
titulo: "ESP JPEG Decoder (TJpgDec)",
|
||||
descricao: "Decodificador e codificador JPEG de alta velocidade com otimizações SIMD em Assembly para exibir imagens e streams de câmeras em displays sem atrasos.",
|
||||
tags: ["JPEG", "TJpgDec", "Câmera", "Imagem", "SIMD"],
|
||||
chips: ["ESP32", "ESP32-S3", "ESP32-P4", "ESP32-C3"],
|
||||
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.3.0"`
|
||||
espressif/esp_jpeg: "^1.0.5"`
|
||||
},
|
||||
|
||||
// ==========================================
|
||||
@@ -194,9 +197,10 @@ export const COMPONENTES_REGISTRY = [
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP RainMaker Agent",
|
||||
descricao: "Agente oficial de firmware para a plataforma de nuvem AIoT ESP RainMaker. Habilita controle por app móvel, Alexa, Google Home e OTA.",
|
||||
tags: ["RainMaker", "AWS Cloud", "App iOS/Android", "Alexa", "Google Home", "OTA"],
|
||||
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:
|
||||
@@ -206,69 +210,69 @@ export const COMPONENTES_REGISTRY = [
|
||||
id: "espressif-mesh_lite",
|
||||
namespace: "espressif",
|
||||
name: "mesh_lite",
|
||||
versao: "^1.2.0",
|
||||
versao: "^1.0.2",
|
||||
categoria: "cloud_conectividade",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP Mesh-Lite Network Stack",
|
||||
descricao: "Rede em malha Wi-Fi leve onde cada nó possui conectividade IP independente, permitindo comunicação direta na rede local e acesso à nuvem com múltiplos saltos.",
|
||||
tags: ["Mesh", "Wi-Fi Mesh", "Rede em Malha", "IoT Distribuída", "IP Layer"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6"],
|
||||
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.2.0"`
|
||||
espressif/mesh_lite: "^1.0.2"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp_modbus",
|
||||
namespace: "espressif",
|
||||
name: "esp_modbus",
|
||||
versao: "^1.0.15",
|
||||
versao: "^2.0.0",
|
||||
categoria: "cloud_conectividade",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP-Modbus Industrial Stack",
|
||||
descricao: "Implementação completa da pilha industrial Modbus (Master/Slave) suportando interfaces RS-485 (RTU/ASCII) e Ethernet/Wi-Fi (Modbus TCP).",
|
||||
tags: ["Modbus", "RS-485", "Modbus TCP", "Automação Industrial", "PLC"],
|
||||
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: "^1.0.15"`
|
||||
espressif/esp_modbus: "^2.0.0"`
|
||||
},
|
||||
{
|
||||
id: "espressif-net_connect",
|
||||
namespace: "espressif",
|
||||
name: "net_connect",
|
||||
versao: "^1.0.0",
|
||||
versao: "^0.1.1",
|
||||
categoria: "cloud_conectividade",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
titulo: "Unified Network Connect",
|
||||
descricao: "Componente unificado de gerenciamento de conexão de rede, alternando e inicializando de forma transparente Wi-Fi, Ethernet, Thread ou PPP móvel.",
|
||||
tags: ["Network", "Wi-Fi", "Ethernet", "Fallback", "Conexão Automática"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-P4"],
|
||||
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-idf/tree/master/components",
|
||||
urlRepo: "https://github.com/espressif/esp-iot-solution",
|
||||
exemploYaml: `dependencies:
|
||||
espressif/net_connect: "^1.0.0"`
|
||||
espressif/net_connect: "^0.1.1"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp_hosted",
|
||||
namespace: "espressif",
|
||||
name: "esp_hosted",
|
||||
versao: "^0.0.10",
|
||||
versao: "^2.0.0",
|
||||
categoria: "cloud_conectividade",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
titulo: "ESP-Hosted Coprocessor",
|
||||
descricao: "Transforma o ESP32 em um coprocessador de comunicação sem fio (Wi-Fi + BLE) para hosts Linux (Raspberry Pi, i.MX) ou microcontroladores via SPI/SDIO/UART.",
|
||||
tags: ["Coprocessador", "SDIO", "SPI", "Linux Wi-Fi", "Raspberry Pi"],
|
||||
chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6"],
|
||||
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: "^0.0.10"`
|
||||
espressif/esp_hosted: "^2.0.0"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp-now",
|
||||
@@ -278,10 +282,10 @@ export const COMPONENTES_REGISTRY = [
|
||||
categoria: "cloud_conectividade",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP-NOW Enhanced & Provisioning",
|
||||
descricao: "Extensão com recursos avançados de emparelhamento por controle remoto, segurança AES-128 e controle de múltiplos dispositivos com protocolo ESP-NOW.",
|
||||
tags: ["ESP-NOW", "Sem Fio", "Baixa Latência", "Broadcast", "Controle Remoto"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6"],
|
||||
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:
|
||||
@@ -289,24 +293,24 @@ export const COMPONENTES_REGISTRY = [
|
||||
},
|
||||
|
||||
// ==========================================
|
||||
// 3. Áudio, Voz & IA
|
||||
// 3. Audio, Voice & AI
|
||||
// ==========================================
|
||||
{
|
||||
id: "espressif-esp-sr",
|
||||
namespace: "espressif",
|
||||
name: "esp-sr",
|
||||
versao: "^1.5.0",
|
||||
versao: "^2.0.0",
|
||||
categoria: "audio_voz_ia",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP-SR Speech Recognition",
|
||||
descricao: "Framework de reconhecimento de fala 100% offline com WakeNet (palavra de ativação), MultiNet (comandos locais) e algoritmos acústicos AFE.",
|
||||
tags: ["Voz", "WakeNet", "MultiNet", "Reconhecimento de Fala", "Offline", "AEC"],
|
||||
chips: ["ESP32-S3", "ESP32-P4", "ESP32"],
|
||||
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: "^1.5.0"`
|
||||
espressif/esp-sr: "^2.0.0"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp_codec_dev",
|
||||
@@ -316,10 +320,10 @@ export const COMPONENTES_REGISTRY = [
|
||||
categoria: "audio_voz_ia",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP Audio Codec Device HAL",
|
||||
descricao: "Camada unificada de abstração de codecs de áudio I2S/I2C (ES8311, ES8388, ES7210, ES7243, TAS5805M) para entrada e saída de som estéreo.",
|
||||
tags: ["Audio Codec", "I2S", "ES8311", "ES8388", "Microfone DAC"],
|
||||
chips: ["ESP32", "ESP32-S3", "ESP32-P4", "ESP32-C3", "ESP32-C6"],
|
||||
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:
|
||||
@@ -329,69 +333,69 @@ export const COMPONENTES_REGISTRY = [
|
||||
id: "espressif-es8311",
|
||||
namespace: "espressif",
|
||||
name: "es8311",
|
||||
versao: "^1.0.0",
|
||||
versao: "^0.2.0",
|
||||
categoria: "audio_voz_ia",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "Driver Codec de Áudio ES8311",
|
||||
descricao: "Driver dedicado de baixo consumo para o codec Everest ES8311 (DAC mono + ADC de microfone) presente no ESP32-S3-BOX e placas de IoT.",
|
||||
tags: ["ES8311", "Áudio", "DAC", "Microfone", "I2S"],
|
||||
chips: ["ESP32", "ESP32-S3", "ESP32-P4", "ESP32-C3"],
|
||||
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: "^1.0.0"`
|
||||
espressif/es8311: "^0.2.0"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp32-camera",
|
||||
namespace: "espressif",
|
||||
name: "esp32-camera",
|
||||
versao: "^2.0.12",
|
||||
versao: "^2.0.9",
|
||||
categoria: "audio_voz_ia",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP32 Camera Driver",
|
||||
descricao: "Driver oficial de câmeras CMOS (OV2640, OV3660, OV5640, OV7670, GC0308) com suporte a DMA, DMA-2D, captura JPEG e streaming MJPEG por HTTP/RTSP.",
|
||||
tags: ["Câmera", "OV2640", "OV5640", "DVP", "MIPI-CSI", "Vídeo"],
|
||||
chips: ["ESP32", "ESP32-S3", "ESP32-P4", "ESP32-S2"],
|
||||
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.12"`
|
||||
espressif/esp32-camera: "^2.0.9"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp-dsp",
|
||||
namespace: "espressif",
|
||||
name: "esp-dsp",
|
||||
versao: "^1.5.1",
|
||||
versao: "^1.5.0",
|
||||
categoria: "audio_voz_ia",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP-DSP Signal Processing",
|
||||
descricao: "Biblioteca oficial de processamento digital de sinais para SoCs ESP32 (FFT, filtros digitais FIR/IIR, matrizes e álgebra linear acelerada).",
|
||||
tags: ["DSP", "FFT", "Filtros", "Matemática", "SIMD", "Assembly"],
|
||||
chips: ["ESP32", "ESP32-S3", "ESP32-P4", "ESP32-C3", "ESP32-C6"],
|
||||
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.1"`
|
||||
espressif/esp-dsp: "^1.5.0"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp-nn",
|
||||
namespace: "espressif",
|
||||
name: "esp-nn",
|
||||
versao: "^1.2.0",
|
||||
versao: "^1.1.0",
|
||||
categoria: "audio_voz_ia",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP-NN Neural Network Kernels",
|
||||
descricao: "Kernels otimizados em assembly vetorial para aceleração de redes neurais e modelos TensorFlow Lite Micro em chips ESP32.",
|
||||
tags: ["TinyML", "TensorFlow Lite", "Redes Neurais", "Inferência", "Edge AI"],
|
||||
chips: ["ESP32-S3", "ESP32-P4", "ESP32"],
|
||||
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.2.0"`
|
||||
espressif/esp-nn: "^1.1.0"`
|
||||
},
|
||||
|
||||
// ==========================================
|
||||
@@ -405,9 +409,9 @@ export const COMPONENTES_REGISTRY = [
|
||||
categoria: "smart_home_mesh",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP Matter SDK",
|
||||
descricao: "SDK oficial para criar dispositivos interoperáveis com Apple Home, Google Home, Alexa e Home Assistant sobre Wi-Fi e Thread.",
|
||||
tags: ["Matter", "Smart Home", "Apple HomeKit", "Google Home", "Thread", "CHIP"],
|
||||
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",
|
||||
@@ -418,209 +422,209 @@ export const COMPONENTES_REGISTRY = [
|
||||
id: "espressif-esp-zigbee-lib",
|
||||
namespace: "espressif",
|
||||
name: "esp-zigbee-lib",
|
||||
versao: "^1.6.0",
|
||||
versao: "^1.4.0",
|
||||
categoria: "smart_home_mesh",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP Zigbee 3.0 Library",
|
||||
descricao: "Pilha certificada Zigbee 3.0 (ZBOSS) para criação de nós Coordenadores, Roteadores e Dispositivos Finais de baixo consumo em chips 802.15.4.",
|
||||
tags: ["Zigbee 3.0", "ZBOSS", "802.15.4", "Home Automation", "Bateria"],
|
||||
chips: ["ESP32-H2", "ESP32-C6"],
|
||||
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.6.0"`
|
||||
espressif/esp-zigbee-lib: "^1.4.0"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp_rcp_update",
|
||||
namespace: "espressif",
|
||||
name: "esp_rcp_update",
|
||||
versao: "^1.0.0",
|
||||
versao: "^0.1.2",
|
||||
categoria: "smart_home_mesh",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
titulo: "ESP RCP Thread/Zigbee Gateway",
|
||||
descricao: "Componente para atualização de coprocessador de rádio (RCP) 802.15.4 para construção de Thread Border Routers e gateways Zigbee multiprotocolo.",
|
||||
tags: ["Thread Border Router", "OpenThread", "RCP", "Zigbee Gateway"],
|
||||
chips: ["ESP32-H2", "ESP32-C6", "ESP32-S3"],
|
||||
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-br",
|
||||
urlRepo: "https://github.com/espressif/esp-thread-lib",
|
||||
exemploYaml: `dependencies:
|
||||
espressif/esp_rcp_update: "^1.0.0"`
|
||||
espressif/esp_rcp_update: "^0.1.2"`
|
||||
},
|
||||
|
||||
// ==========================================
|
||||
// 5. Drivers & Sensores
|
||||
// 5. Drivers & Sensors
|
||||
// ==========================================
|
||||
{
|
||||
id: "espressif-led_indicator",
|
||||
namespace: "espressif",
|
||||
name: "led_indicator",
|
||||
versao: "^1.2.0",
|
||||
versao: "^0.9.3",
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "LED Indicator Driver",
|
||||
descricao: "Driver inteligente para controle de padrões de iluminação de LED (piscar rápido, respiração/fade, códigos de erro e RGB) sem travar o loop principal.",
|
||||
tags: ["LED", "PWM", "RGB", "Blink", "Feedback Visual"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C2", "ESP32-C3", "ESP32-C6", "ESP32-H2", "ESP32-P4"],
|
||||
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: "^1.2.0"`
|
||||
espressif/led_indicator: "^0.9.3"`
|
||||
},
|
||||
{
|
||||
id: "espressif-button",
|
||||
namespace: "espressif",
|
||||
name: "button",
|
||||
versao: "^3.4.0",
|
||||
versao: "^3.3.0",
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "IoT Button Handler (iot_button)",
|
||||
descricao: "Gerenciador completo de botões com debounce, eventos de clique único, duplo, múltiplo, pressionamento longo e matrizes de teclado.",
|
||||
tags: ["Botão", "Debounce", "Long Press", "Double Click", "GPIO"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-H2", "ESP32-P4"],
|
||||
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.4.0"`
|
||||
espressif/button: "^3.3.0"`
|
||||
},
|
||||
{
|
||||
id: "espressif-led_strip",
|
||||
namespace: "espressif",
|
||||
name: "led_strip",
|
||||
versao: "^2.5.4",
|
||||
versao: "^2.5.3",
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "Addressable LED Strip (WS2812/SK6812)",
|
||||
descricao: "Driver de alto desempenho para fitas e matrizes de LED endereçáveis WS2812, WS2813 e SK6812 usando periféricos RMT ou SPI.",
|
||||
tags: ["WS2812B", "Neopixel", "SK6812", "RMT", "Fita de LED", "RGB"],
|
||||
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.4"`
|
||||
espressif/led_strip: "^2.5.3"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp_tinyusb",
|
||||
namespace: "espressif",
|
||||
name: "esp_tinyusb",
|
||||
versao: "^1.5.0",
|
||||
versao: "^1.4.5",
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP Native USB Device (TinyUSB)",
|
||||
descricao: "Extensão oficial do TinyUSB para ESP32-S2, ESP32-S3 e ESP32-P4, permitindo emular portas seriais USB CDC, Teclado/Mouse HID, Pen Drive MSC, DFU e WebUSB.",
|
||||
tags: ["USB Nativo", "TinyUSB", "USB CDC", "USB HID", "WebUSB", "MSC"],
|
||||
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.5.0"`
|
||||
espressif/esp_tinyusb: "^1.4.5"`
|
||||
},
|
||||
{
|
||||
id: "espressif-w5500",
|
||||
namespace: "espressif",
|
||||
name: "w5500",
|
||||
versao: "^1.2.0",
|
||||
versao: "^1.1.0",
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "WIZnet W5500 SPI Ethernet Driver",
|
||||
descricao: "Driver oficial para o chip Ethernet WIZnet W5500 via barramento SPI, integrando perfeitamente a interface física à pilha TCP/IP (lwIP) nativa do ESP-IDF.",
|
||||
tags: ["W5500", "Ethernet", "SPI Ethernet", "RJ45", "lwIP", "Rede Cabeada"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-P4"],
|
||||
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.2.0"`
|
||||
espressif/w5500: "^1.1.0"`
|
||||
},
|
||||
{
|
||||
id: "espressif-ch390",
|
||||
namespace: "espressif",
|
||||
name: "ch390",
|
||||
versao: "^1.0.0",
|
||||
versao: "^0.1.2",
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
titulo: "CH390 SPI Ethernet Driver",
|
||||
descricao: "Driver SPI Ethernet 10/100M para o controlador WCH CH390, ideal para adicionar porta de rede RJ45 econômica em placas com ESP32-C3, S3 ou P4.",
|
||||
tags: ["CH390", "Ethernet", "WCH", "SPI Ethernet", "RJ45"],
|
||||
chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-P4"],
|
||||
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/tree/master/ch390",
|
||||
urlRepo: "https://github.com/espressif/esp-eth-drivers",
|
||||
exemploYaml: `dependencies:
|
||||
espressif/ch390: "^1.0.0"`
|
||||
espressif/ch390: "^0.1.2"`
|
||||
},
|
||||
{
|
||||
id: "espressif-usb_host_uvc",
|
||||
namespace: "espressif",
|
||||
name: "usb_host_uvc",
|
||||
versao: "^1.0.4",
|
||||
versao: "^1.0.3",
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
titulo: "USB Host UVC (Webcam Driver)",
|
||||
descricao: "Driver USB Host para conectar webcams USB UVC padrão diretamente na porta USB nativa do ESP32-S2, ESP32-S3 ou ESP32-P4.",
|
||||
tags: ["USB Host", "UVC", "Webcam", "Câmera USB", "Vídeo"],
|
||||
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/tree/master/components/usb/usb_host_uvc",
|
||||
urlRepo: "https://github.com/espressif/esp-iot-solution",
|
||||
exemploYaml: `dependencies:
|
||||
espressif/usb_host_uvc: "^1.0.4"`
|
||||
espressif/usb_host_uvc: "^1.0.3"`
|
||||
},
|
||||
{
|
||||
id: "espressif-sensor_hub",
|
||||
namespace: "espressif",
|
||||
name: "sensor_hub",
|
||||
versao: "^1.0.0",
|
||||
versao: "^0.5.2",
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
titulo: "ESP Sensor Hub Manager",
|
||||
descricao: "Framework unificado para gerenciamento de sensores heterogêneos (I2C/SPI) com amostragem periódica, fusão de dados e disparo por eventos/interrupções.",
|
||||
tags: ["Sensores", "Sensor Hub", "I2C", "Eventos", "Coleta Periódica"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-P4"],
|
||||
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: "^1.0.0"`
|
||||
espressif/sensor_hub: "^0.5.2"`
|
||||
},
|
||||
{
|
||||
id: "espressif-bmi270_sensor",
|
||||
namespace: "espressif",
|
||||
name: "bmi270_sensor",
|
||||
versao: "^1.0.1",
|
||||
versao: "^0.1.2",
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
titulo: "Driver Sensor IMU Bosch BMI270",
|
||||
descricao: "Driver oficial para o sensor inercial IMU de 6 eixos Bosch BMI270 (Acelerômetro + Giroscópio) com detecção de gestos de movimento e passos.",
|
||||
tags: ["BMI270", "IMU", "Acelerômetro", "Giroscópio", "Bosch", "Gestos"],
|
||||
chips: ["ESP32", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-P4"],
|
||||
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/tree/master/components/sensors/imu/bmi270",
|
||||
urlRepo: "https://github.com/espressif/esp-iot-solution",
|
||||
exemploYaml: `dependencies:
|
||||
espressif/bmi270_sensor: "^1.0.1"`
|
||||
espressif/bmi270_sensor: "^0.1.2"`
|
||||
},
|
||||
{
|
||||
id: "espressif-ds18b20",
|
||||
namespace: "espressif",
|
||||
name: "ds18b20",
|
||||
versao: "^1.0.0",
|
||||
versao: "^0.1.1",
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "Driver Sensor de Temperatura DS18B20",
|
||||
descricao: "Driver digital para sensor de temperatura 1-Wire Dallas/Maxim DS18B20 com suporte a múltiplos sensores no mesmo pino GPIO via barramento RMT.",
|
||||
tags: ["DS18B20", "1-Wire", "Temperatura", "Sensor", "Dallas"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-P4"],
|
||||
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/tree/master/components/sensors/temperature/ds18b20",
|
||||
urlRepo: "https://github.com/espressif/esp-iot-solution",
|
||||
exemploYaml: `dependencies:
|
||||
espressif/ds18b20: "^1.0.0"`
|
||||
espressif/ds18b20: "^0.1.1"`
|
||||
},
|
||||
{
|
||||
id: "esp-idf-lib-scd4x",
|
||||
@@ -630,12 +634,12 @@ export const COMPONENTES_REGISTRY = [
|
||||
categoria: "drivers_perifericos",
|
||||
oficial: false,
|
||||
popular: true,
|
||||
titulo: "Driver Sensor CO2 Sensirion SCD40/SCD41",
|
||||
descricao: "Driver I2C de alta precisão para sensores fotoacústicos de CO2, temperatura e umidade relativa Sensirion SCD40 e SCD41 com auto-calibragem.",
|
||||
tags: ["SCD40", "SCD41", "Sensirion", "CO2", "Qualidade do Ar", "I2C"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-H2", "ESP32-P4"],
|
||||
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/tree/master/components/scd4x",
|
||||
urlRepo: "https://github.com/UncleRus/esp-idf-lib",
|
||||
exemploYaml: `dependencies:
|
||||
esp-idf-lib/scd4x: "^1.0.0"`
|
||||
},
|
||||
@@ -647,35 +651,36 @@ export const COMPONENTES_REGISTRY = [
|
||||
id: "espressif-esp-box-3",
|
||||
namespace: "espressif",
|
||||
name: "esp-box-3",
|
||||
versao: "^1.2.0",
|
||||
versao: "^1.3.1",
|
||||
categoria: "bsp_placas",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "BSP ESP32-S3-BOX-3",
|
||||
descricao: "Pacote de suporte completo para a placa de desenvolvimento de IA ESP32-S3-BOX-3, inicializando tela touch, codec de áudio, microfones duplos, sensor de movimento e LEDs com uma única função.",
|
||||
tags: ["BSP", "ESP-BOX-3", "Display Touch", "Microfone", "Áudio ES8311", "I2C/SPI"],
|
||||
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.2.0"`
|
||||
espressif/esp-box-3: "^1.3.1"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp32_s3_korvo_2",
|
||||
namespace: "espressif",
|
||||
name: "esp32_s3_korvo_2",
|
||||
versao: "^1.1.0",
|
||||
versao: "^1.0.2",
|
||||
categoria: "bsp_placas",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
titulo: "BSP ESP32-S3-Korvo-2",
|
||||
descricao: "Board Support Package para o kit de desenvolvimento de áudio e reconhecimento de voz ESP32-S3-Korvo-2, com suporte a microfones I2S e botões de toque.",
|
||||
tags: ["BSP", "Korvo", "Áudio", "Array de Microfones", "ESP-SR"],
|
||||
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.1.0"`
|
||||
espressif/esp32_s3_korvo_2: "^1.0.2"`
|
||||
},
|
||||
{
|
||||
id: "espressif-esp32_s3_eye",
|
||||
@@ -685,9 +690,9 @@ export const COMPONENTES_REGISTRY = [
|
||||
categoria: "bsp_placas",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "BSP ESP32-S3-EYE",
|
||||
descricao: "Board Support Package para a placa de visão computacional oficial ESP32-S3-EYE, configurando câmera OV2640, display LCD SPI redondo e microfone digital.",
|
||||
tags: ["BSP", "ESP32-S3-EYE", "Câmera", "Visão Computacional", "Display"],
|
||||
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",
|
||||
@@ -698,39 +703,39 @@ export const COMPONENTES_REGISTRY = [
|
||||
id: "espressif-m5stack_core_s3",
|
||||
namespace: "espressif",
|
||||
name: "m5stack_core_s3",
|
||||
versao: "^1.0.0",
|
||||
versao: "^0.2.0",
|
||||
categoria: "bsp_placas",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "BSP M5Stack CoreS3",
|
||||
descricao: "Board Support Package oficial para o dispositivo M5Stack CoreS3, inicializando tela sensível ao toque, PMIC AXP2101, câmera GC0308 e alto-falante I2S.",
|
||||
tags: ["BSP", "M5Stack", "CoreS3", "Display ILI9342C", "AXP2101", "Câmera"],
|
||||
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: "^1.0.0"`
|
||||
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: "^1.0.0",
|
||||
versao: "^0.1.0",
|
||||
categoria: "bsp_placas",
|
||||
oficial: false,
|
||||
popular: true,
|
||||
titulo: "BSP Waveshare ESP32-P4 Touch LCD 7\"",
|
||||
descricao: "Pacote de suporte para a placa de alta performance Waveshare ESP32-P4 com tela touch capacitiva de 7 polegadas (MIPI-DSI 1024x600) e coprocessador Wi-Fi 6.",
|
||||
tags: ["BSP", "ESP32-P4", "MIPI-DSI", "Waveshare", "Tela 7 Polegadas", "Touch"],
|
||||
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-WiFi6-Touch-LCD-7B",
|
||||
urlRepo: "https://github.com/waveshare/esp32-p4-bsp",
|
||||
exemploYaml: `dependencies:
|
||||
waveshare/esp32_p4_wifi6_touch_lcd_7b: "^1.0.0"`
|
||||
waveshare/esp32_p4_wifi6_touch_lcd_7b: "^0.1.0"`
|
||||
},
|
||||
|
||||
// ==========================================
|
||||
// 7. Sistema & Utilitários
|
||||
// 7. System & Utilities
|
||||
// ==========================================
|
||||
{
|
||||
id: "joltwallet-littlefs",
|
||||
@@ -740,10 +745,10 @@ export const COMPONENTES_REGISTRY = [
|
||||
categoria: "sistema_utilitarios",
|
||||
oficial: false,
|
||||
popular: true,
|
||||
titulo: "LittleFS Filesystem for ESP-IDF",
|
||||
descricao: "Port robusto do sistema de arquivos LittleFS para memória Flash SPI com wear-leveling dinâmico e proteção contra corrupção por queda de energia.",
|
||||
tags: ["LittleFS", "Flash", "Filesystem", "Wear Leveling", "NVS"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-H2", "ESP32-P4"],
|
||||
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:
|
||||
@@ -753,18 +758,18 @@ export const COMPONENTES_REGISTRY = [
|
||||
id: "espressif-esp-idf-cxx",
|
||||
namespace: "espressif",
|
||||
name: "esp-idf-cxx",
|
||||
versao: "^1.2.0",
|
||||
versao: "^0.2.1",
|
||||
categoria: "sistema_utilitarios",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP-IDF C++ Idiomatic Wrappers",
|
||||
descricao: "Conjunto de classes e wrappers C++ modernos (C++17/C++20/C++23) com semântica RAII para GPIOs, Wi-Fi, timers, filas FreeRTOS e semáforos.",
|
||||
tags: ["C++", "C++20", "RAII", "Modern C++", "Object Oriented", "FreeRTOS"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-H2", "ESP32-P4"],
|
||||
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: "^1.2.0"`
|
||||
espressif/esp-idf-cxx: "^0.2.1"`
|
||||
},
|
||||
{
|
||||
id: "espressif-cbor",
|
||||
@@ -774,12 +779,12 @@ export const COMPONENTES_REGISTRY = [
|
||||
categoria: "sistema_utilitarios",
|
||||
oficial: true,
|
||||
popular: false,
|
||||
titulo: "TinyCBOR Serialization",
|
||||
descricao: "Biblioteca ultraleve para serialização e deserialização de dados em formato binário CBOR (Concise Binary Object Representation).",
|
||||
tags: ["CBOR", "Serialização", "Binário", "IoT Protocol", "JSON Compacto"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-H2", "ESP32-P4"],
|
||||
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/espressif/tinycbor",
|
||||
urlRepo: "https://github.com/intel/tinycbor",
|
||||
exemploYaml: `dependencies:
|
||||
espressif/cbor: "^0.6.0"`
|
||||
},
|
||||
@@ -787,72 +792,59 @@ export const COMPONENTES_REGISTRY = [
|
||||
id: "espressif-esp_websocket_client",
|
||||
namespace: "espressif",
|
||||
name: "esp_websocket_client",
|
||||
versao: "^1.2.4",
|
||||
versao: "^1.2.3",
|
||||
categoria: "sistema_utilitarios",
|
||||
oficial: true,
|
||||
popular: true,
|
||||
titulo: "ESP WebSocket Client",
|
||||
descricao: "Cliente WebSocket bidirecional em tempo real com suporte a TLS/SSL (WSS), reconexão automática, sub-protocolos e ping/pong de heartbeat.",
|
||||
tags: ["WebSocket", "WSS", "TLS", "Tempo Real", "Sockets", "JSON"],
|
||||
chips: ["ESP32", "ESP32-S2", "ESP32-S3", "ESP32-C3", "ESP32-C6", "ESP32-P4"],
|
||||
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.4"`
|
||||
espressif/esp_websocket_client: "^1.2.3"`
|
||||
}
|
||||
];
|
||||
|
||||
export const GUIA_COMPONENT_MANAGER = {
|
||||
titulo: "Como Usar o ESP Component Registry no ESP-IDF",
|
||||
resumo: "A partir do ESP-IDF v4.4 e consolidado no v5.x+, a Espressif adotou a arquitetura de pacotes modulares gerenciada pelo IDF Component Manager. Esqueça submódulos git complexos: agora basta declarar as bibliotecas no arquivo de manifesto idf_component.yml do seu projeto.",
|
||||
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: "Instalação Automática e Desacoplada",
|
||||
descricao: "O compilador baixa, compila e gerencia as versões das bibliotecas automaticamente durante o 'idf.py build' ou 'idf.py reconfigure'."
|
||||
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: "Versionamento Semântico Rigoroso",
|
||||
descricao: "Controle exatamente quando atualizar com operadores de versão (^ para compatibilidade minor, ~ para patches ou versões exatas fixas)."
|
||||
titulo: "Strict Semantic Versioning",
|
||||
descricao: "Control exactly when to update using version operators (^ for minor compatibility, ~ for patches, or exact fixed versions)."
|
||||
},
|
||||
{
|
||||
titulo: "Projetos mais Leves e Limpos",
|
||||
descricao: "O repositório do seu projeto fica limpo, sem carregar código de terceiros dentro do histórico do Git."
|
||||
titulo: "Lighter and Cleaner Projects",
|
||||
descricao: "Your project repository stays clean, without embedding third-party code in your Git history."
|
||||
},
|
||||
{
|
||||
titulo: "Compartilhamento Corporativo ou Comunitário",
|
||||
descricao: "Publique seus próprios componentes na nuvem pública da Espressif ou em registros privados locais da sua empresa."
|
||||
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/componente^versao"',
|
||||
exemplo: 'idf.py add-dependency "espressif/esp_lvgl_port^2.4.0"',
|
||||
explicacao: "Cria ou atualiza automaticamente o arquivo 'main/idf_component.yml' adicionando a dependência informada."
|
||||
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: "Força o CMake e o Component Manager a resolver novamente a árvore de dependências e baixar pacotes pendentes."
|
||||
explicacao: "Forces CMake and Component Manager to re-resolve the dependency tree and download pending packages."
|
||||
},
|
||||
{
|
||||
comando: "compote component upload --name <component_name> --namespace <sua_org>",
|
||||
exemplo: "compote component upload --name meu_driver_sensor --namespace minhadiv",
|
||||
explicacao: "Publica seu componente de código aberto ou proprietário no ESP Component Registry usando a ferramenta oficial Compote CLI."
|
||||
comando: "compote component upload --name <component_name> --namespace <your_org>",
|
||||
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: `# Estrutura típica do arquivo: main/idf_component.yml
|
||||
dependencies:
|
||||
# Baixa do registro oficial da Espressif
|
||||
espressif/esp_lvgl_port: "^2.4.0"
|
||||
espressif/button: "~3.4.0"
|
||||
|
||||
# Versão exata
|
||||
espressif/led_indicator: "1.2.0"
|
||||
|
||||
# Dependência da comunidade
|
||||
joltwallet/littlefs: "^1.14.8"
|
||||
|
||||
# Dependência local no seu disco (opcional)
|
||||
# meu_driver_local:
|
||||
# path: "../../components/meu_driver"`
|
||||
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\""
|
||||
};
|
||||
|
||||
+10
-10
@@ -65,7 +65,7 @@ export const errosCatalogo = [
|
||||
titulo: "Brownout Detector Reset (Voltage Drop)",
|
||||
categoria: "alimentacao",
|
||||
sintomas: ["bootloop", "wifi-crash"],
|
||||
gravidade: "Alta",
|
||||
gravidade: "High",
|
||||
logSerial: "Brownout detector was triggered\n\nrst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)",
|
||||
resumo: "ESP32 supply voltage dropped below the safe operating threshold (approximately 2.8V ~ 2.43V).",
|
||||
causaRaiz:
|
||||
@@ -129,7 +129,7 @@ else:
|
||||
titulo: "Strapping Pin Conflict at Boot",
|
||||
categoria: "alimentacao",
|
||||
sintomas: ["bootloop", "upload-fail"],
|
||||
gravidade: "Crítica",
|
||||
gravidade: "Critical",
|
||||
logSerial: "rst:0x1 (POWERON_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)\nflash read err, 1000\nwaiting for download",
|
||||
resumo: "The ESP32 fails to boot firmware from Flash or enters download mode unintentionally because a strapping pin was pulled to an incorrect logic level during reset.",
|
||||
causaRaiz:
|
||||
@@ -175,7 +175,7 @@ analog_sensor = Pin(36, Pin.IN) # Correct (requires external pull-up if used as
|
||||
titulo: "Guru Meditation: LoadProhibited / StoreProhibited",
|
||||
categoria: "cpu-panics",
|
||||
sintomas: ["bootloop", "null-pointer"],
|
||||
gravidade: "Crítica",
|
||||
gravidade: "Critical",
|
||||
logSerial: "Guru Meditation Error: Core 0 panic'ed (LoadProhibited). Exception was unhandled.\nCore 0 register dump:\nPC : 0x400d14bc PS : 0x00060830 A0 : 0x800d1512 A1 : 0x3ffb1f20 \nEXCVADDR: 0x00000000",
|
||||
resumo: "The CPU attempted to read (Load) or write (Store) to an inaccessible or invalid memory address, typically null pointer 0x00000000.",
|
||||
causaRaiz:
|
||||
@@ -242,7 +242,7 @@ def process_sensor(raw_data):
|
||||
titulo: "Cache Error / InstructionFetchError in ISRs",
|
||||
categoria: "cpu-panics",
|
||||
sintomas: ["bootloop", "null-pointer"],
|
||||
gravidade: "Alta",
|
||||
gravidade: "High",
|
||||
logSerial: "Guru Meditation Error: Core 0 panic'ed (Cache disabled but cached memory region accessed)\nGuru Meditation Error: Core 0 panic'ed (InstructionFetchError)",
|
||||
resumo: "An interrupt service routine (ISR) tried to execute code or read constants from SPI Flash while the Flash memory controller was disabled for a write or erase operation.",
|
||||
causaRaiz:
|
||||
@@ -309,7 +309,7 @@ sensor.irq(trigger=Pin.IRQ_FALLING, handler=handle_pulse)`,
|
||||
titulo: "Task Watchdog Timer (TWDT) Timeout",
|
||||
categoria: "freertos",
|
||||
sintomas: ["bootloop", "wdt-reset"],
|
||||
gravidade: "Crítica",
|
||||
gravidade: "Critical",
|
||||
logSerial: "E (10532) task_wdt: Task watchdog got triggered. The following tasks/users did not reset the watchdog in time:\nE (10532) task_wdt: - IDLE0 (CPU 0)\nTask watchdog got triggered. System will be reset.",
|
||||
resumo: "A high-priority task entered a busy loop without yielding CPU time, preventing the FreeRTOS IDLE task from feeding the watchdog.",
|
||||
causaRaiz:
|
||||
@@ -376,7 +376,7 @@ asyncio.run(main())`,
|
||||
titulo: "Stack Overflow (Task Stack Depletion)",
|
||||
categoria: "freertos",
|
||||
sintomas: ["bootloop", "null-pointer"],
|
||||
gravidade: "Crítica",
|
||||
gravidade: "Critical",
|
||||
logSerial: "Guru Meditation Error: Core 1 panic'ed (Unhandled debug exception).\nDebug exception reason: Stack canary watchpoint triggered (my_task)",
|
||||
resumo: "The task consumed more stack memory than allocated upon creation, corrupting the RTOS protection canary.",
|
||||
causaRaiz:
|
||||
@@ -430,7 +430,7 @@ print("Allocated Heap:", gc.mem_alloc(), "bytes")`,
|
||||
titulo: "Heap Fragmentation and Memory Leaks",
|
||||
categoria: "memoria",
|
||||
sintomas: ["random-freeze", "tls-fail"],
|
||||
gravidade: "Alta",
|
||||
gravidade: "High",
|
||||
logSerial: "E (45892) mbedtls: mbedtls_ssl_setup returned -0x7f00\nE (45892) esp-tls: create_ssl_handle failed\nE (45893) HTTP_CLIENT: Connection failed, out of memory",
|
||||
resumo: "The ESP32 fails to allocate memory despite reporting a seemingly adequate total free heap size.",
|
||||
causaRaiz:
|
||||
@@ -492,7 +492,7 @@ print(f"Free Heap: {gc.mem_free()} B | Allocated: {gc.mem_alloc()} B")`,
|
||||
titulo: "DMA Allocation Failure in External Memory (PSRAM)",
|
||||
categoria: "memoria",
|
||||
sintomas: ["bootloop", "random-freeze"],
|
||||
gravidade: "Alta",
|
||||
gravidade: "High",
|
||||
logSerial: "E (1204) spi_master: spi_bus_initialize: DMA channel not compatible with external RAM buffer\nESP_ERROR_CHECK failed: esp_err_t 0x102 (ESP_ERR_INVALID_ARG)",
|
||||
resumo: "Firmware attempted to pass a buffer allocated in external PSRAM to a DMA-driven peripheral (SPI, I2S, LCD, SDMMC) that can only access internal SRAM.",
|
||||
causaRaiz:
|
||||
@@ -542,7 +542,7 @@ buffer_spi = bytearray(1024)`,
|
||||
titulo: "Failed to connect to ESP32: Timed out waiting for packet header",
|
||||
categoria: "boot-flash",
|
||||
sintomas: ["upload-fail"],
|
||||
gravidade: "Média",
|
||||
gravidade: "Medium",
|
||||
logSerial: "A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header\nesptool.py v4.6\nConnecting...................",
|
||||
resumo: "The programming tool (esptool / Arduino IDE / PlatformIO) was unable to place the microcontroller into UART bootloader mode.",
|
||||
causaRaiz:
|
||||
@@ -580,7 +580,7 @@ buffer_spi = bytearray(1024)`,
|
||||
titulo: "TLS/HTTPS Handshake Failure due to Desynchronized Clock",
|
||||
categoria: "conectividade",
|
||||
sintomas: ["tls-fail", "random-freeze"],
|
||||
gravidade: "Alta",
|
||||
gravidade: "High",
|
||||
logSerial: "E (15420) esp-tls-mbedtls: mbedtls_ssl_handshake returned -0x2700\nE (15420) esp-tls: Failed to verify peer certificate!\nE (15421) esp-tls: Verification info: The certificate is not yet valid (or has expired)",
|
||||
resumo: "Secure HTTPS, AWS IoT, MQTT over TLS, or Web API requests fail because the internal ESP32 RTC defaults to 01/01/1970.",
|
||||
causaRaiz:
|
||||
|
||||
+47
-47
@@ -37,7 +37,7 @@ const nivelMemoria = (palavra) => (p) => {
|
||||
export const TOPICOS = [
|
||||
{ id: "flash", nome: "Flash", termos: ["flash", "memoria flash", "spi flash", "armazenamento", "firmware", "rom externa"], pinoNivel: nivelMemoria("flash"), pinoRotulo: "connected to flash memory" },
|
||||
{ id: "psram", nome: "PSRAM", termos: ["psram", "ram externa", "spiram"], pinoNivel: nivelMemoria("psram"), pinoRotulo: "connected to PSRAM" },
|
||||
{ id: "memoria", nome: "Memory", termos: ["memoria", "sram", "heap", "rtc ram", "kb de ram", "memoria interna", "ram"], pinoRotulo: "" },
|
||||
{ id: "memoria", nome: "Memory", termos: ["memoria", "sram", "heap", "rtc ram", "kb de ram", "memoria interna", "ram", "memory"], pinoRotulo: "" },
|
||||
{ id: "wifi", nome: "Wi-Fi", termos: ["wifi", "wi-fi", "wireless", "sem fio", "802.11", "wifi6", "wifi 6", "wi-fi 6"], pinoCats: ["Antena"], pinoRotulo: "antenna and radio pins" },
|
||||
{ id: "bluetooth", nome: "Bluetooth", termos: ["bluetooth", "ble", "bt", "bluetooth le", "mesh"], pinoCats: ["Antena"], pinoRotulo: "antenna and radio pins" },
|
||||
{ id: "zigbee", nome: "Zigbee/Thread", termos: ["zigbee", "thread", "802.15.4", "ieee 802.15.4"], pinoRotulo: "" },
|
||||
@@ -45,32 +45,32 @@ export const TOPICOS = [
|
||||
{ id: "ethernet", nome: "Ethernet", termos: ["ethernet", "rmii", "cabo de rede", "lan"], pinoCats: ["Ethernet"], pinoRotulo: "Ethernet pins" },
|
||||
{ id: "can", nome: "CAN / TWAI", termos: ["can", "twai", "can bus", "canbus", "can fd"], pinoRe: /twai|\bcan\b/, pinoRotulo: "CAN/TWAI pins" },
|
||||
{ id: "usb", nome: "USB", termos: ["usb", "otg", "usb serial", "usb otg", "hid", "cdc"], pinoCats: ["USB"], pinoRotulo: "USB pins" },
|
||||
{ id: "jtag", nome: "JTAG / Depuração", termos: ["jtag", "debug", "depuracao", "depurar", "openocd", "gdb"], pinoCats: ["JTAG"], pinoRotulo: "JTAG pins" },
|
||||
{ id: "adc", nome: "ADC", termos: ["adc", "analogico", "entrada analogica", "conversor analogico", "analogread", "saradc"], pinoCats: ["ADC"], pinoRotulo: "with ADC" },
|
||||
{ id: "jtag", nome: "JTAG / Debug", termos: ["jtag", "debug", "depuracao", "depurar", "openocd", "gdb"], pinoCats: ["JTAG"], pinoRotulo: "JTAG pins" },
|
||||
{ id: "adc", nome: "ADC", termos: ["adc", "analogico", "entrada analogica", "conversor analogico", "analogread", "saradc", "analog"], pinoCats: ["ADC"], pinoRotulo: "with ADC" },
|
||||
{ id: "dac", nome: "DAC", termos: ["dac", "saida analogica", "conversor digital"], pinoCats: ["DAC"], pinoRotulo: "with DAC" },
|
||||
{ id: "touch", nome: "Touch capacitivo", termos: ["touch", "capacitivo", "toque", "touchpad", "sensor de toque"], pinoCats: ["Touch"], pinoRotulo: "de touch capacitivo" },
|
||||
{ id: "uart", nome: "UART", termos: ["uart", "serial", "tx", "rx", "txd", "rxd", "porta serial"], pinoCats: ["UART"], pinoRotulo: "de UART" },
|
||||
{ id: "spi", nome: "SPI", termos: ["spi", "mosi", "miso", "sclk", "barramento spi"], pinoCats: ["SPI"], pinoRotulo: "de SPI" },
|
||||
{ id: "i2c", nome: "I2C", termos: ["i2c", "sda", "scl", "twi", "iic"], pinoCats: ["I2C"], pinoRotulo: "de I2C" },
|
||||
{ id: "i2s", nome: "I2S", termos: ["i2s", "audio", "som", "microfone", "pdm", "codec"], pinoRe: /i2s|\bpdm\b/, pinoRotulo: "de I2S/áudio" },
|
||||
{ id: "pwm", nome: "PWM", termos: ["pwm", "ledc", "mcpwm", "servo", "dimmer"], pinoRe: /ledc|pwm/, pinoRotulo: "de PWM" },
|
||||
{ id: "sd", nome: "Cartão SD / SDIO", termos: ["sd", "sdio", "sd card", "sdcard", "cartao sd", "microsd", "sdmmc", "mmc"], pinoCats: ["SD"], pinoRe: /sdio|sdmmc|\bsd\b/, pinoRotulo: "de cartão SD/SDIO" },
|
||||
{ id: "camera", nome: "Câmera", termos: ["camera", "cam", "dvp", "csi", "mipi csi", "ov2640", "video"], pinoCats: ["CSI"], pinoRe: /\bcam\b|dvp|cam_/, pinoRotulo: "de câmera" },
|
||||
{ id: "lcd", nome: "Display / LCD", termos: ["lcd", "display", "tela", "dsi", "mipi dsi", "oled", "tft", "lvgl", "rgb"], pinoCats: ["DSI"], pinoRe: /lcd/, pinoRotulo: "de display/LCD" },
|
||||
{ id: "strapping", nome: "Boot / Strapping", termos: ["strapping", "boot", "bootstrap", "modo de boot", "download mode", "modo de gravacao", "inicializacao"], pinoCats: ["Strapping"], pinoRotulo: "de strapping (modo de boot)" },
|
||||
{ id: "energia_pinos", nome: "Power", termos: ["alimentacao", "vdd", "3v3", "3.3v", "tensao", "regulador", "ldo", "fonte"], pinoCats: ["Power"], pinoRotulo: "power pins" },
|
||||
{ id: "clock", nome: "Clock / Cristal", termos: ["clock", "xtal", "cristal", "oscilador", "32khz", "40mhz"], pinoCats: ["Clock"], pinoRotulo: "de clock/cristal" },
|
||||
{ id: "gpio", nome: "GPIO", termos: ["gpio", "entradas e saidas"], pinoCats: ["GPIO"], pinoRotulo: "de GPIO" },
|
||||
{ id: "baixo_consumo", nome: "Baixo consumo / ULP", termos: ["ulp", "lp core", "lp cpu", "coprocessador", "lp gpio", "low power", "rtc gpio"], pinoCats: ["Low Power"], pinoRotulo: "de baixo consumo (LP/RTC)" },
|
||||
{ id: "antena", nome: "Antena / RF", termos: ["antena", "rf", "radiofrequencia", "ipex"], pinoCats: ["Antena"], pinoRotulo: "de antena/RF" },
|
||||
{ id: "seguranca", nome: "Security", termos: ["seguranca", "secure boot", "criptografia", "encriptacao", "aes", "sha", "rsa", "hmac", "ecdsa", "efuse", "tee", "trng", "rng", "hsm", "protecao"], pinoRotulo: "" },
|
||||
{ id: "consumo", nome: "Consumo de energia", termos: ["consumo", "bateria", "deep sleep", "light sleep", "sleep", "modem sleep", "corrente", "miliamperes", "autonomia", "economia de energia", "low power mode"], pinoRotulo: "" },
|
||||
{ id: "temperatura", nome: "Temperatura", termos: ["temperatura", "calor", "graus", "faixa de temperatura", "industrial"], pinoRotulo: "" },
|
||||
{ id: "ia", nome: "IA / Aceleração", termos: ["ia", "ai", "machine learning", "ml", "tinyml", "vetorial", "inteligencia artificial", "rede neural", "esp-nn", "esp-dl"], pinoRotulo: "" },
|
||||
{ id: "processador", nome: "Processor", termos: ["processador", "cpu", "nucleo", "nucleos", "core", "dual core", "single core", "arquitetura", "xtensa", "risc-v", "riscv"], pinoRotulo: "" },
|
||||
{ id: "frequencia", nome: "Frequency", termos: ["frequencia", "mhz", "velocidade", "desempenho", "performance"], pinoRotulo: "" },
|
||||
{ id: "ferramentas", nome: "Ferramentas / SDK", termos: ["esp-idf", "idf", "arduino", "sdk", "toolchain", "versao do idf"], pinoRotulo: "" },
|
||||
{ id: "encapsulamento", nome: "Módulos e encapsulamento", termos: ["modulo", "modulos", "encapsulamento", "package", "qfn", "wroom", "wrover", "mini-1"], pinoRotulo: "" },
|
||||
{ id: "touch", nome: "Capacitive Touch", termos: ["touch", "capacitivo", "toque", "touchpad", "sensor de toque"], pinoCats: ["Touch"], pinoRotulo: "capacitive touch pins" },
|
||||
{ id: "uart", nome: "UART", termos: ["uart", "serial", "tx", "rx", "txd", "rxd", "porta serial"], pinoCats: ["UART"], pinoRotulo: "UART pins" },
|
||||
{ id: "spi", nome: "SPI", termos: ["spi", "mosi", "miso", "sclk", "barramento spi"], pinoCats: ["SPI"], pinoRotulo: "SPI pins" },
|
||||
{ id: "i2c", nome: "I2C", termos: ["i2c", "sda", "scl", "twi", "iic"], pinoCats: ["I2C"], pinoRotulo: "I2C pins" },
|
||||
{ id: "i2s", nome: "I2S", termos: ["i2s", "audio", "som", "microfone", "pdm", "codec"], pinoRe: /i2s|\bpdm\b/, pinoRotulo: "I2S / audio pins" },
|
||||
{ id: "pwm", nome: "PWM", termos: ["pwm", "ledc", "mcpwm", "servo", "dimmer"], pinoRe: /ledc|pwm/, pinoRotulo: "PWM pins" },
|
||||
{ id: "sd", nome: "SD Card / SDIO", termos: ["sd", "sdio", "sd card", "sdcard", "cartao sd", "microsd", "sdmmc", "mmc"], pinoCats: ["SD"], pinoRe: /sdio|sdmmc|\bsd\b/, pinoRotulo: "SD Card / SDIO pins" },
|
||||
{ id: "camera", nome: "Camera", termos: ["camera", "cam", "dvp", "csi", "mipi csi", "ov2640", "video"], pinoCats: ["CSI"], pinoRe: /\bcam\b|dvp|cam_/, pinoRotulo: "camera pins" },
|
||||
{ id: "lcd", nome: "Display / LCD", termos: ["lcd", "display", "tela", "dsi", "mipi dsi", "oled", "tft", "lvgl", "rgb"], pinoCats: ["DSI"], pinoRe: /lcd/, pinoRotulo: "display/LCD pins" },
|
||||
{ id: "strapping", nome: "Boot / Strapping", termos: ["strapping", "boot", "bootstrap", "modo de boot", "download mode", "modo de gravacao", "inicializacao"], pinoCats: ["Strapping"], pinoRotulo: "strapping (boot mode) pins" },
|
||||
{ id: "energia_pinos", nome: "Power", termos: ["alimentacao", "vdd", "3v3", "3.3v", "tensao", "regulador", "ldo", "fonte", "power"], pinoCats: ["Power"], pinoRotulo: "power pins" },
|
||||
{ id: "clock", nome: "Clock / Crystal", termos: ["clock", "xtal", "cristal", "oscilador", "32khz", "40mhz", "crystal"], pinoCats: ["Clock"], pinoRotulo: "clock/crystal pins" },
|
||||
{ id: "gpio", nome: "GPIO", termos: ["gpio", "entradas e saidas"], pinoCats: ["GPIO"], pinoRotulo: "GPIO pins" },
|
||||
{ id: "baixo_consumo", nome: "Low Power / ULP", termos: ["ulp", "lp core", "lp cpu", "coprocessador", "lp gpio", "low power", "rtc gpio"], pinoCats: ["Low Power"], pinoRotulo: "low-power (LP/RTC) pins" },
|
||||
{ id: "antena", nome: "Antenna / RF", termos: ["antena", "rf", "radiofrequencia", "ipex", "antenna"], pinoCats: ["Antena"], pinoRotulo: "antenna/RF pins" },
|
||||
{ id: "seguranca", nome: "Security", termos: ["seguranca", "secure boot", "criptografia", "encriptacao", "aes", "sha", "rsa", "hmac", "ecdsa", "efuse", "tee", "trng", "rng", "hsm", "protecao", "security"], pinoRotulo: "" },
|
||||
{ id: "consumo", nome: "Power Consumption", termos: ["consumo", "bateria", "deep sleep", "light sleep", "sleep", "modem sleep", "corrente", "miliamperes", "autonomia", "economia de energia", "low power mode", "power consumption"], pinoRotulo: "" },
|
||||
{ id: "temperatura", nome: "Temperature", termos: ["temperatura", "calor", "graus", "faixa de temperatura", "industrial", "temperature"], pinoRotulo: "" },
|
||||
{ id: "ia", nome: "AI / Acceleration", termos: ["ia", "ai", "machine learning", "ml", "tinyml", "vetorial", "inteligencia artificial", "rede neural", "esp-nn", "esp-dl"], pinoRotulo: "" },
|
||||
{ id: "processador", nome: "Processor", termos: ["processador", "cpu", "nucleo", "nucleos", "core", "dual core", "single core", "arquitetura", "xtensa", "risc-v", "riscv", "processor"], pinoRotulo: "" },
|
||||
{ id: "frequencia", nome: "Frequency", termos: ["frequencia", "mhz", "velocidade", "desempenho", "performance", "frequency"], pinoRotulo: "" },
|
||||
{ id: "ferramentas", nome: "Tools / SDK", termos: ["esp-idf", "idf", "arduino", "sdk", "toolchain", "versao do idf", "tools"], pinoRotulo: "" },
|
||||
{ id: "encapsulamento", nome: "Modules & Packaging", termos: ["modulo", "modulos", "encapsulamento", "package", "qfn", "wroom", "wrover", "mini-1", "modules"], pinoRotulo: "" },
|
||||
];
|
||||
|
||||
/**
|
||||
@@ -79,11 +79,11 @@ export const TOPICOS = [
|
||||
* na página /series/[key].
|
||||
*/
|
||||
export const SPEC_CAMPOS = [
|
||||
{ campo: "arquitetura", label: "Arquitetura", secao: "processador", topicos: ["processador"] },
|
||||
{ campo: "nucleos", label: "Núcleos", secao: "processador", topicos: ["processador"] },
|
||||
{ campo: "arquitetura", label: "Architecture", secao: "processador", topicos: ["processador"] },
|
||||
{ campo: "nucleos", label: "Cores", secao: "processador", topicos: ["processador"] },
|
||||
{ campo: "frequencia", label: "Frequency", secao: "processador", topicos: ["frequencia", "processador"] },
|
||||
{ campo: "coprocessador_ulp", label: "Coprocessador ULP", secao: "processador", topicos: ["baixo_consumo"] },
|
||||
{ campo: "aceleradores_ia", label: "Aceleradores de IA", secao: "processador", topicos: ["ia"] },
|
||||
{ campo: "coprocessador_ulp", label: "ULP Coprocessor", secao: "processador", topicos: ["baixo_consumo"] },
|
||||
{ campo: "aceleradores_ia", label: "AI Accelerators", secao: "processador", topicos: ["ia"] },
|
||||
|
||||
{ campo: "wifi", label: "Wi-Fi", secao: "conectividade", topicos: ["wifi"] },
|
||||
{ campo: "bluetooth", label: "Bluetooth", secao: "conectividade", topicos: ["bluetooth"] },
|
||||
@@ -94,10 +94,10 @@ export const SPEC_CAMPOS = [
|
||||
{ campo: "can", label: "CAN", secao: "conectividade", topicos: ["can"] },
|
||||
|
||||
{ campo: "memoria_sram", label: "SRAM", secao: "memoria", topicos: ["memoria"] },
|
||||
{ campo: "memoria_sram_rtc", label: "SRAM RTC", secao: "memoria", topicos: ["memoria", "baixo_consumo"] },
|
||||
{ campo: "memoria_sram_rtc", label: "RTC SRAM", secao: "memoria", topicos: ["memoria", "baixo_consumo"] },
|
||||
{ campo: "memoria_rom", label: "ROM", secao: "memoria", topicos: ["memoria"] },
|
||||
{ campo: "flash_externa", label: "Flash externa", secao: "memoria", topicos: ["flash", "memoria"] },
|
||||
{ campo: "psram_externa", label: "PSRAM externa", secao: "memoria", topicos: ["psram", "memoria"] },
|
||||
{ campo: "flash_externa", label: "External Flash", secao: "memoria", topicos: ["flash", "memoria"] },
|
||||
{ campo: "psram_externa", label: "External PSRAM", secao: "memoria", topicos: ["psram", "memoria"] },
|
||||
|
||||
{ campo: "gpio", label: "GPIO", secao: "perifericos", topicos: ["gpio"] },
|
||||
{ campo: "adc", label: "ADC", secao: "perifericos", topicos: ["adc"] },
|
||||
@@ -110,11 +110,11 @@ export const SPEC_CAMPOS = [
|
||||
{ campo: "pwm", label: "PWM", secao: "perifericos", topicos: ["pwm"] },
|
||||
{ campo: "usb", label: "USB", secao: "perifericos", topicos: ["usb"] },
|
||||
{ campo: "lcd", label: "LCD", secao: "interfaces", topicos: ["lcd"] },
|
||||
{ campo: "camera", label: "Câmera", secao: "interfaces", topicos: ["camera"] },
|
||||
{ campo: "camera", label: "Camera", secao: "interfaces", topicos: ["camera"] },
|
||||
{ campo: "mipi_csi", label: "MIPI CSI", secao: "interfaces", topicos: ["camera"] },
|
||||
{ campo: "mipi_dsi", label: "MIPI DSI", secao: "interfaces", topicos: ["lcd"] },
|
||||
{ campo: "sdio", label: "SDIO", secao: "interfaces", topicos: ["sd"] },
|
||||
{ campo: "sensor_temperatura", label: "Sensor de temperatura", secao: "interfaces", topicos: ["temperatura"] },
|
||||
{ campo: "sensor_temperatura", label: "Temperature Sensor", secao: "interfaces", topicos: ["temperatura"] },
|
||||
|
||||
{ campo: "seguranca.aes", label: "AES", secao: "seguranca", topicos: ["seguranca"] },
|
||||
{ campo: "seguranca.sha", label: "SHA", secao: "seguranca", topicos: ["seguranca"] },
|
||||
@@ -122,27 +122,27 @@ export const SPEC_CAMPOS = [
|
||||
{ campo: "seguranca.ecc", label: "ECC", secao: "seguranca", topicos: ["seguranca"] },
|
||||
{ campo: "seguranca.ecdsa", label: "ECDSA", secao: "seguranca", topicos: ["seguranca"] },
|
||||
{ campo: "seguranca.hmac", label: "HMAC", secao: "seguranca", topicos: ["seguranca"] },
|
||||
{ campo: "seguranca.assinatura_digital", label: "Assinatura digital", secao: "seguranca", topicos: ["seguranca"] },
|
||||
{ campo: "seguranca.rng", label: "Gerador aleatório", secao: "seguranca", topicos: ["seguranca"] },
|
||||
{ campo: "seguranca.criptografia_flash", label: "Criptografia de flash", secao: "seguranca", topicos: ["seguranca", "flash"] },
|
||||
{ campo: "seguranca.assinatura_digital", label: "Digital Signature", secao: "seguranca", topicos: ["seguranca"] },
|
||||
{ campo: "seguranca.rng", label: "Random Number Generator", secao: "seguranca", topicos: ["seguranca"] },
|
||||
{ campo: "seguranca.criptografia_flash", label: "Flash Encryption", secao: "seguranca", topicos: ["seguranca", "flash"] },
|
||||
{ campo: "seguranca.secure_boot", label: "Secure Boot", secao: "seguranca", topicos: ["seguranca", "strapping"] },
|
||||
|
||||
{ campo: "temperatura_operacao", label: "Temperatura de operação", secao: "temperatura", topicos: ["temperatura"] },
|
||||
{ campo: "temperatura_armazenamento", label: "Temperatura de armazenamento", secao: "temperatura", topicos: ["temperatura"] },
|
||||
{ campo: "temperatura_operacao", label: "Operating Temperature", secao: "temperatura", topicos: ["temperatura"] },
|
||||
{ campo: "temperatura_armazenamento", label: "Storage Temperature", secao: "temperatura", topicos: ["temperatura"] },
|
||||
|
||||
{ campo: "esp_idf_minimo", label: "ESP-IDF mínimo", secao: "ferramentas", topicos: ["ferramentas"] },
|
||||
{ campo: "arduino_core", label: "Core Arduino", secao: "ferramentas", topicos: ["ferramentas"] },
|
||||
{ campo: "depuracao", label: "Depuração", secao: "ferramentas", topicos: ["jtag", "ferramentas"] },
|
||||
{ campo: "encapsulamento", label: "Encapsulamento", secao: "ferramentas", topicos: ["encapsulamento"] },
|
||||
{ campo: "modulos", label: "Módulos", secao: "ferramentas", topicos: ["encapsulamento"] },
|
||||
{ campo: "esp_idf_minimo", label: "Minimum ESP-IDF", secao: "ferramentas", topicos: ["ferramentas"] },
|
||||
{ campo: "arduino_core", label: "Arduino Core", secao: "ferramentas", topicos: ["ferramentas"] },
|
||||
{ campo: "depuracao", label: "Debugging", secao: "ferramentas", topicos: ["jtag", "ferramentas"] },
|
||||
{ campo: "encapsulamento", label: "Package", secao: "ferramentas", topicos: ["encapsulamento"] },
|
||||
{ campo: "modulos", label: "Modules", secao: "ferramentas", topicos: ["encapsulamento"] },
|
||||
];
|
||||
|
||||
const ROTULOS_ENERGIA = {
|
||||
active: "Ativo",
|
||||
active: "Active",
|
||||
modem_sleep: "Modem Sleep",
|
||||
light_sleep: "Light Sleep",
|
||||
deep_sleep: "Deep Sleep",
|
||||
hibernation: "Hibernação",
|
||||
hibernation: "Hibernation",
|
||||
};
|
||||
|
||||
const pegar = (obj, caminho) => caminho.split(".").reduce((o, k) => (o == null ? o : o[k]), obj);
|
||||
|
||||
Reference in new issue
Block a user