Kode Dot Studio
Flasheador Web ESP32 (Web Serial)
Programa binarios (.bin) directamente desde el navegador a la memoria Flash de Kode Dot.
Firmwares Oficiales & Presets
Registro del Flasher
Terminal Serie & Plotter Gráfico
Consola interactiva bidireccional Web Serial con soporte ANSI, timestamps, telemetría y graficado de variables en tiempo real.
Gestor Visual de Particiones Flash (16 MB)
Diseña, dimensiona y exporta la tabla de particiones para tu firmware ESP32-S3.
| Nombre | Tipo | SubTipo | Offset | Tamaño (KB) | Flags | Acciones |
|---|
Explorador & Gestor de Archivos LittleFS
Explora, edita y transfiere archivos directamente a la memoria Flash del dispositivo.
Editor de Parámetros NVS (Non-Volatile Storage)
Inspecciona y modifica credenciales Wi-Fi, calibración y preferencias guardadas.
| Namespace | Clave (Key) | Tipo | Valor | Acciones |
|---|
Gestor de Actualizaciones OTA & Dual-Boot (v3.0)
Decodificador de Crash Dumps & Backtrace
Diagnostica pánicos Guru Meditation, punteros nulos y desbordamientos de pila FreeRTOS.
Conversor de Imagen a C / LVGL
Diseñador de Iconos & Pixel Art
Código para Firmware Microcontrolador
Generador de Fuentes Bitmapped C++
Convierte tipografías vectoriales y pixeladas en arrays de glifos PROGMEM listos para Adafruit_GFX, U8g2 y LVGL con renderizado de fósforo en tiempo real.
Selecciona un caracter del subconjunto para editar o retocar sus píxeles manualmente en la cuadrícula.
Código Firmware C++ (PROGMEM)
Simulador de Pantalla OLED SSD1306 / SH1106
Emulador de visualización para pantallas monocromo I2C/SPI con precisión a nivel de píxel y comandos de registro.
Código para Microcontrolador
Animaciones & Bootlogos OLED / AMOLED
0 bytesImporta secuencias de fotogramas, ajusta la línea de tiempo y genera código C++ optimizado con compresión RLE.
Código Fuente C++ (PROGMEM)
Test Óptico de Pantalla & Diagnóstico
Inspección de píxeles atascados, calibración gamma de negros puros y ciclo restaurador de quemado.
Ciclo Restaurador Anti-Burn-in
00:00Ejecuta un barrido alternante de ruido blanco y contraste inverso para igualar el desgaste de los fósforos OLED.
- Selecciona la duración recomendada según el nivel de retención de imagen.
- El ciclo genera estática blanca de alta frecuencia y patrones oscilantes.
- No mires fijamente la pantalla si sufres de fotosensibilidad.
Diseñador de Widgets & Diales UI
Genera velocímetros analógicos, barras de progreso, medidores de nivel y dígitos 7-segmentos listos para tu código.
Código Fuente (LVGL C / GFX)
Generador de Códigos QR de Precisión
25x25 pxGenera códigos QR de píxel exacto sin desenfoque, optimizados para escaneo instantáneo en pantallas OLED y AMOLED.
Array Hexadecimal C++ (PROGMEM)
Gemelo Digital 3D (Orientación Espacial)
Flujo de Acelerómetro (m/s²)
Controles de Prueba / Simulación
Osciloscopio Dual (CH A / CH B)
ADC 12-bit • Entrada 0 - 3.3V • 60 FPSGenerador de Ondas PWM
Analizador de Audio FFT (Micrófono)
Calculadora de Ley de Ohm & Resistencia LED
Calculador RápidoMatriz de 128 Direcciones I2C (0x00 - 0x7F)
Base de datos con +40 sensores y periféricosHaz clic en cualquier celda para inspeccionar el chip, voltaje y driver C++.
Dispositivos Detectados
Mando Virtual Infrarrojo
TX GPIO 38Código Arduino IRremoteESP8266
Generador de Registros NDEF
Bytes NDEF Hexadecimales
Topología de Red & Nodos Activos
Analizador de Espectro Wi-Fi (2.4 GHz & 5 GHz)
LISTO| SSID | Canal | Potencia (RSSI) | Seguridad | BSSID (MAC) | Acciones |
|---|
Stream Deck Táctil (Pantalla 410x502)
Haz clic para pulsar • ✏️ para editarSketch Arduino USB Keyboard HID
Editor DuckyScript 3.0
Monitor de Simulación en Vivo
Teclado Sintetizador Chiptune (Pin 37)
BUZZER GPIO 37Toca las teclas para escuchar notas cuadradas y reproducir en el buzzer de Kode Dot.
Generador de Melodía C++ tone()
Metadatos de la Aplicación
Previsualización en Pantalla (Lanzador kodeOS)
AMOLED 410x502Estructura en Tarjeta MicroSD
Wi-Fi 6 (2.4 & 5 GHz) • BLE 5.0 • Thread / Zigbee • Dual RFID (125k/13.56M)
Retrocompatible con firmware ESP32-S3 Dual-Core Xtensa
Ficha Técnica & Parámetros Eléctricos de Kode Dot
Evolución & Hoja de Ruta Arquitectónica (ESP32-P4 + ESP32-C5)
Hardware RoadmapKode Dot está diseñado con una capa de abstracción de hardware (HAL) modular en kodeOS. La revisión C actual basada en ESP32-S3 Dual Xtensa cuenta con compatibilidad binaria y de periféricos prevista para la futura generación de alta potencia impulsada por ESP32-P4 (Dual-Core RISC-V a 400 MHz con códec H.264 por hardware, interfaz MIPI-DSI y CSI) complementado con ESP32-C5 (Wi-Fi 6 de banda dual 2.4/5 GHz y Bluetooth 5 LE).
Panel Óptico AMOLED de 2.13 Pulgadas
410 x 502| Tecnología del Panel | AMOLED On-Cell Color |
| Resolución Activa | 410 (H) × 502 (V) píxeles |
| Densidad de Píxeles | ~338 PPI (Retina Grade) |
| Controlador Integrado | CO5300 con interfaz QSPI de 4 líneas |
| Profundidad de Color | RGB565 (16 bits) / RGB888 (24 bits) |
| Ángulo de Visión | 178° Ultra Wide (sin inversión de gama) |
| Brillo Máximo | 600 nits (legible bajo luz solar directa) |
| Contraste | Infinito (Negros verdaderos: diodo apagado) |
Panel Táctil Capacitivo CST820
I2C 0x38| Tipo de Sensor | Capacitivo Proyectado (PCAP) |
| Dirección I2C | 0x38 (7-bit) |
| Pin SDA / SCL | GPIO 47 (SDA) / GPIO 48 (SCL) |
| Pin de Interrupción (INT) | GPIO 4 (Flanco de Bajada / Falling Edge) |
| Gestos Reconocidos | Tap, Double Tap, Swipe (Up, Down, Left, Right) |
| Tasa de Muestreo | Hasta 100 Hz con latencia inferior a 12 ms |
| Superficie Táctil | Vidrio templado con revestimiento oleófobo |
Buenas Prácticas de UI & Ahorro de Batería con AMOLED
A diferencia de las pantallas LCD con retroiluminación siempre encendida, cada píxel AMOLED es un LED emisor independiente. Un píxel negro está completamente apagado (0 mA), reduciendo el consumo de la pantalla en más de un 65%.
Un frame de 410x502 en RGB565 ocupa 411.640 bytes. Se alojan 2 búferes de DMA en la memoria Octal PSRAM de 8MB, permitiendo a la biblioteca LVGL renderizar a 60 FPS sin ningún efecto de tearing horizontal ni parpadeo visual.
Atenuar el brillo del 100% al 35% en interiores reduce el consumo global del dispositivo de 140 mA a solo 48 mA, triplicando la autonomía real de la batería LiPo de 850mAh durante el uso continuado.
Cabezal de Expansión de 20 Pines & Matriz de Señales
Cabezal 20-Pin • 32 Señales • Rieles 2A
Inspecciona interactivamente el cabezal de expansión trasero de 20 pines (paso 2.54mm estándar para protoboard) con rieles de alta corriente de 2A, o consulta la matriz de conexionado de los SoCs ESP32-P4 / ESP32-S3. Haz clic en cualquier pin para ver sus especificaciones y copiar su directiva #define.
Generador Dinámico de Cabecera C++ (pin_config.h)
Selecciona los pines del cabezal de 20 pines y genera el archivo de cabecera con macros #define y función de inicialización pinMode().
| Pin ESP32 | Función en Placa | Tipo de Bus | Tensión | Pull-Up / Estado | Notas de Diseño & Circuito |
|---|
Sistema de Alimentación & Batería LiPo
850 mAh| Capacidad de la Batería | 850 mAh LiPo (3.14 Wh) |
| Tensión Nominal | 3.7 V (Rango: 3.0 V a 4.2 V) |
| PMIC & Cargador USB-C | AXP2101 / CW2217 (I2C 0x34 / 0x62) |
| Corriente de Carga | 500 mA estándar (Carga completa en ~1h 45m) |
| Rieles de Potencia (Salida) | 3.3V @ 2.0A (Regulador Alta Corriente) + 5V VBUS @ 2.0A |
| Protecciones de Circuito | Sobrecarga (4.25V), sobredescarga (2.9V), cortocircuito y NTC |
| Puerto Trasero Pogo | VBUS +5V y GND con polaridad magnética |
Monitor de Batería por ADC (GPIO 1)
Divisor 2:1El circuito de medición de tensión de batería utiliza un divisor de tensión resistivo simétrico de dos resistencias de alta precisión (100kΩ / 100kΩ) con un factor de división de 2.0:
Perfiles de Consumo & Autonomía Estimada
| Modo Operativo | Estado de Periféricos | Consumo Típico | Autonomía (850mAh) |
|---|---|---|---|
| Deep Sleep | SoC en sueño profundo, pantalla apagada, reloj RTC PCF8563 activo esperando alarma o botón | ~20 µA | > 1 año en espera |
| Reloj Reposo | Pantalla apagada, IMU 9-DOF activo detectando giro de muñeca para encendido automático | ~8 - 12 mA | 70 - 100 horas |
| Uso Normal UI | Pantalla AMOLED activa al 50% de brillo (fondo oscuro), BLE activo conectado al Web Studio | ~45 - 65 mA | 13 - 18 horas |
| Máximo Rendimiento | CPU 240 MHz al 100%, Wi-Fi transmitiendo paquetes, brillo AMOLED al 100% fondo blanco | ~140 - 160 mA | ~5.5 horas continuas |
Módulo Maker (20 Pines & 2A)
Prototipado RápidoCabezal estándar de 20 pines (paso 2.54 mm) para protoboard. Integra rieles de potencia de alta corriente de 3.3V @ 2A y 5V VBUS @ 2A, bus SPI dedicado, I2C secundario, 2 canales analógicos ADC, PWM y conectores magnéticos Pogo.
Módulo Robotics / Inventor
Robótica & PWMControl de movimiento para chasis robóticos móviles. Doble puente H para dos motores DC independientes con control de sentido/PWM, salida de servomotor a 50 Hz (0° a 180°), sensor ultrasónico HC-SR04 y barra de 5 reflectores infrarrojos para seguidor de línea.
Módulo F*CK (Pentester & Sub-GHz)
Cyber Security & RFMódulo oficial de pentesting y auditoría de radiofrecuencia. Transceptor Sub-GHz CC1101 multimodo (315, 433, 868 y 915 MHz), analizador de espectro RF en tiempo real, generador y reproductor de tramas (Replay Attack), receptor GNSS multi-constelación y conector SMA para antenas de alta ganancia.
Módulo Camera (Visión DVP / MIPI)
Visión ArtificialSensor de cámara Omnivision OV2640 (2 MP) u OV5640 (5 MP) con interfaz de alta velocidad acelerada por DMA y bus DVP de 8 bits / MIPI-CSI en ESP32-P4. Soporta streaming MJPEG a 30 FPS, reconocimiento de patrones y visión por computador.
Entornos de Desarrollo & Código Boilerplate
Selecciona tu entorno preferido para ver las directivas de compilación, banderas de Octal PSRAM y el código base listo para usar en tu proyecto.
Estructura de Carpetas en MicroSD
FAT32 / exFAT hasta 128GBkodeOS organiza el almacenamiento secundario en directorios estandarizados para permitir instalación en caliente, ejecución modular de apps y carga de recursos gráficos sin reflashear.
Manifiesto de Aplicación (app.json)
JSON Schema
Cada app en la carpeta /apps/[id]/ define sus requerimientos en su archivo de manifiesto para que el Launcher valide permisos y memoria antes de lanzarla:
Ciclo de Vida de una App kodeOS (C++ API)
Non-blocking FreeRTOSAsignación de widgets en LVGL, suscripción a colas de eventos del sistema y reserva de búferes DMA en PSRAM.
Recepción de gestos táctiles (CST820), orientación de giroscopio o pulsaciones del botón físico lateral.
Lógica periódica no bloqueante ejecutada en el ciclo del despachador, devolviendo control con vTaskDelay(1).
Destrucción del árbol de pantallas LVGL, liberación de manejadores SPI/I2S y retorno limpio al Launcher principal.
Pipeline de Audio I2S & VAD
I2S DMA • 16 kHzKode Dot captura voz en tiempo real a través del micrófono MEMS de bajo ruido conectado al bus I2S con buffers circulares DMA en PSRAM de 8MB.
| Frecuencia de Muestreo | 16.000 Hz (16 kHz) |
| Resolución y Canales | 16-bit PCM • Mono |
| Detección de Voz (VAD) | Algoritmo de energía / umbral SNR en RISC-V |
| Anillo de Búfer DMA | 4 x 512 bytes (evita pérdidas de paquetes) |
| Retorno de Audio (TTS) | I2S DAC / Altavoz piezo con control de ganancia |
Conectividad & Proveedores de IA
WebSocket Seguro (WSS)El co-procesador Wi-Fi 6 mantiene túneles seguros TLS 1.3 bidireccionales de baja latencia con los principales proveedores de LLM o instancias locales privadas:
| OpenAI | Realtime API (Audio in / Audio out) & Whisper STT |
| Anthropic | Claude 3.5 Sonnet mediante streaming de eventos SSE |
| Groq Cloud | Whisper-large-v3 con inferencia ultrarrápida (< 250 ms) |
| Ollama (Local) | Servidor privado en LAN sin conexión a internet ni telemetría |
Flujo de Interacción de la Inteligencia Artificial
El usuario pulsa el botón lateral o pronuncia la palabra de activación. El microprocesador almacena fragmentos de 200 ms y descarta el ruido ambiental.
Los paquetes PCM son comprimidos en Opus o enviados en crudo a través del socket WSS con latencia de ida inferior a 40 ms en redes Wi-Fi 6 (OFDMA).
El texto de la respuesta se muestra en la pantalla AMOLED de 410x502 píxeles mientras el audio sintetizado suena de forma síncrona por el altavoz.
Modos de Arranque & Bootloader
Hardware Strapping| Modo Descarga ROM | Mantener pulsado botón BOOT (GPIO 0 a GND) durante el encendido o reset USB. |
| Hard Reset de Energía | Pulsar botón de encendido durante 10 segundos continuos (Corte forzado del PMIC AXP2101). |
| Partición Factory | Si OTA_0 u OTA_1 fallan 3 veces consecutivas por CRC, el bootloader arranca en modo seguro. |
| Recuperación MicroSD | Colocar recovery.bin en la raíz SD; se flasheará automáticamente al reiniciar. |
Mapa de Direcciones I2C Esperadas
I2C Bus ScanUsa el Bus Scanner integrado en la consola para confirmar que todos los periféricos responden correctamente en sus direcciones fijas:
| Dirección | Dispositivo / Función | Estado Esperado |
|---|---|---|
| 0x34 | PMIC AXP2101 (Gestión de Batería y Rieles) | ACK 200 |
| 0x38 | Sensor Táctil Capacitivo CST820 | ACK 200 |
| 0x51 | Reloj en Tiempo Real RTC PCF8563 | ACK 200 |
| 0x6B | Unidad de Medición Inercial 9-DOF (IMU) | ACK 200 |
Guía de Resolución de Problemas Frecuentes
| Síntoma Reportado | Causa Probable | Acción Correctiva Recomendada |
|---|---|---|
| Pantalla en negro tras arranque | LDO de alimentación AMOLED apagado en AXP2101 o secuencia de reset no enviada al CO5300. | Habilitar canal ALDO3 (3.3V) en el PMIC y enviar pulso LOW de 20 ms en GPIO 38 antes de inicializar QSPI. |
| Reinicio continuo (Brownout Detector) | Caída de tensión momentánea por pico de consumo en calibración de antena RF o Wi-Fi transmitiendo. | Conectar a un cargador USB-C de al menos 1A; comprobar que la batería LiPo tenga más de 3.6V de carga. |
| Fallo al montar tarjeta MicroSD | Formato no compatible o frecuencia de reloj SPI/SDIO demasiado alta. | Formatear en FAT32 con clústeres de 32KB y tabla de particiones MBR estándar; verificar inserción completa en el zócalo. |
| Panel táctil no responde | Línea de interrupción INT (GPIO 4) flotante o bus I2C bloqueado por otro dispositivo esclavo. | Revisar la resistencia pull-up en SDA/SCL; enviar 9 pulsos de reloj en SCL para desbloquear el bus I2C. |
Diseñador de Watchfaces (AMOLED 410x502)
LVGL 8/9Diseña esferas digitales o analógicas en vivo y exporta código C / LVGL listo para kodeOS.
Código Fuente C / LVGL (kodeOS)
Laboratorio de Batería & Autonomía
LiPo 850mAh · CW2217Simulador de consumo para batería LiPo 850mAh y fuel-gauge CW2217 de Kode Dot.
Curva de Descarga LiPo (4.2V - 3.2V)
CW2217 Fuel GaugeSnippet C: Modo Ultra Bajo Consumo
Grabador Blackbox Serial & Telemetría
| # | Timestamp | Flujo | Carga Útil (Payload / Frame) | Tamaño |
|---|
Módulo Maker (Cabezal 20 Pines & Expansión)
14 GPIOs · 5V/3V3Prototipado rápido en breadboard, control de pines digitales y analógicos, y generador de boilerplate.
Boilerplate C / Arduino (setup_maker_module)
Módulo Inventor (Robótica & Actuadores)
Puente H · ServosControl de motores DC duales (Puente H), servomotores, sensores ultrasónicos y simulador 2D.
Simulador Cinemático 2D (Chasis Diferencial)
LIVE PHYSICSFirmware Arduino de Control Robótico
Módulo Radio (Sub-GHz ISM & GNSS / GPS)
CC1101 · GNSSTransceptor Sub-GHz configurable (315/433/868/915 MHz) y radar Skyplot de satélites GNSS con NMEA.
Transceptor Sub-GHz (CC1101 / SX1276)
Firmware Arduino / RadioLib
#include <RadioLib.h>
CC1101 radio = new Module(9, 14, RADIOLIB_NC, 10);
void setup() {
Serial.begin(115200);
int state = radio.begin(433.92, 4.8, 25.0, 135.0, 10, 32);
if (state == RADIOLIB_ERR_NONE) {
Serial.println("Sub-GHz listo a 433.92 MHz.");
}
}
void loop() {
byte byteArr[] = {0xAA, 0x55, 0x01, 0x02, 0xF0, 0x0D};
radio.transmit(byteArr, 6);
delay(2000);
}
Navegación Satelital GNSS / GPS (Skyplot)
3D FIXMódulo Camera (Visión Artificial & DVP)
OV2640 / OV5640Visor en tiempo real para sensores OV2640/OV5640, procesamiento de imagen, códigos QR y exportador C.
Array C de Imagen RGB565 (LVGL)
Consola de Auditoría & Logs del Sistema
Trazabilidad ISO 27001Trazabilidad completa de accesos, intentos de login, eventos de hardware USB/BLE y firmware.
| # | Fecha & Hora | Categoría | Evento | Detalles de Operación | Acciones |
|---|
Laboratorio de Señales & Espectro Sub-GHz
Análisis espectral en cascada FFT, decodificador de pulsos OOK/Manchester y generador de tramas .sub para Flipper Zero.
Forma de Onda de Pulsos (OOK / Timing)
Exportación & Replay
Genera archivos RAW .sub listos para copiar en la tarjeta SD de un Flipper Zero o exporta el código C++ para el chip CC1101 de Kode Dot.
Baja Frecuencia 125 kHz (EM4100 / T5577)
Decodificación Wiegand 26-bit y programación de credenciales en chips reescribibles T5577.
Alta Frecuencia 13.56 MHz (Mifare 1K)
Transporte de Fábrica: Key A R/W libreEditor hexadecimal de los 16 sectores, Magic UID Gen1a/Gen2 y volcado binario .mfd / .nfc.
| Bloque | Datos Hexadecimales (16 Bytes) |
|---|
Generador de Publicidad Beacon
Configuración y análisis de tramas de proximidad iBeacon, Eddystone (URL / TLM Telemetría) y AltBeacon.
Radar de Proximidad RSSI
Diseñador de Servicios GATT
Generador Cuántico de Entropía (TRNG)
Muestreo físico de ruido térmico con validación estadística NIST SP 800-22 en tiempo real.
Cifrador Simétrico AES-256-GCM (Hardware DMA)
Firma Digital ECDSA (P-256 / SHA-256)
Mapa de Bloques eFuse (One-Time Programmable)
Monitor de Micrófono MEMS I2S
INACTIVOOscilograma en tiempo real (16 kHz 16-bit mono) y espectrograma FFT con discriminador vocal por hardware.
Puente de Streaming LLM (IA)
Túnel WebSocket bidireccional compatible con Ollama local, OpenAI Realtime y Claude.
Bóveda Celeste Polar & Satélites en Vista
Mapa 2D de Trayectoria & Telemetría
Rosa de los Vientos Digital
Ajuste de Esfera Hard/Soft-Iron
CALIBRACIÓN APLICADAMuestreo en figura de 8 para eliminar el desplazamiento del campo magnético propio del reloj.
Sniffer CAN Bus & Diagnóstico OBD-II
Monitor de tramas automotrices TWAI con resaltado delta de variaciones, PIDs OBD-II (RPM, velocidad) y borrado de errores DTC.
Tráfico TWAI CAN 2.0B
| Tiempo | ID (Hex) | DLC | Datos (Bytes 0-7 / Delta) |
|---|---|---|---|
| Inicia el sniffer para capturar tramas... | |||
Códigos de Avería Almacenados (DTC)
Constructor de Tramas RTU
Generador de paquetes Modbus Master con cálculo automático de CRC-16 (0xA001).
Tabla de Registros de Retención
| Dirección | Decimal | Hexadecimal | Valor Decodificado | Acción |
|---|
Generador Auto-Discovery Home Assistant
HA v2024+
Publica estos payloads de descubrimiento en tu broker para que Home Assistant registre las entidades del Kode Dot automáticamente sin editar configuration.yaml.
Consola MQTT & Explorador de Tópicos
DESCONECTADOMapa de Arquitectura de Memoria (ESP32-P4)
Calculadora de Búfer DMA AMOLED (410x502)
Test de Rendimiento de Bus (MB/s)
Test de Velocidad SPI vs SDIO 4-bit
Comparativa de ancho de banda del controlador hardware SDMMC (SDIO) frente a emulación SPI.