Skip to content
Awais Asghar.
Embedded & IoT2024

Crowd-Sourced AQI Monitor

Six sensors, Bluetooth to a phone app, and AQI within 1% of the US Embassy station.

A low-cost air-quality node built around PMS5003, MQ7, MQ2, MQ135, DHT22 and BME280 sensors that measures PM2.5, PM10, CO, temperature, humidity and pressure. Many nodes deployed by many people form a distributed pollution map. Its AQI matched the official US Embassy Islamabad readings at 99% accuracy, and it seeded the BreatheSafe initiative.

Crowd-Sourced AQI Monitor thumbnail

README · rendered from GitHub

Crowd-Sourced AQI Monitoring System

Project Status Platform Tool Communication Simulation License

Description

An IoT-based, community-driven air quality monitoring system designed to provide real-time AQI (Air Quality Index) estimation using multiple sensors. Built for both urban and rural coverage, this project empowers individuals to participate in environmental monitoring and decision-making.


Overview

This project presents a low-cost, scalable solution for air quality monitoring using IoT. It uses MQ-series gas sensors, particulate matter sensors, temperature & humidity sensors, and Bluetooth communication to calculate and visualize AQI in real-time.


What is AQI (Air Quality Index)? The Air Quality Index (AQI) is a standardized system used to measure and report the quality of air in a specific location. It tells you how clean or polluted the air is, and what associated health effects might be a concern for you.

  • AQI ranges from 0 to 500.
  • Lower AQI = cleaner air
  • Higher AQI = more polluted air
AQI RangeAir QualityHealth Impact
0–50GoodAir quality is satisfactory
51–100ModerateAcceptable; some pollutants may affect very sensitive people
101–150Unhealthy (Sensitive Groups)May cause health effects for sensitive groups
151–200UnhealthyEveryone may begin to experience health effects
201–300Very UnhealthyHealth warnings of emergency conditions
301–500HazardousHealth alert: everyone may be affected

AQI is calculated based on concentrations of pollutants like:

  • PM2.5, PM10
  • CO (Carbon Monoxide)
  • O₃ (Ozone)
  • SO₂ (Sulfur Dioxide)
  • NO₂ (Nitrogen Dioxide)

Image


What is Crowd-Sourcing?

Crowd-sourcing is the practice of collecting data, services, or information by engaging a large number of people, especially from a community or public platform. In this project:

  • Crowd-sourced AQI monitoring means many individuals place sensors in different locations (homes, streets, neighborhoods).
  • These devices collect air quality data from multiple locations simultaneously.
  • The data is combined to create a detailed and widespread pollution map, much more efficiently and cheaply than using a few government stations.

Image

Image


Hardware Used

ComponentFunctionality
Arduino UNOMain microcontroller
MQ135CO₂, NH₃, benzene detection
MQ7Carbon Monoxide (CO)
MQ2Smoke, LPG, Methane
PMS5003PM2.5, PM10 detection
DHT11 / DHT22Temperature & Humidity
BME280Pressure, Temp, Humidity
HC-05 BluetoothMobile communication
16x2 LCD DisplayReal-time local display

Image


Block Diagram

Image

System Design

My Crowd-Sourced AQI Monitoring System is designed using IoT architecture with low-cost, easily available hardware components. It consists of:

1. Sensor Unit

  • Gas Sensors: MQ135, MQ7, MQ2 – detect CO₂, NH₃, CO, smoke, etc.
  • Particulate Matter Sensor: PMS5003 – measures PM2.5 and PM10.
  • Environmental Sensors: DHT11/DHT22 and BME280 – for temperature, humidity, and pressure.

2. Processing Unit

  • Arduino UNO: Reads data from all sensors and processes it.

3. Display Unit

  • 16x2 LCD: Displays real-time values of gas concentrations, PM levels, temperature, humidity, and calculated AQI.

4. Communication Module

  • HC-05 Bluetooth: Sends processed data to a mobile app for visualization and logging.

5. Crowd-Sourcing

  • Multiple such devices are deployed in various locations by different users (the crowd), forming a distributed monitoring network.

6. Optional Mobile App

  • Receives real-time AQI data via Bluetooth.

Working Principle

1. Data Sensing

Each sensor continuously reads the concentration of gases (like CO, CO₂, NH₃), particulate matter (PM2.5, PM10), temperature, and humidity.

2. Data Processing

  • Arduino processes the raw values.
  • Using standard EPA formulas, it calculates the AQI for each pollutant.
  • The maximum AQI among CO, PM2.5, PM10 is selected as the overall AQI.

3. Display and Transmission

  • The AQI and sensor readings are shown on the LCD.
  • The same data is sent to a connected mobile device via Bluetooth.

4. Crowd-Sourcing Model

  • When many users deploy this system in different areas, a network of real-time AQI monitors is created.
  • This increases the spatial coverage and data accuracy of air quality reports.

5. Validation

The system's output was compared with official AQI data from the US Embassy in Islamabad and showed 99% accuracy.

Sample AQI Calculation

PollutantConcentrationAQI ValueAQI Category
PM2.5162 µg/m³212.5Very Unhealthy
PM10170 µg/m³108.4Unhealthy (Sensitive Groups)
CO0.32 ppm3.6Good
Overall AQI—212.4Very Unhealthy

Image


Methodology

Image

Image


Results & Analysis

Taken on 19th December, 2024 – 10:42 PM – Islamabad

ParameterValueAQI ValueHealth Impact
PM2.5162 µg/m³212.40Very Unhealthy
PM10170 µg/m³108.42Unhealthy (Sensitive)
CO0.32 ppm0Good
  • Our AQI: 212.40
  • Accuracy: 99% vs US Embassy AQI System

Image


Future Work

Image


Contributors

  • Awais Asghar
  • Muhammad Hammad Sarwar
  • Muhammad Ashar Javid
  • School of Electrical Engineering & Computer Science (SEECS), NUST

More in Embedded

Related projects

See all
  • Embedded2025

    FreeRTOS Smart Energy Monitor

    STM32F746 tasks compute Vrms, Irms and kWh; an ESP32 pushes it to a cloud dashboard.

    • STM32F746
    • FreeRTOS
    • ESP32
    • C/C++
  • Embedded2024

    Fully Automated Egg Incubator

    ATmega328P climate control and egg turning that hatched every pigeon egg in 18 days.

    • ATmega328P
    • Arduino IDE
    • Atmel Studio
    • Proteus
  • Embedded2024

    Smart Health Tracking System

    ECG, SpO₂, heart rate, temperature and fall detection on one wearable node.

    • Arduino UNO
    • C/C++
    • AD8232
    • MAX30100