ESP32-S3 con pantalla integrada: Mejores placas de desarrollo



Conecté una placa ESP32-S3 con pantalla por primera vez, cargué el ejemplo de TFT_eSPI y la pantalla permaneció negra durante tres horas. El problema no era el código: había comprado una LilyGo T-Display S3 pero estaba usando las definiciones de pines de un modelo genérico DevKit.

En Chile, la oferta de placas ESP32-S3 con display integrado creció exponencialmente en 2025. Sin embargo, cada fabricante usa controladores de pantalla distintos, distribuye los pines de forma diferente y algunas versiones traen PSRAM mientras otras no.

Este artículo compara las placas reales que puedes conseguir hoy, detalla qué librería gráfica usar según cada modelo y cuánto presupuesto necesitas en pesos chilenos para no quedarte con una pantalla negra.

Placa de desarrollo con microcontrolador y pantalla LCD sobre protoboard
Prototipo con microcontrolador y pantalla integrada en banco de pruebas

¿Qué diferencia al ESP32-S3 del ESP32 clásico?

El ESP32-S3 es un SoC de Espressif con CPU dual-core Xtensa LX7 a 240 MHz. A diferencia del ESP32 original (LX6), el S3 incluye instrucciones vectoriales aceleradas para inteligencia artificial y procesamiento de señales.

En placas con pantalla integrada, esa potencia extra se traduce en capacidad real para renderizar interfaces gráficas complejas con LVGL, reconocimiento táctil fluido y actualización de display sin bloquear el Wi-Fi.

El punto crítico es la PSRAM. El ESP32-S3 se fabrica en versiones sin PSRAM, con 2 MB, 8 MB u 16 MB de RAM externa. Si tu proyecto usa un buffer de pantalla de 320×240 píxeles a 16 bits, eso consume 150 kB solo para el frame. Sin PSRAM, te quedas sin RAM para el heap del programa.

Las mejores placas con ESP32-S3 y pantalla integrada

No todas las placas con “S3” y “display” en el nombre son equivalentes. La siguiente tabla compara modelos reales disponibles para importación y en distribuidores chilenos:

Placa Pantalla Controlador Touch PSRAM Extras
LilyGo T-Display S3 1,9″ IPS 320×170 ST7789 (SPI) No 8 MB USB-C, LiPo JST, QWIIC
LilyGo T-Display S3 AMOLED 1,64″ AMOLED 280×456 RM67162 (SPI) No 16 MB QWIIC, batería, muy bajo consumo
M5Stack CoreS3 2,0″ IPS 320×240 GC9307 (SPI) Capacitivo (FT5x06) 8 MB Cámara, micrófono PDM, IMU, vibrador
ESP32-S3-BOX-3 2,4″ SPI 320×240 ILI9342C (SPI) Capacitivo 16 MB Speaker, 2 micrófonos, ESP-SR (AI voz)
CrowPanel ESP32-S3 2,8″ 2,8″ TN 480×320 ST7796 (SPI) Resistivo 8 MB Carcasa ABS, RTC, buzzer
CrowPanel ESP32-S3 4,3″ 4,3″ IPS 800×480 ST7262 (RGB) Capacitivo (GT911) 16 MB Interfaz paralela RGB, alto refresh
Waveshare ESP32-S3 1,28″ 1,28″ redonda 240×240 GC9A01 (SPI) No 0 MB Formato circular, ideal para wearables

¿Buscas LilyGo T-Display S3 o M5Stack CoreS3 con despacho a todo Chile?

Ver stock de placas con pantalla →

Cuánto cuestan en Chile (2026)

Los precios varían según si importas por correo privado o compras en tienda nacional con garantía local. A continuación, rangos reales en pesos chilenos:

Placa Importación directa CLP Tienda nacional CLP
Waveshare 1,28″ redonda $14.000 – $22.000 $22.000 – $32.000
LilyGo T-Display S3 $18.000 – $28.000 $28.000 – $38.000
LilyGo T-Display S3 AMOLED $28.000 – $38.000 $40.000 – $55.000
CrowPanel 2,8″ resistivo $28.000 – $38.000 $42.000 – $55.000
ESP32-S3-BOX-3 $35.000 – $48.000 $52.000 – $68.000
CrowPanel 4,3″ capacitivo $45.000 – $58.000 $65.000 – $85.000
M5Stack CoreS3 $48.000 – $62.000 $68.000 – $88.000
CrowPanel 7,0″ capacitivo $68.000 – $85.000 $95.000 – $120.000

Nota sobre importación: Los valores de importación directa no incluyen el IVA ni el posible cobro de despacho aduanero. Correos de Chile aplica una tasa de tramitación de $720 CLP para encomiendas bajas, pero si el valor supera los ~$60 USD puede generar retención aduanera y requerir ingreso de RUT.

Cómo elegir según tu proyecto

Para wearables o portátiles con batería

La LilyGo T-Display S3 AMOLED es la opción obvia. El panel AMOLED consume menos que una IPS porque no requiere backlight: cada píxel genera su propia luz. En modo oscuro, el consumo cae a menos de 40 mA totales.

Además trae conector JST para batería LiPo de 3,7 V y circuito de carga integrado. No necesitas módulo TP4056 externo. El formato alargado (320×170) imita la proporción de un teléfono, facilitando la lectura de notificaciones o datos de sensores.

Para interfaz de usuario con botones táctiles

El M5Stack CoreS3 integra touch capacitivo de 5 puntos, cámara OV3660 y micrófono PDM. Es la plataforma ideal si tu proyecto requiere reconocimiento facial local, control por voz o una GUI con LVGL que el usuario navegue con los dedos.

Su framework M5Unified abstrae el hardware: en lugar de configurar pines SPI manualmente, llamas M5.Display.print() y la librería gestiona el GC9307 internamente. Eso acelera el desarrollo, aunque pierdes algo de flexibilidad si quieres acceder a pines GPIO no expuestos.

Para paneles de control industriales o domótica

La CrowPanel 4,3″ o 7,0″ usa interfaz paralela RGB en lugar de SPI. Eso significa que refresca la pantalla completa en menos de 20 ms, mientras que una SPI a 40 MHz tarda ~80 ms para 800×480 píxeles.

El touch capacitivo GT911 requiere comunicación I2C a 0x5D o 0x14. Asegúrate de que tu librería LVGL tenga habilitado el driver indev_drv para ese controlador. La carcasa ABS incluida permite montaje en pared sin necesidad de diseñar un case propio.

Para asistentes de voz con IA local

El ESP32-S3-BOX-3 fue diseñado por Espressif como kit de demostración para ESP-SR, su framework de reconocimiento de voz. Incluye dos micrófonos en formación de beamforming para cancelar ruido direccional.

La PSRAM de 16 MB permite cargar modelos de wake word (“Hola ESP”) y comandos de control sin depender de la nube. Si tu proyecto es un panel de control de oficina o habitación, esta placa evita que necesites una Raspberry Pi adicional.

Interfaz gráfica de control en pantalla táctil de panel industrial
Panel de control con interfaz gráfica táctil para automatización

Librerías gráficas: cuál usar y por qué

La elección de librería determina si tu interfaz se siente fluida o lenta. No todas funcionan con todos los controladores:

Librería Mejor para Controladores soportados Curva de aprendizaje
TFT_eSPI Proyectos simples, texto, gráficos básicos ST7789, ILI9341, GC9A01, ST7796 Media (requiere editar User_Setup.h)
LovyanGFX Rendimiento máximo, sprites, scroll suave ST7789, ILI9341, GC9A01, RM67162, RGB Media-Alta (configuración por código)
LVGL v8/v9 Interfaces complejas con botones, sliders, teclados Universal (vía drivers de display) Alta (requiere configurar hal)
Arduino_GFX Compatibilidad amplia, múltiples buses ST7789, ILI9341, GC9307, ST7796, RGB Baja-Media

Recomendación práctica: Si usas una LilyGo T-Display S3, descarga el ejemplo de LovyanGFX del repositorio oficial de LilyGo. Ya incluye la configuración de pines correcta para el ST7789 y el backlight por GPIO38. Compila y funciona en el primer intento.

