Skip to the content
PCBKitNew board
2 layers64.5 × 59.8 mmEnviroSense, the printed circuit board in 3D

IoT-based Smart Weather and Air Quality Monitoring System using ESP32 and BME680, featuring real-time environmental sensing, cloud connectivity, data visualization, and analytics.

Size
64.5 × 59.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
5
Nets
32
Pads
50
Tracks, vias
33, 0
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
10 Jun 2026
Updated
3 Sep 2026

Overview

EnviroSense is an open-source printed circuit board by Riyas-code-tonic, from the Riyas-code-tonic/EnviroSense repository on GitHub, published under the Apache-2.0 licence. It is a 2-layer board of 64.5 × 59.8 mm with 5 parts on 32 nets, routed with 33 tracks and 0 vias.

It is built around the L7805. Its parts include 2 ICs and 2 connectors. It belongs with the sensors and measurement boards and the ESP32 boards of this library.

Main components

1

README

README.md

🌳 𝓔𝓷𝓿𝓲𝓻𝓸𝑺𝒆𝒏𝒔𝒆

Smart IoT Weather & Air Quality Monitoring System

Turning real-time environmental data into meaningful insights.


ESP32 BME680 MQTT Adafruit IO Vercel

🌿 Overview

EnviroSense is a smart IoT platform that transforms environmental sensing into an interactive monitoring experience. Built around the ESP32 and the BME680 environmental sensor, the system continuously measures temperature, humidity, atmospheric pressure, and air quality before securely transmitting the data to the cloud.

Rather than limiting sensor readings to a serial monitor, EnviroSense combines cloud connectivity, a responsive web dashboard, local OLED visualization, intelligent email alerts, and power-efficient firmware to create a complete end-to-end monitoring solution. The project demonstrates how embedded systems, cloud communication, and modern web technologies can seamlessly work together to make environmental information accessible from anywhere.


🌐 Live Dashboard

Experience the deployed dashboard here:

https://enviro-sense-delta.vercel.app

Live readings are available whenever the ESP32 device is connected and publishing data.


📑 Table of Contents


📖 About the Project

Environmental conditions constantly change, yet understanding those changes often requires specialised equipment or complex monitoring systems. EnviroSense was developed to bridge that gap by providing a compact, affordable, and intelligent platform capable of collecting, transmitting, and visualising environmental data in real time.

At its core, the ESP32 communicates with the BME680 sensor to measure temperature, humidity, atmospheric pressure, and gas resistance. The collected readings are published to Adafruit IO using the MQTT protocol, allowing them to be securely accessed through a custom-built web dashboard from virtually anywhere.

To make the system practical beyond simple monitoring, EnviroSense also incorporates an OLED display that provides live sensor readings directly on the device, enabling users nearby to instantly view environmental conditions without opening the dashboard. An integrated email alert system further enhances usability by automatically notifying users whenever predefined environmental thresholds are exceeded, ensuring that important changes never go unnoticed.

Together, these components transform EnviroSense from a simple sensor project into a complete IoT monitoring solution that combines embedded systems, cloud services, and web technologies into one cohesive platform.


⚡ Key Features

  • Real-time environmental monitoring (Temperature, Humidity, Pressure & Air Quality)
  • MQTT-based cloud communication
  • Adafruit IO cloud integration
  • Interactive web dashboard
  • Automated email alert system
  • Power optimization using Deep Sleep
  • OLED display for local monitoring
  • Responsive interface for desktop and mobile
  • Secure cloud-based data visualization

🧠 How EnviroSense Works

EnviroSense follows a complete IoT workflow where sensing, communication, visualization, and notification work together to provide continuous environmental monitoring.

The BME680 sensor periodically measures temperature, humidity, atmospheric pressure, and gas resistance. These readings are collected by the ESP32, where they are processed, formatted, and prepared for transmission. Once connected to Wi-Fi, the ESP32 publishes the latest environmental data to Adafruit IO using the lightweight MQTT protocol, making the information available over the internet in real time.

The custom-built web dashboard retrieves these values from the cloud and updates the visual interface automatically. Interactive gauges and graphs allow users to monitor changing environmental conditions from any device without requiring direct access to the hardware.

For users who are physically near the device, the integrated OLED display provides an immediate view of the latest sensor readings. This enables quick local monitoring even when internet access or the dashboard is unavailable, making the system useful in both remote and on-site environments.

EnviroSense also includes an automated email notification system designed to improve responsiveness. Whenever monitored parameters exceed predefined threshold values, the system automatically triggers an email alert, allowing users to take timely action without continuously checking the dashboard. This makes the platform suitable for applications where immediate awareness of environmental changes is important.

To improve efficiency and reduce unnecessary power consumption, the firmware incorporates power optimization techniques such as Deep Sleep mode. Instead of remaining active continuously, the ESP32 periodically wakes up, collects sensor readings, transmits the data to the cloud, updates the OLED display, checks alert conditions, and then returns to a low-power sleep state. This significantly reduces energy usage and extends battery life, making EnviroSense better suited for long-term deployments in remote or battery-powered environments.

The overall workflow can be summarized as follows:

text
        BME680 Environmental Sensor
                   │
                   ▼
        ESP32 Microcontroller
                   │
      Reads & Processes Sensor Data
                   │
                   ▼
           Wi-Fi + MQTT Protocol
                   │
                   ▼
            Adafruit IO Cloud
                   │
         ┌─────────┴──────────┐
         ▼                    ▼
  Web Dashboard         Email Alerts
         ▲
         │
 Local OLED Display

