Eu joguei com muito Dispositivos ESP32 e ESPHomeo que já me permitiu criar um dispositivo bobo que permite ligar o computador simplesmente tocando-o na mesa. Tenho vários sensores com os quais estou brincando para lidar com o ESPHome e construí um painel LCD com alimentação ESP32 controlado por um botão, um sensor de temperatura e um LED RGB. Também configurei alguns outros dispositivos para me sentir confortável com as implantações YAML e ESP32 e adorei as possibilidades que ele abriu para minha casa inteligente. Em minha pesquisa, me deparei com o ESP32 “Cheap Yellow Display”, também conhecido como ESP32 CYD.
Como o nome sugere, este é um monitor com ESP32 bastante barato. O meu é especificamente um ESP32-2432S028R e custa cerca de US $ 20 por uma tela LCD TFT 240×320, um slot para cartão SD e alguns pinos extras fornecidos para adições de hardware que se conectam aos pinos GPIO. O meu também tinha uma caixa de acrílico e madeira, embora esse display pudesse ser embutido em qualquer caixa física, se você quisesse. É incrivelmente versátil e pode ser reprogramado à vontade, para que o painel de sua casa inteligente possa se tornar outra coisa em apenas alguns minutos.
Meu objetivo de longo prazo ainda é substituir o OnePlus 6 manter na minha mesa como um painel do Home Assistante também encomendei alguns monitores um pouco maiores que usarei para testes adicionais e construção de novo software. Até agora, porém, o ESP32 CYD tem sido uma das melhores adições ao meu escritório em casa e, à medida que aprendi como projetá-lo, ele me abriu para uma ampla gama de possibilidades que esses pequenos dispositivos baratos podem permitir.
Há tanta coisa que você pode fazer com um display inteligente e programável
Atualmente controla minha casa inteligente
No início, eu só queria aprender os fundamentos do ESP32 CYD, então verifiquei o GitHub para obter exemplos concretos relacionados ao ESPHome. Eu encontrei um armazenamento incrível criado pelo desenvolvedor irlandês e YouTuber Brian Lough, contém exemplos de código, explicações e muito mais, que se mostraram inestimáveis para aprender como esse dispositivo funciona e quais são suas limitações. Comecei com algumas ferramentas bem básicas e encontrei uma ferramenta web Designer de exibição ESPHome para ajudar a gerar o código do painel.
Porém, acabou sendo muito lento, sem falar que o resultado final foi feio. Eu tinha notado os exemplos de LVGL no repositório GitHub de Lough, embora fossem para o Arduino IDE, e comecei a descobrir como funcionava no ESPHome. LVGL significa Light and Versatile Graphics Library e é uma forma de desenhar belos gráficos em dispositivos incorporados com recursos mínimos. Consegui criar alguns controles bem básicos dessa forma e eles já pareciam muito melhores, mas senti como se estivesse cegando. LVGL é uma adição um tanto nova ao ESPHome, baseada na versão 8 (não na versão 9, embora seja considerada atualizada), e só foi adicionada no segundo semestre do ano passado. Até a adição oficial, a única forma de utilizar o LVGL no ESPHome era através de um componente importado.
A novidade do LVGL no ESPHome é parte do motivo pelo qual tive tanta dificuldade em obtê-lo. A documentação parece estar um pouco faltando e embora haja alguma muitos ótimos exemplos na documentação Controlar o Home Assistant a partir de widgets LVGL parecia que eu estava mergulhando no fundo do poço de o fundo do poço. No entanto, usei o GitHub novamente e descobri outro repositório fantástico Ryan Ewen com uma implementação incrível de LVGL via ESPHome… e deu suporte ao CYD que estou usando aqui!
O layout em minhas fotos é um desvio direto de sua abordagem de construção usando LVGL. Estou usando o mesmo estilo de botões e o mesmo estilo de exibição, e estou usando páginas, assim como ele fez em sua implementação. Adicionei um sensor meteorológico na parte superior central da tela e adicionei a temperatura da minha sala no canto superior direito. No momento, posso controlar as luzes do meu quarto e do escritório e posso controlar a música que toca em mim Edição de visualização de voz do Home Assistant. Posso tocar em reproduzir para iniciar o Music Assistant, que permite controles de volume e salto de faixa. Ele teve que criar seu próprio widget de modelo, que incluí e expôs os controles corretos, mas tudo simplesmente… funcionou. Pude aprender com o que Ewan fez no desenvolvimento com LVGL e adaptá-lo às minhas necessidades.
Não está perfeito agora. Ainda tenho muito que aprender e sou aprendendo, mas estou satisfeito por estar em um lugar onde agora posso transformá-lo em algo ainda mais útil. Definitivamente tem sido um desafio, e às vezes esmagador, mas é incrivelmente gratificante clicar em “Instalar” no ESPHome e de repente ter um painel que fica lindo na tela. trabalhar. Desde então, encontrei muitos outros exemplos de código fantásticos usando LVGL no ESPHome e tenho certeza de que o produto final será basicamente um amálgama de tudo que aprendi com eles.
Se você não é um desenvolvedor, usar o ESP32 CYD será particularmente difícil neste momento. Trabalhei muito como desenvolvedor, então, sendo desafiado, consegui superar muitos dos problemas que encontrei usando técnicas típicas de desenvolvimento e depuração enquanto analisava a documentação. É muito trabalhoso e nem todos estão preparados para isso, mas quem o fizer achará muito gratificante. Quando terminar tudo o que estou fazendo aqui, abrirei o código-fonte de tudo no GitHub. Aprendi com outras pessoas como começar, e quando há inícios em projetos como esse, todos podem se beneficiar do máximo de recursos possível para aprender como lidar com isso também.