Para M5Stack CoreS3, usa M5Unified. Intentar forzar TFT_eSPI en esta placa es posible, pero requiere definir pines no documentados y pierdes la gestión automática de energía.

Errores que dejan la pantalla negra

1. Comprar la versión sin PSRAM y querer correr LVGL: LVGL con un solo buffer de display en RAM interna consume ~70 kB. Si tu placa es la versión básica del ESP32-S3 sin PSRAM, te quedas sin heap para el Wi-Fi y el programa se reinicia en bucle. Verifica siempre que el chip lleve la marca N8R8 o N16R16 (flash + PSRAM).

2. No definir el pin de backlight en el código: Muchas placas modernas controlan el backlight por GPIO (ej. GPIO38 en T-Display S3). Si no pones ese pin en HIGH, la pantalla recibe señal pero no emite luz. El síntoma es una pantalla “negra” que en realidad está funcionando.

3. Usar el driver incorrecto en User_Setup.h: Configurar ILI9341 cuando tu placa usa ST7789 produce colores invertidos, desplazamiento de píxeles o imagen partida. La única solución es leer la serigrafía del controlador en la parte trasera del flex de la pantalla.

4. Alimentar por USB de laptop con backlight al 100%: El backlight de una pantalla de 2,4″ consume entre 80 mA y 150 mA. Sumado al ESP32-S3 activo (120–240 mA), superas los 500 mA que muchos puertos USB entregan. El voltaje cae, el regulador entra en modo de bajo rendimiento y la pantalla parpadea o reinicia.

5. Confundir touch I2C con pines del display SPI: El touch capacitivo GT911 o FT5x06 usa I2C a 400 kHz. Si conectas su línea de interrupción (INT) a un pin que la librería de display usa para datos SPI, ambos periféricos fallan simultáneamente. Revisa el esquemático antes de soldar cables.

¿Tu pantalla se ve negra o con rayas? En un 40% de los casos el problema es el pin de backlight o el driver mal configurado, no la pantalla dañada.

Consultar compatibilidad de drivers →

Consumo eléctrico y autonomía

Si tu proyecto es portátil, estos números definen si necesitas una batería de 500 mAh o 2.000 mAh:

Escenario Consumo aprox. Autonomía con 1.000 mAh
Deep sleep, pantalla apagada ~1,5 mA ~25 días
Wi-Fi activo, pantalla estática ~180 mA ~4,5 horas
Wi-Fi + animación LVGL + backlight 100% ~350 mA ~2,5 horas
M5Stack CoreS3 (cámara + mic + Wi-Fi) ~420 mA ~2 horas
T-Display S3 AMOLED (modo oscuro) ~45 mA ~18 horas

Para proyectos de monitoreo continuo, reduce el brillo del backlight al 30% mediante PWM. Eso baja el consumo de la pantalla a menos de un tercio sin perder legibilidad en interiores.

Primeros pasos: del desempaque al “Hola Mundo” gráfico

Paso 1: Instalar la placa en Arduino IDE

Abre Arduino IDE y añade la URL del gestor de placas de Espressif:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

Instala el paquete “esp32 by Espressif Systems”. Selecciona la placa “ESP32S3 Dev Module” o el perfil específico de tu fabricante si existe.

Paso 2: Instalar la librería gráfica correcta

Para LilyGo T-Display S3, instala LovyanGFX desde el Library Manager. No uses la versión genérica de TFT_eSPI a menos que estés dispuesto a editar 15 líneas de pines en User_Setup.h.

Para M5Stack CoreS3, instala M5Unified y M5CoreS3. La inicialización se reduce a M5.begin() y el objeto display está listo inmediatamente.

Paso 3: Encender el backlight antes de dibujar

En LovyanGFX para T-Display S3, el backlight se controla por GPIO38. Añade esta línea antes de cualquier operación gráfica:

pinMode(38, OUTPUT); digitalWrite(38, HIGH);

Sin esto, el código compila y ejecuta, pero no verás nada en la pantalla. Es el error número uno reportado en foros de habla hispana.

