Skip to Content

Primeros pasos con T-Camera S3

Primeros pasos con T-Camera S3

En este tutorial aprenderás cómo empezar con la placa LILIGO T-Camera S3.

La LILYGO T-Camera S3 es una placa de desarrollo compacta basada en el microcontrolador ESP32-S3 FN16R8 de doble núcleo, junto con un módulo de cámara OV2640, 8 MB de PSRAM y 16 MB de memoria flash.

En este artículo repasaremos los pasos esenciales de configuración, como la instalación de las librerías, el core de ESP32 y la preparación del código para un servidor web que transmite video por Wi-Fi desde la T-Camera S3 a tu navegador web.

Partes necesarias

Necesitarás una T-Camera S3 y un cable USB-C para programar la placa y probar los ejemplos de código. Los siguientes enlaces te muestran dónde conseguirlos.

LILYGO T-Camera S3

Cable USB C

Makerguides is a participant in affiliate advertising programs designed to provide a means for sites to earn advertising fees by linking to Amazon, AliExpress, Elecrow, and other sites. As an Affiliate we may earn from qualifying purchases.

Hardware de la T-Camera S3

La LILYGO T-Camera S3 es una placa de desarrollo que utiliza el microcontrolador ESP32‑S3FN16R8 de doble núcleo. Este SoC funciona hasta 240 MHz e incluye soporte para extensiones vectoriales, lo que lo hace adecuado para tareas de aprendizaje automático y visión. La placa incorpora 8 MB de PSRAM y 16 MB de memoria flash, permitiendo almacenar modelos, imágenes o datos de registro.

Front and back of the LILYGO T-Camera S3 board
Frontal y trasera de la placa LILYGO T-Camera S3 (source)

Componentes

Para la captura de imágenes, la placa integra un módulo de cámara OV2640 de 2 megapíxeles (con resolución UXGA 1622×1200) como estándar; también está disponible una versión opcional de 5 megapíxeles. Incluye una pequeña pantalla OLED monocroma (0,96 pulgadas, 128×64 píxeles) controlada por SSD1306 vía I²C, que ofrece una interfaz visual simple o pantalla de estado. En el apartado de audio, cuenta con un micrófono y un sensor de movimiento PIR que proporciona capacidades básicas de detección de movimiento en la placa.

Conectividad

La conectividad está gestionada por las radios integradas del ESP32-S3 para WiFi de 2.4 GHz (802.11 b/g/n) y Bluetooth 5 (LE), permitiendo comunicación inalámbrica y acceso remoto. Un puerto USB-C proporciona alimentación y acceso para programación/depuración, y un conector JST de 5 pines ofrece acceso adicional a E/S como GPIO, UART, 3.3 V/5 V y tierra. Las dimensiones de la placa son aproximadamente 69 × 28 × 18.5 mm. La imagen a continuación muestra el pinout de la placa:

Pinout of the LILYGO T-Camera S3 board
Pinout de la placa LILYGO T-Camera S3 (source)

Alimentación

La gestión de energía incluye soporte para alimentación por USB y un conector JST-GH para batería Li-Po de una sola celda, haciendo la placa adecuada para despliegues portátiles. La placa también dispone de un botón de arranque y un botón de encendido.

Especificaciones técnicas

La siguiente tabla resume las especificaciones técnicas de la placa LILYGO T-Camera S3:

ParámetroEspecificación
MicrocontroladorESP32-S3FN16R8 de doble núcleo (Tensilica LX7, hasta 240 MHz)
PSRAM8 MB
Memoria Flash16 MB
Módulo de cámaraOV2640 (2 MP, UXGA 1622×1200) estándar; variante opcional de 5 MP
PantallaOLED 0.96″, 128×64 píxeles, SSD1306 vía I²C
Conectividad inalámbricaWiFi 2.4 GHz 802.11 b/g/n; Bluetooth 5.0 LE
Sensor de movimientoPIR (infrarrojo pasivo)
Entrada de audioMicrófono integrado
Alimentación y cargaPuerto USB-C; conector JST-GH para batería Li-Po
Dimensiones de la placaAprox. 69 × 28 × 18.5 mm (placa); 75 × 35 × 12 mm (con carcasa)
Interfaces de programación y E/SUSB-C para programación

