Back to Portfolio
Live in ProductionEnvironment / Smart City
🌬️

IoT Environmental Air Quality Monitoring Network — Smart City Pollution Tracking

A 150-node air quality monitoring network deployed across a metropolitan city — providing real-time PM2.5, CO2, and NO2 data on a public AQI map and enabling data-driven traffic policy decisions.

150
Nodes
City-wide
Coverage
5 min
Update

⚠The Problem

A city of 3 million people had 3 reference-grade air quality monitoring stations — installed decades ago, each costing $500K. Coverage was insufficient to identify pollution hotspots at the neighborhood level. Traffic planners, health officials, and the public had no real-time data. The city's asthma hospitalization rate was 40% above the national average, with no data to investigate correlations with pollution events.

💡Our Solution

We deployed 150 ESP32-based air quality nodes on street furniture (lamp posts, bus stops) across the city, each measuring PM2.5, PM10, CO2, NO2, CO, temperature, and humidity every 5 minutes. Nodes communicate via LoRaWAN to 12 gateways (existing TTN infrastructure). AWS IoT Core routes data to InfluxDB. A Lambda calculates AQI using the EPA formula and flags AQI > 150 as unhealthy — triggering automated alerts to the health department. The public Mapbox dashboard is available on the city website, showing real-time AQI heatmaps. Data is published as a public API, enabling integration with health apps and research.

🔗System Architecture

ESP32 Nodes (LoRa) → TTN Gateways → AWS IoT Core → InfluxDB → Lambda (AQI) → Public React Map

Tech Stack

Hardware
  • ESP32 with LoRa module
  • PMS5003 PM2.5/PM10 sensor
  • MH-Z19B CO2 sensor
  • MICS-6814 (CO, NO2, NH3)
  • BME280 (temperature, humidity, pressure)
  • Solar + supercapacitor power system
Communication
  • LoRaWAN (city-wide coverage)
  • MQTT to AWS IoT Core
  • 4G backup for critical nodes
Cloud
  • AWS IoT Core
  • InfluxDB (sensor time-series)
  • Lambda (AQI calculation)
  • S3 (public data export)
Frontend
  • Public React AQI map (Mapbox)
  • Government admin dashboard
  • Public API for third-party apps

Key Features

Real-time AQI heatmap across 150 monitoring nodes
PM2.5, PM10, CO2, NO2, CO, temperature, humidity
Health alert notifications when AQI exceeds thresholds
Pollution source correlation with traffic and weather data
Public API for research and third-party app integration
Historical AQI trend analysis per neighborhood
Regulatory compliance export (EPA format)
Annual pollution report generation

Results Delivered

  • 150 monitoring nodes providing 50× denser coverage vs. reference stations
  • Pollution hotspots identified in 3 industrial zones (actionable for city planners)
  • Traffic rerouting pilot launched in high-pollution corridor
  • Data used in 2 peer-reviewed public health research papers
  • Public dashboard receives 25,000 unique visitors/month

Technologies

ESP32LoRaWANPM2.5 SensorReactMapboxAWS IoTAQI

Who This Is For

Municipal governments, environmental agencies, smart city operators, industrial zone regulators

Need a similar solution?

We've built production IoT systems like this across 15+ countries. Let's talk about yours.

Frequently Asked Questions

What technology does this iot environmental air quality monitoring use?+

IoT Environmental Air Quality Monitoring Network — Smart City Pollution Tracking is built on ESP32, LoRaWAN, PM2.5 Sensor, React, Mapbox. The stack was chosen for real-world reliability in a production deployment — full details are in the tech stack section.

Can CodeCaracal build a similar system for us?+

Yes. The same team that designed and deployed this environment / smart city system takes on new projects across the stack — firmware, connectivity, cloud and dashboards. Tell us your requirements and we will architect a solution for your environment.

Is this case study a real deployed system?+

Yes — every case study on this site describes a production system we designed and shipped. The problem, architecture, features and metrics are from the actual deployment.

Let's Build Together

Got an IoT challenge?
We've shipped it.

Whether you need a fleet to track, a factory to monitor, or a farm to automate — our team has done it before and we'd love to build it with you. Typical response time: under 24 hours.

No upfront commitment99.9% uptime SLANDA on requestFixed-price options