FormigaWeather: estação meteorológica IoT open-source de baixo custo com ESP8266
date
Mar 17, 2025
slug
estacao-meteorologica-baixo-custo-esp8266-formiga
status
Published
tags
Ciência
Tecnologia
Engenharia Elétrica
IoT
summary
Crie a sua própria estação meteorológica de baixo custo utilizando ESP8266 e alguns componentes fáceis de achar.
type
Post
O avanço da tecnologia IoT (Internet das Coisas) tem tornado acessíveis soluções que, até pouco tempo, demandavam investimentos e infraestrutura complexa.
O FormigaWeather descrito no presente artigo é um projeto que exemplifica essa tendência, isto é, trata-se de uma estação meteorologica de baixo custo e código-fonte aberto, capaz de medir qualidade do ar, temperatura, umidade, pressão atmosférica e detecção de chuva, com visualização dos dados por meio de um site responsivo hospedado diretamente no próprio microcontrolador.
Esse pequeno projeto destina-se tanto a makers e entusiastas quanto a educadores que buscam atividades práticas para sala de aula.
É uma proposta pedagógica e prática - montar a sua própria estação permite compreender sensores, coleta e tratamento de dados em tempo real obtidos do ambiente.
Visão Geral
A estação tem por base o microcontrolador NodeMCU ESP8266, e integra um conjunto de sensores que coletam informações ambientais essenciais:
- MQ-135 - Sensor de qualidade do ar, detecção de gases e poluentes através de medida qualitativa/indicativa.
- BM180 - Medição barométrica, ou seja, que fornece o valor da pressão atmosférica e permite também estimativas de altitude.
- DHT11 - Medição de temperatura e umidade relativa do ar.
- MH-RD - Detecção de chuva, isto é, indica presença de precipitação.
Assim, todos os dados coletados são exibidos na interface web hospedada na própria estação e podem ser acessados via Wi-Fi, Bluetooth ou exportados em formato de planilha (CSV) para posterior estudo.
A interface também permite o monitoramento de gráficos em tempo real 🙂
O que vamos precisar?
Veja a lista de materiais e componentes utilizados em nossa estação. O custo total estimado é de R$ 143,48 (em Março de 2025). E todos os componentes foram adquiridos em sites de compras conhecidos na web.
Componente | Descrição | Qtd. |
Placa NodeMCU ESP8266 | Microcontrolador com Wi-Fi e bluetooth | 1 |
MQ-135 | Monitoramento da qualidade do ar | 1 |
BMP180 | Medição de pressão e altitude | 1 |
DHT11 | Temperatura e umidade | 1 |
Resistor 10 kΩ | Pull-up para o DHT11 | 1 |
Protoboard | Placa de prototipagem | 1 |
Fios jumper | Conexões elétricas | Diversos |
Cabo USB | Para ligar o microcontrolador ao computador e programar | 1 |
Montagem do circuito
A montagem é simples e direta, cada sensor conecta-se ao NodeMCU conforme os pinos indicados na imagem abaixo.

Conexões:
- DHT11 → D4 (use resistor de 10 kΩ entre VCC e sinal, um pull-up).
- BMP180 → SDA: D2, SCL: D1 (Conexão I²C).
- MQ-135 → A0 (entrada analógica).
- MH-RD → D5 (entrada digital).
Estas ligações permitem que o NodeMCU leia os valores dos sensores e disponibilize os dados no site hospedado localmente.

