Skip to content

ESP32-based asynchronous web server that monitors real-time temperature and humidity data using the DHT11 sensor, with WhatsApp notification integration.

License

Notifications You must be signed in to change notification settings

CodeRTX/ESP32_Weather_Notifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ESP32 Weather Notifier

Project Overview

This project implements an ESP32-based asynchronous web server to monitor temperature and humidity data from a DHT11 sensor in real-time. Additionally, the server sends automated WhatsApp notifications of sensor readings to specified contacts.

Features

  • Real-Time Data Monitoring: Live temperature and humidity data available via a web server.
  • WhatsApp Notifications: Automated updates sent through the CallMeBot API.
  • Statistical Analysis: Script for extended analysis of collected sensor data, including mean, variance, standard deviation, median, and mode.

Components

  • ESP32 MCU (MicroController Unit)
  • DHT11 temperature and humidity sensor
  • Breadboard and connecting wires
  • Resistor (1kΩ)

Setup Instructions

  1. Arduino Library Setup:

    • Install the "DHT library" and "Adafruit Unified Sensor" library from Arduino Library Manager.
    • Include the ESP32 board package by adding the following URL to Additional Board Manager URLs in Arduino Preferences:
      https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
      
  2. Connection Diagram:
    Circuit Diagram

  3. Arduino Code Upload:

    • Use ESP32_WebServer_DHT11_WhatsApp.ino as the main code for uploading to ESP32.
    • extra_StatisticalAnalysis.ino contains additional statistical analysis.
  4. WhatsApp API Setup:

    • Configure the CallMeBot API for WhatsApp notifications by entering your phone number and API key in the code.

      WhatsApp API Setup

      WhatsApp API Notifications

Note: Replace personal information in the code (such as SSID, Wi-Fi password, phone number, and API key) with your own details, and ensure you keep this information secure.

Web Interface

Server on PC
The web server allows users to view current temperature and humidity readings on any device with a browser.

Statistical Analysis

For extended data insights, the additional script performs statistical analysis on the sensor readings, providing:

  • Mean
  • Variance
  • Standard Deviation
  • Median
  • Mode

Statistical Analysis

Results and Demonstrations

  • Serial Monitor Output:
    The data streamed from the ESP32 for debugging. Serial Monitor

  • Real-Time Plots:
    Graphical data representations using Arduino’s Serial Plotter. Serial Plotter Analysis

Conclusion

The ESP32 Weather Notifier demonstrates an IoT application with real-time data monitoring and automated messaging. The flexibility of the ESP32 and DHT11 sensor combination allows for numerous IoT applications.

References

MTech Mini-Project

This project was completed as part of my MTech mini-project.

About

ESP32-based asynchronous web server that monitors real-time temperature and humidity data using the DHT11 sensor, with WhatsApp notification integration.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages