{"id":26422252,"url":"https://github.com/jancarauma/formigaweather","last_synced_at":"2026-05-07T15:32:09.677Z","repository":{"id":282893514,"uuid":"950004834","full_name":"jancarauma/FormigaWeather","owner":"jancarauma","description":"🌦️ An open-source IoT weather station project to monitor air quality, temperature, humidity, pressure and rainfall. Developed with NodeMCU ESP8266, MQ-135, BMP180, DHT11 sensors and MH-RD rain module. Data accessible via responsive web server and exportable to CSV. Ideal for makers, educators and IoT enthusiasts!","archived":false,"fork":false,"pushed_at":"2025-04-14T23:13:34.000Z","size":1308,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-28T11:34:34.425Z","etag":null,"topics":["arduino","esp8266","estacao","estacao-meteorologica","iot","station","temperatura","umidade","weather","weather-station"],"latest_commit_sha":null,"homepage":"https://artientista.blogspot.com/2025/03/criando-sua-propria-estacao.html","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jancarauma.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-03-17T13:35:08.000Z","updated_at":"2025-04-14T23:13:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"cc728fbc-db7a-451f-b91a-ed27dd268327","html_url":"https://github.com/jancarauma/FormigaWeather","commit_stats":null,"previous_names":["jancarauma/formigaweather"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/jancarauma/FormigaWeather","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jancarauma%2FFormigaWeather","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jancarauma%2FFormigaWeather/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jancarauma%2FFormigaWeather/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jancarauma%2FFormigaWeather/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jancarauma","download_url":"https://codeload.github.com/jancarauma/FormigaWeather/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jancarauma%2FFormigaWeather/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32743926,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arduino","esp8266","estacao","estacao-meteorologica","iot","station","temperatura","umidade","weather","weather-station"],"created_at":"2025-03-18T02:03:30.970Z","updated_at":"2026-05-07T15:32:09.659Z","avatar_url":"https://github.com/jancarauma.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FormigaWeather - IoT Weather Station 🌐🌡️  \n*Your low-cost, open-source IoT weather station*\n\n🌦️ An open-source IoT weather station project for monitoring air quality, temperature, humidity, pressure, and rain.  \nDeveloped using NodeMCU ESP8266, MQ-135, BMP180, DHT11 sensors, and the MH-RD rain module.  \nData is accessible via a responsive web server and exportable to CSV.  \nPerfect for makers, educators, and IoT enthusiasts!  \n\n# FormigaWeather - Estação Meteorológica IoT 🌐🌡️  \n*Sua estação meteorológica IoT de baixo custo e código aberto*\n\n🌦️ Um projeto open-source de estação meteorológica IoT para monitorar qualidade do ar, temperatura, umidade, pressão e chuva.   Desenvolvido com NodeMCU ESP8266, sensores MQ-135, BMP180, DHT11 e módulo de chuva MH-RD.   Dados acessíveis via web server responsivo e exportáveis para CSV. Ideal para makers, educadores e entusiastas de IoT!\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)\n[![Version](https://img.shields.io/badge/Version-1.0.0-blue)](https://github.com/jancarauma/FormigaWeather)\n\n![Dashboard da Estação FormigaWeather](estacaoformiga.png)  \n*Captura do Web Server Responsivo*\n\n## 🚀 Funcionalidades\nUm sistema IoT completo para monitoramento ambiental, capaz de:\n\n- **Interface Web Responsiva:**  \n  O ESP8266 hospeda um site acessível via `http://estacaoformiga.local` na rede WiFi local, se não houver rede WiFi disponível, o ESP cria a rede WiFi ainda assim, ideal para locais sem disponibilidade de internet, exibindo os dados dos sensores em tempo real para acesso local.\n\n- **Medição de Qualidade do Ar:**  \n  Utiliza o sensor **MQ-135** para detecção de gases e poluentes.\n\n- **Medição Barométrica:**  \n  O sensor **BMP180** mede pressão atmosférica e possibilita estimativas, inclusive, de altitude.\n\n- **Medição de Temperatura e Umidade:**  \n  O sensor **DHT11** capta informações de temperatura e umidade relativa.\n\n- **Detecção de Chuva:**  \n  Sensor **MH-RD Raindrops** para monitorar a presença de chuva.\n\n- **Exportação CSV e Logs:**  \n  O site conta com um botão para exportar os dados em formato CSV e outro para monitorar os logs do sistema.\n\n## 📟 Componentes Utilizados\n| Componente          | Função                          | Qtd |\n|---------------------|---------------------------------|-----|\n| NodeMCU ESP8266     | Microcontrolador Wi-Fi          |  1  |\n| Sensor MQ-135       | Qualidade do ar (CO2/VOC)       |  1  |\n| Sensor BMP180       | Pressão atmosférica e altitude  |  1  |\n| Sensor DHT11        | Temperatura e umidade           |  1  |\n| Módulo MH-RD        | Detecção de chuva               |  1  |\n| Resistor 10kΩ       | Pull-up para DHT11              |  1  |\n| Protoboard          | Placa de prototipagem           |  1  |\n| Fios jumper         | Fios diversos para conexões     |  1  |\n\n### Custo Total Estimado: R$ 143,48\n- Observações: Os preços foram obtidos de fornecedores brasileiros e podem variar conforme a sua região e o fornecedor.\n\n## 🔌 Diagrama de Ligações\n![Ligações da Estação FormigaWeather](circuit.png)  \n*Exemplo de conexão dos sensores com o NodeMCU:*\n- DHT11 ➔ D4 + resistor 10 kΩ\n- BMP180 ➔ (SDA: D2, SCL: D1)\n- MQ-135 ➔ A0\n- MH-RD ➔ D5\n\n## ⚙️ Configuração\n\n### Pré-requisitos\n\nAntes de começar, certifique-se de ter o seguinte instalado e configurado:\n\n- **Arduino IDE 1.8.18 ou superior**\n- **Bibliotecas Necessárias:**\n  - `Adafruit BMP085 Library`\n  - `DHT sensor library`\n  - `ESP8266WiFi`\n\n#### Configuração da IDE e Instalação das Bibliotecas\n\n1. **Configurar o Gerenciador de Placas para ESP8266:**\n   - Abra a Arduino IDE.\n   - Vá em **Arquivo \u003e Preferências**.\n   - No campo \"URLs adicionais para gerenciadores de placas\", adicione:\n     ```\n     http://arduino.esp8266.com/stable/package_esp8266com_index.json\n     ```\n   - Clique em \"OK\".\n   - Acesse **Ferramentas \u003e Placa \u003e Gerenciador de Placas**.\n   - Busque por \"ESP8266\" e instale o pacote correspondente.\n   - Em **Ferramentas \u003e Placa**, selecione a opção **NodeMCU 1.0 (ESP-12E Module)**.\n\n2. **Instalar a Biblioteca Adafruit BMP085:**\n   - Faça o download da biblioteca através deste [link](https://github.com/jancarauma/FormigaWeather/blob/main/Adafruit_Sensor-master.zip).\n   - Na Arduino IDE, vá em **Sketch \u003e Incluir Biblioteca \u003e Adicionar Biblioteca .ZIP**.\n   - Selecione o arquivo baixado (Adafruit_Sensor-master.zip) e conclua a instalação.\n\n3. **Instalar a Biblioteca DHT sensor library:**\n   - Faça o download da biblioteca através deste [link](https://github.com/jancarauma/FormigaWeather/blob/main/DHT-sensor-library.zip).\n   - Na Arduino IDE, vá em **Sketch \u003e Incluir Biblioteca \u003e Adicionar Biblioteca .ZIP**.\n   - Selecione o arquivo baixado (DHT-sensor-library.zip) e conclua a instalação.\n\nApós seguir esses passos, sua Arduino IDE estará configurada corretamente para compilar e carregar o projeto da estação no NodeMCU ESP8266.\n\n### Instalação\n1. Clone o repositório:\n   ```bash\n   git clone https://github.com/seuuser/FormigaWeather.git\n   ```\n2. Abra o projeto na Arduino IDE:\n   - Certifique-se de que sua IDE Arduino esteja configurada conforme os pré-requisitos.\n   - Abra o arquivo [estacao_formiga.ino](estacao_formiga.ino).\n3. Configure a rede WiFi:\n   - No código, altere a variável ssid (atualmente \"dlink\") para o nome da sua rede WiFi.\n   - Modifique a variável password para a senha da sua rede WiFi.\n4. Verifique as conexões do circuito:\n   - Confirme se todas as ligações do circuito da estação estão corretas.\n5. Carregue o código no ESP8266:\n   - Conecte o ESP8266 via USB ao seu computador.\n   - Selecione a porta correta e faça o upload do código.\n6. Monitore a saída serial:\n   - Abra o Monitor Serial na Arduino IDE para verificar se o dispositivo está funcionando corretamente ou se há alguma mensagem de erro.\n7. Acesse a interface web:\n  - Caso não haja erros, conecte seu computador ou celular à mesma rede WiFi do ESP8266.\n  - Se não houver rede WiFi disponível, o ESP8266 criará uma rede própria chamada Estacao_Formiga com a senha senha123.\n  - Em seguida, abra seu navegador e acesse: http://estacaoformiga.local ou utilize o endereço IP exibido no Monitor Serial.\n\n## 🖥️ Como Usar\n- Conecte-se à mesma rede Wi-Fi da estação\n- Acesse http://estacaoformiga.local ou o IP local do NodeMCU (Disponível no Monitor Serial)\n- Interaja com os botões:\n  - 📥 Exportar CSV: Gera arquivo com dados no formato:\n    - Data, Hora, Temperatura, Umidade,Pressao,QualidadeAr,Chuva\n\n  - 📜 Logs do Sistema: Exibe histórico de conexões e eventos\n\n## 🌟 Contribuição\nContribuições são bem-vindas! Siga estes passos:\n\n- Faça um fork do projeto\n- Crie uma branch (git checkout -b feature/nova-feature)\n- Commit suas mudanças (git commit -m 'Adiciona nova feature')\n- Push para a branch (git push origin feature/nova-feature)\n- Abra um Pull Request\n\n## 📄 Licença\nDistribuído sob licença MIT. Veja LICENSE para mais detalhes.\n\n## 🙌 Agradecimentos\n- Comunidade Arduino/ESP8266\n- Autores das bibliotecas utilizadas\n- Inspiração em projetos open-source de IoT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjancarauma%2Fformigaweather","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjancarauma%2Fformigaweather","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjancarauma%2Fformigaweather/lists"}