12/08/2026

Projeto GAIA - esp32-s3 - PARTE 01

Estudo de tecnologia embarcada com ESP32-S3 O objetivo é evoluir em programaçao c++ para projetos embarcados para desenvolver um pet virtual em forma de organismo inteligente que evolui e interage com o usuário

Projeto GAIA - esp32-s3 - PARTE 01

Estou começando um projeto embarcado utilizando o kit de desenvolvimento ESP32-S3-1.54inch-LCD-Display-TouchScreen, que tem como objetivo criar um pet virtual que utilize todos os recursos desta placa e tenha evolução unica baseada nas interaçoes com o usuário.

Um projeto meio ambicioso para um desenvolvedor solo, porém acredito que só tem a agregar no desenvolvimento de novas habilidades como dev e areas a fins.


Bom após adquirit a placa, encontrei alguns pequenos desafios que acredito que todo desenvolvedor iniciante em uma área tão específica exige, como por exemplo, escolher o ambiente, as bibliotecas, estudar o hardware, descobrir metodos que façam o mesmo funcionar.


Graças a ajuda de IA, e muita paciencia, consegui realizar com sucesso a criação de varias rotinas que se espearia em um dispositivo tão completo quanto este, coisas como, fazer a lcd e o touch funcionar, som, leitura e escrita no cartão de memoria, conexão com wifi, até um mini servidor de arquivos via web eu consegui construir, isso é incrível.


Confeço que o uso de IA para codar meio que me frustra um pouquinho e meio que tira um pouco a graça da coisa, porem eu dividi o processo em etapas, onde na primeira para a IA faz por mim, depois ela me ensina a faze, depois eu faço com o auxilio e por final faço sozinho utilizando os conhecimentos que adquiri.(isso tem me ajudado a evoluir muito em tão pouco tempo!)


Já tive um contato no passado com tecnologia embarcada como arduino e pic, que foi bem util agora, principalmente na hora de lidar com a documentação, datasheets e criação de drivers para o dispositivo.


Estive testanto em duas plataformas diferentes, a primeira foi o arduino IDE, que me deu uma base interessante de como o hardware funciona e como poderia ter uma base de utilização da linguagem e drivers, a partir dai, voltei pro bom e velho VSCode utilizando o ambiente ESP-IDF que o fabricante recomenda, e por mais que seja um pouquinho complicado no inicio, senti que essa ferramenta alem de recurços muito mais robustos e interessantissimos, e muito mais gostoso trabalhas com objetos separados kkkkk. Sim eu adoro criar estruturas como uma pasta so para drivers, uma pro core, outra pra ui, etc... acredito que isso além de ficar mais organizado e legivel me da mais poder pra trabalhar.


No momento, voltei as fundações da linguagem C++, embora ja tenha uma boa bagagem em logica de programação graças ao php e gdscript, eu nunca tive que me preocupar tanto em como as minhas variaveis se comportam na memoria, nesse caso literalmente kkkkkk


Bom, testei as bibliotecas LVGL e lovyanGFX, a LVGL é incrivel e tem ótmos recursos prontos para testar, porem para uma game engine não vejo muita vantagem, e ela acaba atrapalhando um pouco, então optei em focar meu aprendizado na lovyanGFX, que é um pouquinho crua pra lidar porem me da um leque de recursos incriveis para ser utilizado como ferramenta gráfica, e com certeza lá na frente ela vai ser uma ferramenta incrível para meu pet virtual se desenvolver futuramente.


Bom éssa é apenas uma introdução, embreve retornarei com novas postagens sobre esse projeto, e uma prévia de como estou fazendo as coisas, acredito que será uma experiência rica e divertida :)