Cheap Yellow Display (oficialmente ESP32-2432S028R) é uma pequena placa de desenvolvimento que combina um ESP32 com uma tela sensível ao toque resistiva de 2,8 polegadas 320x240, um slot para cartão SD, um LED RGB e um sensor de luz, tudo por menos de dez dólares. Decolou em 2024 e, até 2026, tornou-se o alvo padrão para qualquer pessoa que queira uma tela sensível ao toque de verdade em uma mesa, uma parede ou a frente de uma impressora 3D. O hardware é apenas metade da história. A outra metade é a cadeia de ferramentas de desktop que usamos para projetar interfaces, escrever firmware e fazer deploy de builds na placa. Abaixo estão as sete ferramentas que mais usamos ao trabalhar em um projeto CYD, desde o primeiro pixel piscante até um painel de casa inteligente polido.
O que procurar em uma ferramenta CYD
O CYD é peculiar. Usa um driver de display ILI9341 sobre SPI e um controlador de toque resistivo XPT2046 em um barramento SPI separado, e as atribuições de pinos não são as que a maioria dos tutoriais de ESP32 assume. Isso significa que uma ferramenta boa para trabalho com CYD tem algumas características específicas.
- Suporte LVGL de primeira classe, pois quase todos os projetos CYD sérios usam LVGL para a camada gráfica.
- Modelos de driver prontos para uso ou exemplos para ILI9341 e XPT2046, então não precisamos adivinhar números de pinos.
- Suporte Wi-Fi OTA, porque tirar a placa do gabinete para fazer flash fica chato rapidamente.
- Uma forma limpa de manter fontes, imagens e outros ativos no cartão SD em vez de flash.
- Uma grande comunidade de exemplos de CYD publicados que podemos pegar emprestado, já que o layout da placa varia ligeiramente entre clones.
Tudo abaixo pontua bem em pelo menos três desses cinco.
Comparação rápida
| Ferramenta | Melhor para | Plataformas | Gratuito ou pago | Característica destaque |
|---|---|---|---|---|
| LVGL | A camada gráfica em si | Windows, macOS, Linux | Gratuito, MIT | Executa o mesmo código C no CYD e em um simulador de desktop |
| SquareLine Studio | Projetando interfaces visualmente | Windows, macOS, Linux | Nível pessoal gratuito, Pro pago | Exporta código limpo do projeto LVGL C |
| PlatformIO | Gerenciando builds e bibliotecas | Windows, macOS, Linux | Núcleo gratuito, recursos Home pagos | Um platformio.ini controla placas, dependências e OTA |
| Arduino IDE 2 | Um primeiro projeto CYD | Windows, macOS, Linux | Gratuito | Board Manager encontra o núcleo ESP32 em dois cliques |
| ESP-IDF | Trabalho profundo de firmware e baixo nível | Windows, macOS, Linux | Gratuito | Acesso completo aos drivers Espressif e recursos RTOS |
| MicroPython | Prototipagem rápida em Python | Windows, macOS, Linux | Gratuito | REPL ao vivo via USB, sem etapa de compilação |
| ESPHome | Painéis de controle do Home Assistant | Windows, macOS, Linux | Gratuito | Configuração YAML compila em firmware, sem C necessário |
As ferramentas
1. LVGL – Melhor para a camada gráfica
LVGL (Light and Versatile Graphics Library) é o motivo pelo qual trabalhar com CYD é divertido. Nos oferece botões, controles deslizantes, gráficos, teclados e animações que parecem modernas em uma tela 320x240, e funciona em quase qualquer microcontrolador com framebuffer. A versão 9 apertou a pegada de memória e simplificou as APIs de driver de display e entrada, o que importa com o orçamento limitado de RAM do ESP32.
A característica mágica para iniciantes é o simulador de desktop: o mesmo código C que controla o CYD pode ser executado em uma janela SDL no nosso laptop, então podemos iterar sobre layout e interação sem tocar a placa. Quando de fato fazemos flash, LVGL se encaixa perfeitamente em projetos PlatformIO, Arduino e ESP-IDF com o mesmo arquivo lv_conf.h.
Praticamente qualquer coisa mais polida do que uma demonstração de dois botões no CYD quase certamente usa LVGL por baixo.
2. SquareLine Studio – Melhor para projetar interfaces visualmente
Escrever widgets LVGL manualmente é bom para uma ou duas telas. Além disso, queremos uma tela. SquareLine Studio é um editor de UI de arrastar e soltar construído especificamente para LVGL: nós dispostos telas, conectamos manipuladores de eventos, escolhemos fontes, jogamos imagens e depois pressionamos exportar para obter um projeto LVGL C completo pronto para cair em PlatformIO ou Arduino.
O nível pessoal gratuito é generoso o suficiente para builds de hobby CYD, e há um template de CYD circulando na comunidade que define a resolução correta 320x240 e as configurações do driver ILI9341. O nível Pro desbloqueia telas ilimitadas, widgets personalizados e a capacidade de manter ativos no cartão SD, o que vale a pena se começarmos a vender projetos.
O fluxo de trabalho que funciona para nós: esboçar a interface no SquareLine, exportar e depois editar manualmente o ui_events.c gerado para conectar a lógica Wi-Fi, sensor ou MQTT.
Baixar: Site
3. PlatformIO – Melhor para gerenciar builds e bibliotecas
Depois que um projeto tem mais de um arquivo, PlatformIO se paga. Ele funciona como uma extensão dentro de VS Code (e alguns outros editores) e substitui as etapas de build ad-hoc que afligem o trabalho de hobby ESP32 com um único platformio.ini que declara a placa, o framework, as bibliotecas e o método de upload.
Para trabalho com CYD, o padrão é: escolha board = esp32dev, adicione LVGL e a biblioteca de display TFT_eSPI ou LovyanGFX como lib_deps e solte o User_Setup.h correto em include/ para que os pinos correspondam à fiação do CYD. A partir daí, um clique constrói, carrega e abre o monitor serial. OTA via Wi-Fi é uma mudança de uma linha em upload_protocol, que é uma grande vitória de qualidade de vida para placas montadas atrás de um aro.
As versões da biblioteca são fixadas no arquivo de config, então um projeto que foi construído no ano passado ainda constrói neste ano. Isso não é algo que possamos dizer sobre cada tutorial de ESP32.
4. Arduino IDE 2 – Melhor para um primeiro projeto CYD
Arduino IDE 2 (a versão estável atual, não o antigo Java 1.x) é onde a maioria das pessoas começa com CYD, e não há nada de errado em ficar. Ele lida com o pacote de placa ESP32 por meio do Board Manager, vem com um editor rápido baseado em Monaco com autocompletar e tem monitor serial e plotter integrados.
O navegador de exemplos é a melhor ferramenta de descoberta para iniciantes: instale as bibliotecas TFT_eSPI, XPT2046_Touchscreen e LVGL e dezenas de sketches executáveis aparecem no menu Arquivo. A maioria dos tutoriais de CYD no YouTube e GitHub são escritos para Arduino, então acompanhar é sem atrito.
O escolhemos quando queremos um sketch de arquivo único para provar que algo funciona no hardware e depois portamos para PlatformIO quando o projeto cresce.
Baixar: Site
5. ESP-IDF – Melhor para trabalho profundo de firmware
Uma vez que superamos a abstração do Arduino, o SDK próprio da Espressif nos está esperando. ESP-IDF nos dá tarefas FreeRTOS, sistema de componentes completo, gerenciamento profundo de energia, controle dual-core e acesso a cada periférico que o ESP32 expõe. É o que produtos enviados usam.
O compromisso é verbosidade. Um LED piscante é mais código do que no Arduino, e o driver de display do CYD não está integrado, então trazemos a porta esp_lcd do LVGL ou ligamos TFT_eSPI como um componente. A recompensa é que uma vez que a tubulação está no lugar, podemos fazer coisas que Arduino não pode, como atualização de display com buffer duplo com DMA e framebuffers com suporte PSRAM.
Usamos quando o projeto CYD envolve qualquer coisa pesada de rede (coexistência BLE + Wi-Fi, mesh, TLS) ou quando nos importamos com o consumo de bateria.
6. MicroPython – Melhor para protótipos Python
MicroPython coloca um intérprete Python 3 no ESP32 com REPL via USB e isso muda a forma como fazemos protótipos. Digite uma linha, veja o pixel mudar no CYD. Sem compilação, sem ciclo de flash, sem espera.
A história gráfica é um pouco mais fragmentada do que com LVGL C, mas o LVGL em si fornece bindings de MicroPython e builds customizados lv_micropython para CYD circulam na comunidade. Para painéis mais simples, os drivers st7789py e xpt2046 são suficientes para desenhar texto, sprites e regiões de toque em poucas dezenas de linhas.
Usamos para ensino, brinquedos de uso único e para esse tipo de ferramenta interna onde queremos poder SSH em WebREPL e mudar comportamento sem reconstruir.
Baixar: Site
7. ESPHome – Melhor para painéis de controle de casa inteligente
Se o CYD vai estar na parede ao lado de uma instalação Home Assistant, ESPHome é o caminho mais curto para um painel de controle funcional. Em vez de escrever firmware, escrevemos um arquivo YAML que declara o display, a tela sensível ao toque, os switches, os sensores e as páginas da interface. ESPHome compila em um binário de firmware e faz flash, depois conecta tudo de volta ao Home Assistant automaticamente.
O CYD tem suporte de primeira classe na documentação ESPHome, incluindo as atribuições corretas de barramento SPI, PWM de backlight e dicas de calibração de tela sensível ao toque. As configurações da comunidade cobrem termostatos, controladores de mídia e painéis de iluminação multi-sala e qualquer um deles pode ser bifurcado e editado no painel ESPHome por meio de um navegador.
Para qualquer um que queira um painel de controle de casa inteligente funcional neste fim de semana em vez de um projeto de aprendizagem de firmware, esta é a resposta.
Como escolher o correto
A ferramenta correta depende de onde o CYD vai e de quão profundo queremos ir. Alguém que acabou de pegar a placa e quer ver algo acontecer na tela esta noite deve instalar Arduino IDE 2, adicionar o núcleo ESP32 e carregar um exemplo TFT_eSPI. É a distância mais curta para um pixel funcional.
Para um projeto com uma interface real (menus, telas, animações, teclado), a resposta é LVGL para renderização, SquareLine Studio para layout e PlatformIO para construção. Esse trio é o que a maioria dos projetos CYD polidos no GitHub usam, e é a combinação que recomendamos a qualquer um que seja sério quanto à placa.
Desenvolvedores de firmware com vista em enviar um produto devem pular Arduino e ir direto para ESP-IDF, depois trazer LVGL como um componente. É mais configuração, mas remove o teto.
Hobistas e educadores focados em Python conseguem mais em MicroPython, especialmente para oficinas infantis ou ferramentas internas.
E se o CYD está destinado a viver na parede com Home Assistant atrás, ESPHome ignora tudo acima e nos permite descrever o painel em YAML em uma tarde.
Perguntas frequentes
O que exatamente é Cheap Yellow Display? É o ESP32-2432S028R, um módulo ESP32-WROOM-32 soldado a uma placa com uma tela sensível ao toque de 2,8 polegadas 320x240 (driver ILI9341, toque resistivo XPT2046), slot para cartão SD, LED RGB, sensor de luz e porta USB. Ele vende por cerca de oito a doze dólares na maioria dos mercados e pegou o apelido “Cheap Yellow Display” porque as primeiras séries foram enviadas em PCBs amarelas.
Tenho que usar LVGL ou há alternativas? LVGL é a escolha mais popular, mas não a única. TFT_eSPI e LovyanGFX nos oferecem primitivas rápidas (linhas, formas, sprites, texto) se quisermos desenhar a interface nós mesmos. Para medidores e painéis simples, isso é suficiente. LVGL vence assim que queremos widgets, animação ou teclado.
Posso desenvolver para o CYD em macOS ou Linux?
Sim. Cada ferramenta neste artigo é executada nativamente no Windows, macOS e Linux. No Linux, podemos precisar de uma regra udev para que nossa conta de usuário possa conversar com o chip USB-to-serial CH340 ou CP2102 na placa, mas a configuração é um passo único.
Como fazer flash do CYD via Wi-Fi em vez de USB? PlatformIO, Arduino IDE 2, ESP-IDF e ESPHome todos suportam atualizações OTA. O padrão comum é incluir uma biblioteca ou componente OTA no firmware, conectar a placa a Wi-Fi e depois definir o método de upload na ferramenta para apontar para o endereço IP da placa. O primeiro upload é via USB, tudo depois pode ser sem fio.
SquareLine Studio é gratuito para uso de hobby? O nível pessoal é gratuito e cobre a maioria dos projetos de hobby CYD. Ele limita coisas como o número de telas e resolução de ativos, mas o código LVGL exportado não tem restrições de tempo de execução. A assinatura Pro desbloqueia telas ilimitadas, ativos de resolução mais alta e uso comercial.