Instalación de librerías

En esta sección instalaremos las librerías necesarias para compilar código para la placa T-Camera S3. Ve al repositorio de LILYGO en github para la pantalla en LilyGo-Cam-ESP32S3. Haz clic en el botón verde «<> Code» y luego en «Download ZIP» para descargar el repositorio como un archivo ZIP:

A continuación, descomprime el archivo ZIP para extraer su contenido. Deberías ver los siguientes archivos en la carpeta descomprimida llamada «LilyGo-Cam-ESP32S-master»:

Necesitamos copiar el contenido de la carpeta «lib» dentro de la carpeta «libraries» del Arduino IDE. En Windows, la carpeta «libraries» suele estar ubicada en:

C:\Users\<username>\OneDrive\Documents\Arduino\libraries

Como esta carpeta ya contiene librerías instaladas, te recomiendo renombrarla temporalmente, por ejemplo a «_libraries», y crear una nueva carpeta llamada «libraries». Así evitas conflictos con las librerías ya instaladas y no las pierdes. Más tarde puedes revertir fácilmente este cambio. La imagen a continuación muestra cómo debería verse tu carpeta «Arduino» con las librerías:

Luego copiamos los archivos de la carpeta «lib» a la nueva carpeta «libraries» como se muestra a continuación:

Con esto completamos la instalación de las librerías requeridas (AceButton, ESP32QRCodeReader, U8g2, XPowersLib). En la siguiente sección instalaremos el core de ESP32.

Instalación del core ESP32

Además de las librerías, también necesitamos instalar una versión específica del core ESP32. El github repo para la T-Camera S3 indica que se debe usar la Versión 2.0.17. Parece que la versión actual (3.3.x) no es compatible (a noviembre de 2025) y el código no compilará, aunque no lo he probado.

Bajar la versión del ESP32 es sencillo. Abre el BOARDS MANAGER, escribe «ESP32» para filtrar las placas ESP32 y luego selecciona la Versión 2.0.17para el esp32 de Espressif Systems. La imagen a continuación muestra cómo se ve después de bajar la versión del core ESP32:

Ahora estamos casi listos para probar la cámara.

Código para el ejemplo mínimo de cámara

En esta sección prepararemos, flashearemos y ejecutaremos el código para el Minimal Camera Example que se encuentra en el examples folder del repositorio github. Como descargaste el repositorio, ya tienes el código de ejemplo en tu ordenador. Abre la carpeta «LilyGo-Cam-ESP32S-master» en tu ordenador, luego ve a «examples» y abre la carpeta «MinimalCameraExample»:

Hay algunas cosas que necesitamos cambiar para poder ejecutar el MinimalCameraExample.ino, sin embargo.

Renombrar archivo de secretos

Primero, renombra el archivo «secrets.h.example» a «secrets.h», ya que necesitamos este archivo para las credenciales WiFi:

Rellenar secretos

Si ahora abres el proyecto MinimalCameraExample.ino en tu Arduino IDE deberías ver una pestaña con el archivo «secrets.h».

Haz clic en ella e introduce el SSID y la contraseña de tu WiFi. Puedes rellenar el mismo SSID y contraseña tres veces:

// If using station mode, please fill in the wifi ssid and password here, cahnge as per your wireless settings
#define WIFI_SSID1 "ssid_from_AP_1"
#define WIFI_SSID_PASSWORD1 "your_password_for_AP_1"

#define WIFI_SSID2 "ssid_from_AP_2"
#define WIFI_SSID_PASSWORD2 "your_password_for_AP_2"