Paso 4: Verificar el consumo por USB

Si la placa reinicia al cargar una imagen grande, mide el voltaje en el pin 3V3 con un multímetro. Si cae bajo 3,0 V durante la transmisión SPI, el puerto USB no entrega suficiente corriente. Cambia a un cargador de pared de 1 A o más.

Programación de microcontrolador en laptop con cables de conexión
Configuración inicial de placa con pantalla en entorno de desarrollo

Preguntas frecuentes

¿Puedo usar una placa ESP32-S3 con pantalla integrada como interfaz para Home Assistant?

Sí. La combinación más usada es ESP32-S3-BOX-3 o CrowPanel 4,3″ con ESPHome. El S3 tiene suficiente RAM para renderizar la interfaz de Home Assistant y conectarse por Wi-Fi al broker MQTT. La CrowPanel de 4,3″ o 7″ es preferible porque el touch capacitivo permite botones grandes y legibles.

¿Qué significa N8R8 en el chip ESP32-S3?

Es la nomenclatura de Espressif: N8 = 8 MB de flash, R8 = 8 MB de PSRAM. Si tu chip dice solo N8 (sin R), no tiene RAM externa y eso limita severamente proyectos con gráficos complejos o buffers de cámara.

¿Por qué mi pantalla muestra colores invertidos?

El 90% de los casos se debe a usar el driver incorrecto en la librería. ST7789 e ILI9341 tienen comandos de configuración de color distintos (RGB vs BGR). Otra causa es no enviar el comando MADCTL correcto para la orientación de tu panel.

¿Es mejor SPI o interfaz paralela RGB para pantallas grandes?

Para pantallas de 4″ o más, RGB paralelo es superior. SPI a 40 MHz puede mover ~5 MB/s teóricos, pero la sobrecarga de protocolo reduce el rendimiento real. RGB paralelo a 16 bits y 20 MHz entrega ~40 MB/s, eliminando el tearing en animaciones. La desventaja es que consume más pines GPIO.

¿Puedo programar estas placas con MicroPython?

Sí, pero con limitaciones. MicroPython soporta el ESP32-S3, pero las librerías gráficas como LVGL requieren compilación de bindings C. Para proyectos serios con display, Arduino o ESP-IDF en C/C++ ofrecen mejor rendimiento y documentación de ejemplos.

¿Dónde compro estas placas en Chile con soporte técnico?

En tiendas especializadas como Ukrabot puedes conseguir LilyGo T-Display S3, M5Stack CoreS3 y módulos CrowPanel con despacho a regiones y factura. Importar por AliExpress es más económico pero implica 2–4 semanas de espera y sin garantía local si la placa llega con la pantalla rota o sin PSRAM.

Conclusión

Elegir una placa ESP32-S3 con pantalla integrada no se trata solo del tamaño del display. El controlador de pantalla, la presencia de PSRAM y la interfaz de touch determinan si tu proyecto termina en una semana o en tres meses de depuración.

Para proyectos portátiles con batería, la LilyGo T-Display S3 AMOLED ofrece el mejor consumo y formato. Su precio en Chile ronda los $40.000 CLP en tienda nacional.

Para paneles de control fijos, la CrowPanel 4,3″ con touch capacitivo y carcasa ABS es la opción más profesional. Requiere ~$65.000 CLP pero elimina la necesidad de diseñar case y fuente.

Para asistentes de voz o proyectos con cámara, el M5Stack CoreS3 justifica sus ~$75.000 CLP al integrar micrófono, cámara y framework de hardware en un solo bloque.

El consejo final: antes de comprar, verifica que el vendedor especifique la versión del chip (N8R8, N16R16). Una placa S3 sin PSRAM es funcionalmente diferente de una con 8 MB, y esa diferencia se paga con horas de frustración si eliges mal.

¿Listo para elegir tu placa?

Tenemos LilyGo T-Display S3, M5Stack CoreS3 y CrowPanel con despacho a todo Chile y soporte técnico local.

🛒 Ver placas ESP32-S3 con pantalla →

Deja un comentario