Skip to Content

Começar com a T-Camera-Plus S3

Começar com a T-Camera-Plus S3

Neste tutorial, aprenderá como começar a usar a placa LILIGO T-Camera-Plus S3 com o ambiente Arduino IDE.

O LilyGO T-Camera-Plus S3 é uma placa de desenvolvimento compacta baseada no ESP32-S3, projetada para aplicações de IoT e visão computacional. Integra uma câmara OV2640,microfone e um ecrã. Alimentada pelo dual-core ESP32-S3 com suporte a aceleração AI e 8 MB de PSRAM, consegue lidar com captura de imagem em tempo real, deteção facial e transmissão de dados.

Neste artigo, iremos percorrer os passos essenciais de configuração, como instalar as bibliotecas, o core ESP32 e preparar o código para um servidor web que transmite vídeo via Wi-Fi da T-Camera-Plus S3 para o seu navegador.

Peças Necessárias

Vai precisar de uma T-Camera-Plus S3 e de um cabo USB-C para programar a placa e testar os exemplos de código.

LILYGO T-Camera-Plus S3

Cabo 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 da T-Camera Plus S3

AT-Camera-Plus S3 é construída em torno do microcontrolador ESP32-S3 da Espressif, um processador dual-core Xtensa LX7 a operar até 240 MHz. Inclui instruções vetoriais otimizadas para cargas de trabalho de IA e processamento de sinais, tornando-a ideal para aplicações embutidas de visão e áudio. O chip integra 512 KB de SRAM e está emparelhado com 8 MB de PSRAMe16 MB de memória flash SPI. A imagem abaixo mostra a frente e o verso da placa:

Front and back of T-Camera-Plus S3 board
Frente e verso da placa T-Camera-Plus S3 (source)

Câmara

Para imagem, a placa usa o sensor de câmara OmniVision OV2640, que suporta resoluções até 1600 × 1200 (UXGA) e comunica via interface paralela DVP de 8 bits. A câmara está ligada diretamente à matriz GPIO do ESP32-S3, utilizando um sinal XCLK de 20 MHz para sincronização. A compressão JPEG integrada no sensor reduz a carga de memória e a largura de banda de transmissão, permitindo streaming suave de frames via Wi-Fi. O módulo da câmara está ligado por um conector de fita e a lente pode ser ajustada para foco.

Componentes

A placa possui um ecrã TFT de 1,3 polegadas controlado pelo controlador ST7789, ligado via SPI. Este ecrã oferece uma resolução de 240 × 240 pixels e pode ser usado para pré-visualizar frames capturados, mostrar dados do sensor ou apresentar uma interface local. Ao lado do ecrã está um circuito integrado de gestão de energia AP1511B que fornece regulação eficiente de tensão para o ESP32-S3 e periféricos. Um microfone (INMP441) está integrado para captura de áudio via interface I²S, permitindo aplicações que combinam processamento de áudio e visão.

Conectividade

A conectividade é assegurada pelos rádios integrados do ESP32-S3 para Wi-Fi 2.4 GHz (802.11 b/g/n) e Bluetooth 5 LE com antena onboard. A placa inclui também uma porta USB Type-C para programação e alimentação, um botão de reset, uma tecla de utilizador (KEY1) e vários pinos GPIO expostos para expansão. Outras funcionalidades incluem um LED programável e circuitos onboard de controlo de energia para ativar ou desativar periféricos para otimização do consumo energético.

Pinout of the T-Camera-Plus S3 board
Pinout da placa T-Camera-Plus S3 (source)

Especificações Técnicas

A tabela seguinte resume as especificações técnicas da placa LILYGO T-Camera-Plus S3:

EspecificaçãoDescrição
MicrocontroladorESP32-S3 (Xtensa® LX7 dual-core, até 240 MHz)
Memória Flash16 MB flash SPI
PSRAM8 MB PSRAM externa
Sensor de CâmaraOmniVision OV2640, resolução máxima 1600 × 1200 px, saída JPEG
EcrãTFT 1,3″ (driver ST7789), 240 × 240 px, interface SPI
MicrofoneMicrofone digital MEMS INMP441 (interface I²S)
Conectividade Sem FiosWi-Fi 2.4 GHz (802.11 b/g/n) + Bluetooth 5 LE
Interface USBUSB Type-C (para programação, serial e alimentação)
BotõesBotão de reset e botão de utilizador (KEY1)
Gestão de EnergiaConversor DC-DC AP1511B, circuitos onboard de controlo de energia
Tensão de Operação5 V (via USB Type-C)
Disponibilidade de GPIOPinos expostos limitados para expansão de periféricos
Dimensões da PlacaAproximadamente 58 mm × 25 mm × 10 mm

Os esquemas da placa podem ser encontrados no seguinte link:

Instalação das Bibliotecas

Primeiro, vamos instalar as bibliotecas necessárias para compilar código para a placa T-Camera-Plus S3. Vá ao repositório LILYGO no github para o display em T-CameraPlus-S3. Clique no botão verde “<> Code” e depois em “Download ZIP” para descarregar o repositório como um ficheiro ZIP:

De seguida, descompacte o ficheiro ZIP para extrair o seu conteúdo. Deve ver os seguintes ficheiros na pasta descompactada chamada “T-CameraPlus-S3-arduino-esp32-libs_V2.0.14”:

Precisamos copiar o conteúdo da pasta “libraries” para a pasta “libraries” do Arduino IDE. No Windows, a pasta “libraries” está tipicamente localizada em:

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

Como esta pasta já contém bibliotecas instaladas, recomendo que a renomeie temporariamente, por exemplo para “_libraries”, e crie uma nova pasta chamada “libraries”. Assim evita conflitos com as bibliotecas já instaladas e não as perde. Depois pode reverter facilmente esta alteração. A imagem abaixo mostra como deve ficar a sua pasta “Arduino” com as bibliotecas:

De seguida, copie os ficheiros da pasta “libraries” para a nova pasta “libraries” conforme mostrado abaixo:

Com isto, a instalação das bibliotecas necessárias está concluída. Na próxima secção instalamos o core ESP32.

Instalação do core ESP32

Além das bibliotecas, precisamos também de instalar uma versão específica do core ESP32. O nome do ficheiro ZIP (T-CameraPlus-S3-arduino-esp32-libs_V2.0.14) do github repo indica que a Versão 2.0.14 deve ser usada. A versão atual (3.3.x) não é suportada (em novembro de 2025) e o código não compilará.

Fazer downgrade da versão do ESP32 é fácil. Abra o BOARDS MANAGER, escreva “ESP32” para filtrar as placas ESP32 e selecione Versão 2.0.14 para o esp32 da Espressif Systems. A imagem abaixo mostra como fica após fazer downgrade do core ESP32:

Agora estamos quase prontos para experimentar a câmara.

Código para o Exemplo Camera_WebServer

Nesta secção vamos preparar, gravar e executar o código para o Camera_WebServer que pode ser encontrado na examples pasta do repositório github. Como já descarregou o repositório, tem o código de exemplo no seu computador. Abra a pasta “T-CameraPlus-S3-arduino-esp32-libs_V2.0.14” no seu computador, depois vá a “examples” e abra a pasta “Camera_WebServer”:

Há duas coisas que precisamos alterar para conseguir executar oCamera_WebServer.ino.

Adicionar ficheiro pinconfig.h

Primeiro, a pasta do projeto para o Exemplo Camera_WebServer está sem um ficheiro com a configuração dos pinos para a câmara. Pode encontrar este ficheiro (pin_config.h) na pasta “private_library” da pasta “T-CameraPlus-S3-arduino-esp32-libs_V2.0.14”. Basta copiá-lo para o projeto Camera_WebServer conforme mostrado abaixo:

Depois de copiar o ficheiro, o seu Camera_WebServer deve conter os seguintes ficheiros:

Credenciais Wi-Fi

Em segundo lugar, precisa de definir as credenciais corretas para o seu Wi-Fi. Abra o ficheiroCamera_WebServer.ino. No início do ficheiro verá definições paraWIFI_SSIDeWIFI_PASSWORD:

#include <WiFi.h>
#include "camera_index.h"
#include "app_httpd.tpp"
#include "pin_config.h"

#define WIFI_SSID "LilyGo-AABB"
#define WIFI_PASSWORD "xinyuandianzi"

bool OV2640_Initialization(void)
{
...

Altere-os para o SSID e PASSWORD da sua rede Wi-Fi.

Carregar Código para a T-Camera-Plus S3

Agora estamos quase prontos para carregar o código para a T-Camera-Plus S3. Selecione “ESP32S3 Dev Module” como placa e certifique-se que está ligada e reconhecida numa porta COM:

De seguida, no menu “Tools” defina os seguintes parâmetros:

Os mais importantes são Flash Size,Partition Scheme e PSRAM. Os outros parâmetros devem estar nas definições por defeito, mas é melhor confirmar. Ao imprimir no Monitor Serial, a configuração USB_CDC_ON_BOOT também deve estar ativada.

Agora pode carregar o código para a sua T-Camera_Plus S3 e, com sorte, verá a seguinte informação no Monitor Serial:

Indica o modelo da câmara, que a placa conseguiu ligar-se ao WiFi e o endereço IP onde o servidor web da câmara está a funcionar. As mensagens de erro relativas à partição parecem não causar problemas e podem ser ignoradas.

Abra o seu navegador web, insira o endereço IP, por exemplo “192.168.1.242” na barra de endereços e deverá aparecer uma barra lateral com um menu para o servidor web:

Clique em “Start Stream” no fundo desse menu (logo acima de Advanced Settings):

e deverá conseguir desfrutar de um stream de vídeo no seu navegador:

Se o vídeo da T-Camera-Plus S3 aparecer desfocado, lembre-se que pode ajustar o foco da lente da câmara rodando-a:

E é tudo! Se tiver problemas a carregar o código para a T-Camera-Plus S3, veja a próxima secção.

Não consigo carregar código para a T-Camera-Plus S3

Descobri que carregar o código para o Camera_WebServer e outros exemplos maiores na T-Camera-Plus S3 muitas vezes não funciona. Segurar o botão Boot, reiniciar a placa, reiniciar o computador – nada resultou.

O carregamento começava com sucesso mas antes de chegar a 100% falhava com a mensagem de erro:

Ocorreu um erro de exceção serial: Não é possível configurar a porta, algo correu mal. Mensagem original: PermissionError(13, ‘O dispositivo não reconhece o comando.’, None, 22)
Nota: Este erro origina-se do pySerial. Provavelmente não é um problema do esptool, mas sim da ligação hardware ou dos drivers.

A boa notícia é que encontrei uma forma de ultrapassar este problema. Basta criar outro projeto Arduino com código mínimo e carregar esse código se encontrar o erro acima. Por exemplo, usei o seguinte código de exemplo:

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

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

Por alguma razão, isto funciona sempre e depois pode carregar o código maior (Camera_WebServer) novamente e também funciona.

Conclusão

Neste tutorial aprendeu como começar a usar a placa T-Camera-Plus S3 da LILYGO. Apenas carregámos e executámos o Camera_WebServer mas o repositório github tem mais examples que deve explorar.

Note que também temos um tutorial para o modelo anterior T-Camera S3: Getting Started with T-Camera S3 e, se estiver interessado em outras câmaras e aplicações, veja os seguintes tutoriais:

Se tiver alguma dúvida, sinta-se à vontade para deixar nos comentários.

Boas criações 😉