Hora de Programar
Antes de começarmos a digitar o código da nossa estação, é importante configurar o ambiente de desenvolvimento, ou seja, instalar todos os programas e bibliotecas necessários para que nosso código possa ser carregado no microcontrolador.
Primeiro, instale a IDE do Arduino (versão 1.8.18 ou superior) no seu computador. Saiba como instalar aqui.
Instalar a biblioteca do NodeMCU ESP8266
Após a instalação, execute a IDE do Arduino a acesse o menu Arquivo → Preferências.
No campo “URLs adicionais para gerenciadores de placas”, adicione:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Clique em Ok.
Em seguida, vá no menu Ferramentas → Placa → Gerenciador de Placas, pesquise por “ESP8266” e instale o pacote correspondente.
Por fim, vá no menu Ferramentas → Placa e selecione a opção “NodeMCU 1.0 (ESP-12E Module).
Instalar a biblioteca Adafruit BMP085
Agora, faça o download da biblioteca Adafruit_Sensor-master.zip.
Na IDE do Arduino, vá no menu Sketch → Incluir Biblioteca → Adicionar Biblioteca .ZIP e selecione o arquivo que você baixou.
Instalar a biblioteca DHT
De forma parecida, faça também o download da biblioteca DHT-sensor-library.zip.
Em seguida, na IDE do Arduino, novamente vá no menu Sketch → Incluir Biblioteca → Adicionar Biblioteca .ZIP e selecione o arquivo que você acabou de baixar.
Após os passos acima, a IDE estará pronta para rodar e carregar o código para o nosso microcontrolador.
Modifique o Código
Você pode acessar o código diretamente através do repositório descrito abaixo, ou pode baixá-lo diretamente aqui, “código-fonte.zip”. Extraia o arquivo para uma pasta de sua preferência.
Certifique-se que você concluiu corretamente os passos anteriores. E, através da IDE do Arduino, abra o arquivo “estacao_formiga.ino”.
Modifique o conteúdo das linhas 17 e 18, conforme o exemplo:
const char* ssid = "NOME_DO_SEU_WIFI_AQUI"; const char* password = "SUA_SENHA_WIFI_AQUI";
Lembre-se de trocar NOME_DO_SEU_WIFI_AQUI pelo nome de identificação da rede WiFi onde você estiver e SUA_SENHA pela senha de acesso correspondente.
Importante: se não houver rede WiFi disponível, deixe como está e não faça nada, pois o ESP8266 irá criar a própria rede WiFi chamada Estacao_Formiga, com senha padrão senha123. Nesse caso, basta aguardar por alguns instantes e, com seu computador ou celular, buscar por essa rede e se conectar a ela. E tudo irá funcionar normalmente também.
Carregue o Código na Placa
Após as modificações, conecte o ESP8266 ao seu computador através da porta USB.
Vá no menu Ferramentas → Porta e selecione a porta em que está conectada a sua placa.
Em seguida, vá no menu Sketch → Verificar/Compilar e aguarde finalizar a compilação do código.
Por fim, vá em Sketch → Carregar e espere que sua compilação (firmware) seja carregada na placa.
Se tudo ocorrer bem, abra o Monitor Serial da IDE do Arduino, disponível no menu Ferramentas → Monitor Serial, e você poderá acompanhar as informações da estação para verificar se está tudo certo.
Acessando os Site
Após carregar o código, e reiniciar a placa, ou desligar e ligar novamente sua alimentação através do USB ou outra fonte correspondente, em alguns instantes os dados da sua estação estarão acessíveis via navegador do celular ou do computador.
Para isso, basta conectar seu celular ou computador à mesma rede WiFi do ESP8266.
Mas lembre-se, se você modificou o código, será a rede que você adicionou, do contrário, será a rede Wi-Fi padrão que a estação mesmo cria.
Quando tudo estiver conectado na mesma rede WiFi, digite na barra de endereços do seu navegador:
http://estacaoformiga.local
E o site exibirá todos os dados que estão sendo coletados pela estação. Veja o resultado final abaixo.

Como Contribuir?
Qualquer contribuição para melhorar é sempre bem-vinda! Para colaborar, abra uma pull request no repositório em https://github.com/jancarauma/FormigaWeather.
FormigaWeather
jancarauma • Updated Apr 14, 2025
Licença
O projeto é distribuído sob a licença MIT, permitindo uso e modificações sem restrições. Confira o arquivo
LICENSE no código-fonte do repositório para mais detalhes.Agradecimentos
Este projeto não seria possível sem a iniciativa do caro colega, músico e professor Dr. Paulo Marotti, da Universidade Federal de Roraima, em suas atividades com seus alunos, em especial, do município do Uiramutã, em Roraima.
Agradeço também o apoio da comunidade Arduino/ESP8266 e desenvolvedores open-source, sempre dispostos em ajudar. Também agradeço a todos os desenvolvedores das bibliotecas utilizadas e a todos que contribuem para a disseminação do conhecimento gratuito.