By combining cloud communication, local visualization, intelligent notifications, and energy-efficient firmware, EnviroSense delivers a reliable environmental monitoring solution that remains practical for both everyday use and long-term IoT deployments.


🛠 Technologies Used

Hardware

  • ESP32 Development Board
  • BME680 Environmental Sensor
  • OLED Display

Software & Cloud

  • Arduino IDE
  • HTML
  • CSS
  • JavaScript
  • MQTT
  • Adafruit IO
  • Vercel

🔌 Hardware

The hardware combines the ESP32 with the BME680 environmental sensor to continuously monitor atmospheric conditions. An integrated OLED display allows nearby users to view live sensor readings directly from the device, while the ESP32 manages wireless communication, cloud connectivity, email notifications, and power-efficient operation within a compact embedded system.


📐 PCB Design

To improve reliability and move beyond a breadboard prototype, a dedicated PCB was designed for the system. The custom PCB provides cleaner connections, better durability, and a more compact implementation, making the overall design easier to assemble, maintain, and deploy.


🚧 Challenges

Developing EnviroSense involved much more than interfacing a sensor. Integrating reliable cloud communication, designing an intuitive dashboard, implementing automated notifications, optimizing power consumption, and ensuring smooth interaction between hardware and software required continuous testing, debugging, and refinement. Overcoming these challenges helped transform the project into a stable and practical IoT solution.


🎓 What We Learned

EnviroSense provided valuable experience in designing complete IoT systems that combine embedded hardware with cloud-based applications. Throughout the project, we strengthened our understanding of sensor interfacing, MQTT communication, responsive web development, cloud deployment, PCB design, power optimization, debugging, and collaborative software development while learning how independently developed components can be integrated into a single, scalable solution.


🚀 Future Scope

Although EnviroSense already provides a comprehensive environmental monitoring solution, several enhancements can further extend its capabilities:

  • Machine learning-based environmental prediction
  • Mobile application support
  • Historical data analytics
  • Multi-device monitoring
  • User authentication
  • Additional environmental sensors
  • Customizable alert thresholds

👨‍💻 Contributors

  • Rajnarayan Hazra
  • Riya Pailwan
  • Harsh Patange

⭐ Support

If you found this project interesting, consider giving the repository a Star ⭐. Your support motivates us to continue improving EnviroSense and building more innovative open-source projects.


Made with ❤️ using ESP32, IoT, and Web Technologies.

Parts

5
QtyValueFootprintReferences
10.96" OLEDConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ1
1ESP32-DEVKIT-V1ESP32-DEVKIT-V1:MODULE_ESP32_DEVKIT_V1U3
1Jack-DCConnector_BarrelJack:BarrelJack_HorizontalJ2
1L7805Package_TO_SOT_THT:TO-220-3_VerticalU2
1~Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalB1

Questions

How big is the EnviroSense PCB?

It measures 64.5 × 59.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the EnviroSense use?

5 parts, built around the L7805. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the EnviroSense KiCad files?

From the Riyas-code-tonic/EnviroSense repository on GitHub, at the commit this page was made from: the board is Pcb files/Envirosense/Envirosense.kicad_pcb and its schematic Pcb files/Envirosense/Envirosense.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the EnviroSense design in my own project?

Its repository publishes it under the Apache-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers40.6 × 110 mmEuropi surface mount, the printed circuit board in 3D

    Europi surface mount

    Allen-Synthesis/EuroPi

    EuroPi: A reprogrammable Eurorack module based on the Raspberry Pi Pico

    92 parts584CC0-1.0
  • 2 layers132.1 × 45.7 mmIPoS, the printed circuit board in 3D

    IPoS

    peterheinrich/InternetOverSpaghetti

    Transmitting IP packages over a pair of spaghetti thus demonstrating how media independent IP really is.

    42 parts342
  • 2 layers59.7 × 57.5 mmFunBox, the printed circuit board in 3D

    FunBox

    GuitarML/FunBox

    Stereo guitar pedal platform using Daisy Seed.

    61 parts289MIT
  • 2 layers90.8 × 35.6 mmERCF easy brd, the printed circuit board in 3D

    ERCF easy brd

    Tircown/ERCF-easy-brd

    More informations on how to reset for flashing:\ https://wiki.seeedstudio.com/Seeeduino-XIAO/#enter-bootloader-mode

    28 parts195GPL-3.0
  • 2 layers111.3 × 106.4 mmSuper Sixteen v1, the printed circuit board in 3D

    Super Sixteen v1

    matthewcieplak/super-sixteen

    Code and schematics for the Super Sixteen Eurorack sequencer

    141 parts171
  • 2 layers91.4 × 71.1 mmPico w rover, the printed circuit board in 3D

    Pico w rover

    NikodemBartnik/Mini-Mars-Rover

    Educational robotic platform made to look like a mini mars rover

    20 parts143MIT
  • 2 layers144.1 × 182.2 mmSHVC CPU-01, the printed circuit board in 3D

    SHVC CPU-01

    starlightk7/OpenSFC

    OSHW Reproduction Parts related to the Super Famicom / Super Nintendo game console

    498 parts114CERN-OHL-S-2.0
  • 2 layers106.1 × 155 mmMotherboard, the printed circuit board in 3D

    Motherboard

    Redherring32/OpenTendo-TopLoader

    An Open Source HardWare (OSHW) recreation of the 1993 toploading NES motherboard (Also known as NES-101)

    84 parts94