Wi-Fi de Longo Alcance com ESP32 T190 + LoRa V2
Olá, queridos alunos. Nesse projeto vamos montar um sistema completo de monitoramento usando dois chips ESP32 com comunicação LoRa na frequência de 915 MHz.
Um deles é o novo ESP32 T190 da Heltec, com display colorido de 1.9” e resolução de 320x170, ideal para exibir gráficos e dados em tempo real.
O outro é o ESP32 LoRa V2, com display OLED monocromático, responsável por coletar dados de temperatura, umidade e qualidade do ar utilizando os sensores AHT21 e ENS160 — esse último, um sensor multigás digital com algoritmos internos para cálculo de TVOC, eCO₂ e AQI.
Links onde encontrar os componentes:
Heltec Esp32-S3 Lora Vision Master T190
https://s.click.aliexpress.com/e/_omQRd39
Heltec WiFi LoRa 32 V3
https://s.click.aliexpress.com/e/_ooxfjnz
ENS160+AHT21
https://s.click.aliexpress.com/e/_oF3nZuJ
https://s.click.aliexpress.com/e/_omQRd39
Heltec WiFi LoRa 32 V3
https://s.click.aliexpress.com/e/_ooxfjnz
ENS160+AHT21
https://s.click.aliexpress.com/e/_oF3nZuJ
Explicarei como:
• Estabelecer comunicação entre os dois módulos usando LoRa SX1262
• Exibir os dados com gráficos atualizados a cada segundo no display colorido
• Instalar as bibliotecas e configurar tudo na IDE Arduino 2.X
Você verá que é possível criar aplicações robustas e de longo alcance com excelente visualização gráfica — tudo usando componentes acessíveis e sem complicação.
Vamos ao passo a passo.
Antes de iniciar, gostaria de incluir uma parte muito importante que não está presente no vídeo, que é referente a maneira como você poderá desbloquear o número serial do chip.
PDF: Desbloqueando Serial
Objetivos
Este projeto tem como objetivos:
- Conhecer o SP32-S3 T190 da Heltec, com display colorido de 1.9” (320x170).
- Instalar a biblioteca da Heltec no Arduino IDE 2.x
- Utilizar sensores AHTX21 (temperatura/umidade) e ENS160 (qualidade do ar)
- Comunicar dois ESP32 via LoRa 915 MHz
- Exibir os dados graficamente usando o controlador ST7789V2
A montagem é simples: um ESP32 com sensor ENS160 + AHTX21 envia, via LoRa, dados para outro ESP32 com display colorido. O receptor exibe as informações em gráficos atualizados a cada segundo.
Componentes Utilizados
1. ESP32-S3 T190
Módulo com display TFT 1.9”, resolução 320x170, Wi-Fi, BLE e LoRa SX1262. Responsável pela recepção dos dados e exibição gráfica.
2. ESP32 LoRa V2
Módulo com display OLED monocromático, atua como transmissor dos dados via LoRa.
3. Sensor ENS160
Sensor digital multigás que mede TVOC, eCO2 e qualidade do ar. Altamente sensível, reage inclusive à respiração humana.
4. Sensor AHTX21 / AHT
Sensor de temperatura e umidade com comunicação I²C. Precisa ser reidratado após soldagem para maior precisão.
5. Antena 915 MHz
Utilizada em ambos os ESPs para comunicação LoRa.
6. Bateria Li-Ion
Usada no ESP32 T190. O sistema pode funcionar autônomo ou carregando via USB-C.
7. Cabo SH 4 pinos para sensores
Facilita conexão SPI/I²C com sensores QuickLink.
8. Dissipador de calor para ESP32
Ajuda a manter a temperatura abaixo de 70ºC em ambientes quentes.
Principais Características do HT-VMT190
• Processador ESP32-S3 dual-core, 240 MHz
• Display colorido TFT LCD 1.9” (320x170, até 262 mil cores)
• Wi-Fi, BLE e LoRa SX1262
• USB-C, PSRAM 8MB, Flash 16MB
• Interface para sensores QuickLink
• Baixíssimo consumo em sono profundo (18μA)
• Bateria com gerenciamento integrado
Principais Características
- MCU ESP32-S3R8, suporta Wi-Fi e BLE.
- O módulo LoRa é opcional, compatível com Meshtastic.
- Baixo consumo de energia, 18uA em sono profundo.
- Interface de bateria SH1.25-2 integrada, sistema de gerenciamento de bateria de lítio integrado (gerenciamento de carga e descarga, proteção contra sobrecarga, detecção de energia da bateria, comutação automática de energia USB/bateria).
- Função de exibição poderosa, tela TFT-LCD integrada de 1,9 polegadas contém (RGB) 170 X320 pontos e pode exibir até 262 mil cores.
- A interface do sensor SH2.0-4P é compatível com sensores da série QuickLink.
- Compatível com Arduino, fornecemos frameworks e bibliotecas de desenvolvimento.
Instalação das Bibliotecas
Para compilar os códigos no Arduino IDE 2.x, siga:
Acesse: https://resource.heltec.cn/download/package_heltec_esp32_index.json
Copie este link para o campo "URLs Adicionais" em Preferências.
Para o sensor ENS160, instale a biblioteca oficial: https://github.com/sciosense/ens16x-arduino
Sensores
ENS160
- Sensor multigás com 4 elementos. Calcula automaticamente:
- TVOC
- CO2 equivalente
- AQI (Air Quality Index)
- Compensa temperatura e umidade
- Suporta I²C e SPI. Ideal para ambientes com solda, oficinas ou controle de exposição a gases.
O ENS160 é uma solução digital de sensor multi-gás, baseada na tecnologia de óxido metálico (MOX) com quatro elementos sensores. O controle independente da placa aquecida permite a detecção de uma ampla gama de compostos orgânicos voláteis (VOCs), incluindo etanol, tolueno, hidrogênio e gases oxidantes, com sensibilidade superior.
O ENS160 suporta algoritmos inteligentes para processar as medições brutas dos sensores no próprio chip. Esses algoritmos calculam equivalentes de CO₂, TVOC, índices de qualidade do ar (AQIs) e realizam compensação de umidade e temperatura, além de gerenciamento da linha de base, tudo no chip. As medições brutas do sensor podem ser lidas para personalização adicional.
O dispositivo encapsulado em LGA inclui interfaces escravas SPI e I²C para se comunicar com um processador host principal. O ENS160 é uma tecnologia comprovada e livre de manutenção, projetada para alto volume e confiabilidade.
ATH21B
- Sensor de temperatura e umidade.
- Requer reidratação após soldagem
- Coloque em ambiente com UR > 75% por 12h
- Alternativamente: UR > 40% por 2 dias
É proibido utilizar soldagem por refluxo (reflow) ou por onda (wave) para este componente. A soldagem manual deve ser feita em menos de 5 segundos, a uma temperatura máxima de 300 °C.
Observação: Após a soldagem, o ATH21B precisa ser armazenado em condições de umidade relativa acima de 75% por mais de 12 horas para garantir a reidratação do polímero. Caso contrário, o sinal de saída do sensor sofrerá desvio.
Alternativamente, o sensor pode ser colocado em um ambiente natural (umidade relativa acima de 40%) por mais de 2 dias para reidratá-lo. O uso de solda de baixa temperatura (por exemplo, 180 °C) pode reduzir o tempo de hidratação.
Não utilize o sensor em ambientes com gases corrosivos ou em contato com água condensada.
Controlador ST7789V2
O ST7789V2 é um controlador/driver de chip único para TFT-LCD de 262K cores, tipo gráfico. Ele consiste em 720 circuitos de linha de fonte e 320 circuitos de linha de porta. Este chip pode se conectar diretamente a um microprocessador externo e aceita interface paralela de 8 bits/9 bits/16 bits/18 bits.
Os dados de exibição podem ser armazenados na RAM de dados de exibição no chip de 240x320x18 bits. Ele pode executar a operação de leitura/gravação de RAM de dados de exibição sem nenhum relógio de operação externo para minimizar o consumo de energia.
Além disso, devido ao circuito de alimentação integrado necessário para acionar o cristal líquido; é possível fazer um sistema de exibição com o menor número de componentes
Esquemático do ESP32 T190
O ESP32 T190 já vem com todo o circuito necessário integrado, o que facilita a prototipagem:
O módulo LoRa SX1262 é conectado via SPI ao ESP32-S3
O display TFT de 1.9" é controlado pelo ST7789V2 em modo SPI
Um chip AW9364 aciona os LEDs de fundo com controle PWM
O conector QuickLink permite fácil conexão de sensores via I²C
A alimentação via USB-C é protegida por diodos e resistores adequados
O circuito também possui leitura inteligente da tensão da bateria (VBAT)
Esse nível de integração é o que torna o T190 uma placa ideal para projetos robustos com exibição gráfica, LoRa e alimentação autônoma.
Montagem do Sistema
O ESP32 V2 (transmissor) é conectado ao sensor ENS160 + AHTX21 via I²C:
SDA: GPIO 33
SCL: GPIO 32
Alimentação: 3.3V
O ESP32 T190 (receptor) recebe os dados LoRa e exibe no display. Os dados são acumulados em arrays e exibidos graficamente com três curvas (temperatura, umidade e qualidade do ar).
Os arquivos estão divididos em dois códigos:
senderLora.ino — Responsável pela leitura dos sensores e envio via LoRa
receiverLora.ino — Responsável por receber os dados e exibir no display colorido
Os códigos estão 100% comentados linha por linha. Você pode baixar o pacote completo (códigos, imagens e PDF) no link abaixo:
0 Comentários