#define WIFI_SSID3 "ssid_from_AP_3"
#define WIFI_SSID_PASSWORD3 "your_password_for_AP_3"

Seleccionar modo WiFi

Finalmente, necesitamos hacer dos cambios en el archivo MinimalCameraExample.ino. Reemplaza los corchetes angulares de la inclusión de secrets.h por comillas y establece la bandera use_ap_mode a false:

Después de estos cambios, el inicio del archivo MinimalCameraExample.ino debería verse así:

#include <Arduino.h>
#include <WiFi.h>
#include <WiFiMulti.h>
#include "esp_camera.h"
#include "secrets.h"

#define XPOWERS_CHIP_AXP2101
#include "XPowersLib.h"
#include "utilities.h"


void        startCameraServer();

XPowersPMU  PMU;
WiFiMulti   wifiMulti;
String      hostName = "LilyGo-Cam-";
String      ipAddress = "";
bool        use_ap_mode = false;

Subir código a la T-Camera S3

Ahora estamos casi listos para subir el código a la T-Camera S3. Selecciona «ESP32S3 Dev Module» como placa y asegúrate de que esté conectada y reconocida en un puerto COM:

Luego, en el menú «Tools» configura los siguientes parámetros:

Los más importantes son Flash Size, Partition Scheme y PSRAM. Los demás parámetros deberían estar en sus valores por defecto, pero es mejor que los revises. Al imprimir en el Monitor Serial, la configuración USB_CDC_ON_BOOT debe estar activada.

Ahora puedes subir el código a tu T-Camera S3 y, con suerte, ver la siguiente información en el Monitor Serial:

Te indica que la placa pudo conectarse al WiFi y en qué dirección IP está corriendo el servidor web de la cámara. Los mensajes de error sobre la partición no parecen causar problemas y pueden ser ignorados.

Abre tu navegador web, introduce la dirección IP, por ejemplo «192.168.1.111» en la barra de direcciones y debería aparecer una barra lateral con un menú para el servidor web:

Haz clic en «Start Stream» en la parte inferior de ese menú (justo encima de Advanced Settings):

y deberías poder disfrutar de una transmisión de video en tu navegador:

Si todo eso funcionó, ¡felicidades ; )

No se puede subir código a la T-Camera S3

He comprobado que subir el código del MinimalCameraExample a la T-Camera S3 a menudo no funciona. Mantener pulsado el botón Boot/Reset, reiniciar la placa, reiniciar el ordenador – nada funcionó.

El flasheo comenzaba correctamente pero luego, antes de llegar al 100%, fallaba con el mensaje de error:

Ocurrió un error de excepción serial: No se puede configurar el puerto, algo salió mal. Mensaje original: PermissionError(13, ‘El dispositivo no reconoce el comando.’, None, 22)
Nota: Este error proviene de pySerial. Probablemente no sea un problema de esptool, sino de la conexión hardware o los drivers.

La buena noticia es que encontré una forma de superar este problema. Simplemente crea otro proyecto Arduino con código mínimo y flashea ese código si te encuentras con el error anterior:

void setup() {
  Serial.begin(115200);
}

void loop() {
  delay(1000);
  Serial.println("loop");
}

Por alguna razón, esto siempre funciona y después puedes flashear el código más grande (MinimalCameraExample) de nuevo y también funcionará.

Conclusión

En este tutorial aprendiste cómo empezar con la placa T-Camera S3 de LILYGO. Solo flasheamos y ejecutamos el Minimal Camera Example pero el repositorio github tiene más examples que vale la pena explorar.

Ten en cuenta que también tenemos un tutorial para el nuevo modelo T-Camera-Plus S3 Getting Started with T-Camera-Plus S3. Y si te interesan otras cámaras y aplicaciones, echa un vistazo a los siguientes tutoriales:

Si tienes alguna pregunta, no dudes en dejarla en la sección de comentarios.

¡Feliz bricolaje! 😉