Free tools Windows power users keep installed
One-click scans. No signup required.
The most useful ESP32 air-quality monitor combines a particulate-matter sensor, a true NDIR carbon-dioxide sensor, and temperature and humidity measurement. The ESP32 supplies processing, Wi-Fi, logging, dashboards, and alerts; it does not measure pollution by itself.
For construction teams, schools, workshops, and building managers, this type of system can reveal dust events, smoke intrusion, poor ventilation, and the effect of filtration. It is a monitoring and decision-support tool—not a replacement for certified carbon-monoxide alarms, radon testing, regulatory instruments, or professional industrial-hygiene equipment.
As an Amazon Associate I earn from qualifying purchases.
What an ESP32 air-quality system actually measures
“Air quality” is not one value. A complete design begins by deciding which pollutant or environmental condition matters.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →| Objective | Sensible minimum configuration |
|---|---|
| Ventilation in offices, classrooms, or site cabins | NDIR CO₂ plus temperature and relative humidity |
| Wildfire smoke, construction dust, cooking, candles, or filtration testing | PM2.5 sensor plus temperature and relative humidity |
| General indoor trend monitoring | PM sensor, NDIR CO₂, temperature, and humidity |
| VOC event detection | VOC/NOx index sensor, clearly labelled as a trend indicator |
| Regulatory, occupational, or compliance monitoring | Appropriate professional equipment, documented validation, and qualified interpretation |
Particulate sensors report particles such as PM1.0, PM2.5, PM4, or PM10, usually in µg/m³. PM2.5 is especially relevant to smoke and fine combustion particles; the EPA’s smoke guidance recommends looking for a sensor that measures it.
#1 Best Overall
- Powerful ESP-32 Board: Unlock the world of Internet of Things (IoT) and advanced electronics with the heart of this kit: the ESP-32 board. It features a powerful dual-core processor, integrated Wi-Fi and Bluetooth 4.2, making it perfect for building connected, smart devices that communicate with your phone or the cloud. It's fully compatible with the Arduino IDE for easy programming.
- Super Starter Kit: This kit contains over 35 different modules and electronic components, including sensors, displays, motors, and input devices. From LEDs and buttons to an OLED screen, servo motor, and keypad, you have everything needed to explore a vast range of projects in one box.
- Step by Step Online Tutorial: Jump right in with our detailed, beginner-friendly tutorial. Access 30+ projects with complete code, clear circuit diagrams, and step-by-step instructions. Learn the fundamentals of electronics, coding, and how to utilize the ESP-32's unique capabilities without any prior experience.
- Hands-on Learning for All Skill Levels: Perfect for students, makers, engineers, and hobbyists. Start with basic circuits and coding, then progress to intermediate and advanced IoT applications. Build practical projects like weather stations, smart home controllers, remote-controlled devices, and interactive gadgets. The skills you learn are the foundation for real-world innovation.
- Quality & Great Support: Elegoo is committed to quality. We provide a clear, detailed tutorial guide, refined code, and a well-organized component kit. All modules are carefully selected for reliability and ease of use. Our dedicated technical support team and active online community are ready to help you succeed in your learning journey.
CO₂ is mainly a ventilation and occupancy indicator. It is not a complete measure of indoor air quality: normal CO₂ does not prove that particles, carbon monoxide, radon, ozone, or VOCs are absent.
VOC sensors are useful for detecting changes caused by cleaning products, solvents, new materials, perfume, cooking, or other events. Their gas-resistance values or VOC indices generally do not identify a particular chemical or provide a laboratory-grade concentration. A temperature, humidity, and generic “gas” reading is therefore not a complete air-quality measurement.
Why use an ESP32?
An ESP32 development board is a practical host for this project because the family provides Wi-Fi and, on many variants, Bluetooth, together with I²C, UART, SPI, GPIO, and ADC interfaces. It has enough processing capacity for sensor polling, filtering, local displays, web pages, MQTT, Home Assistant integration, and data logging. Development can use Arduino-ESP32 or ESP-IDF.
“ESP32” is a family rather than one uniform board. ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C6, and ESP32-H2 boards differ in radio capability, USB behaviour, GPIO availability, power use, and software support. Choose the exact board before designing the wiring. The examples below use a conventional original ESP32 development board such as an ESP32-DevKitC-class board; verify the pin map for the specific board you own.
Three sensible system designs
1. PM-focused monitor
Use an ESP32, an SPS30-class PM sensor, a suitable 5-V supply, and an optional OLED display. This is appropriate for observing construction dust, smoke, cooking particles, candles, or air-cleaner performance. It does not measure CO₂ or gases.
2. Ventilation monitor
Use an ESP32, an SCD40/SCD41-class NDIR CO₂ sensor, and temperature and humidity measurement. This is a better design for meeting rooms, classrooms, offices, and site cabins where the question is whether fresh-air delivery is adequate.
3. General indoor monitor
For the most useful general-purpose build, combine:
- an ESP32 development board;
- a Sensirion SPS30 or comparable PM sensor;
- a Sensirion SCD40/SCD41 or comparable NDIR CO₂ sensor;
- temperature and humidity measurement;
- optional VOC/NOx trend sensing;
- local logging plus Wi-Fi, MQTT, or Home Assistant;
- an enclosure designed for airflow rather than a sealed project box.
An integrated module can shorten assembly. M5Stack documents an air-quality device combining a SEN55 and SCD40 for PM, VOC, temperature, humidity, and CO₂. It is easier to prototype, but separate sensors provide more control over airflow, heat, replacement, and enclosure layout. See the M5Stack documentation.
Choosing the sensors
PM: SPS30 as a reference choice
The Sensirion SPS30 uses laser scattering and provides PM1.0, PM2.5, PM4, and PM10 values. Its manufacturer lists a 0–1,000 µg/m³ mass-concentration range, ±10% mass-concentration precision specification, I²C and UART interfaces, a 4.5–5.5 V supply, 41 × 41 × 12 mm dimensions, and a stated lifetime of more than 10 years.
Those are manufacturer specifications, not a guarantee that a finished device will achieve the same performance. Particle composition, humidity, enclosure airflow, power quality, placement, contamination, and firmware all affect the assembled system.
Rank #2
- ESP32 camera board: Dual-core 32-bit microprocessor up to 240 MHz, 4 MB flash, 8 MB PSRAM, onboard 2.4 GHz Wi-Fi and Bluetooth 4.2 (LE), USB code uploader, camera, memory card slot (Comes with 1GB memory card and card reader)
- 3 sets of code: MicroPython, C and Processing (Java). Python is one of the most popular languages, and C is one of the most classic languages. Processing code needs to run on computers to provide graphical interfaces
- Detailed tutorial: Can be downloaded (in English, 795-page in total) or viewed online (original in English, can be translated into other languages by browsers) (The tutorial link can be found on the product box, no paper tutorial)
- 122 projects from simple to complex: Provides step-by-step guide with electronics and components knowledge, each project has schematics, wiring diagrams, complete code and detailed explanations
- 240 items in total: This ultimate kit includes the most commonly used electronic components, modules, sensors, wires and other compatible items
The SPS30’s supply requirement is especially important. Many ESP32 GPIOs are 3.3-V only. Confirm whether the particular SPS30 breakout includes level shifting and appropriate pull-ups before connecting it directly to an ESP32. A bare sensor, a manufacturer breakout, and a third-party breakout may not have identical electrical arrangements.
CO₂: choose NDIR when ventilation matters
A true NDIR sensor measures CO₂ using infrared absorption and is the appropriate category for ventilation-oriented monitoring. The SCD40/SCD41 family is a common ESP32-compatible option; consult Sensirion’s CO₂ documentation for the exact device and operating requirements.
Do not confuse direct NDIR CO₂ with eCO₂. eCO₂ is an estimate inferred from a gas or VOC sensor and is not equivalent to direct CO₂ measurement. An ESP32 CO₂ or Zigbee endpoint is only a data interface: it does not turn the controller into a CO₂ sensor. Espressif documents the communication endpoint here.
CO₂ results can be affected by baseline assumptions, automatic self-calibration, warm-up time, nearby breathing, heat from the regulator, and placement beside a door, window, fan, or ventilation outlet.
VOC and gas sensors
The Bosch BME680 provides temperature, humidity, pressure, and gas resistance. Bosch software can derive an indoor-air-quality estimate, but raw gas resistance is not a calibrated concentration of a particular VOC. The BME680 product documentation should be read with that distinction in mind.
Use wording such as “VOC trend” or “VOC index,” not “the amount of toxic gas.” Do not claim that a BME680, BME688, SGP40, or similar device detects every harmful gas, identifies formaldehyde or benzene individually, or proves that an air sample is safe.
Pollutants requiring separate equipment
Carbon monoxide requires a dedicated, certified alarm. Ozone, nitrogen dioxide, sulfur dioxide, formaldehyde, and radon are separate sensing problems with different technologies, interference risks, and validation requirements. A low PM or CO₂ reading does not establish that any of these pollutants are absent.
Hardware architecture and wiring
Use the exact board and breakout documentation as the wiring authority. A representative architecture is:
- I²C: connect the SCD40/SCD41 and any I²C environmental sensor to the ESP32’s documented SDA and SCL pins, with a common ground.
- UART: connect the PM sensor’s TX to the ESP32’s RX and the PM sensor’s RX to the ESP32’s TX, subject to the sensor’s logic-level requirements.
- Power: supply each module at the voltage specified by its manufacturer or breakout vendor.
- Ground: connect all modules to a common ground.
- Pull-ups: check the total I²C pull-up arrangement. Multiple breakout boards can create excessive or incompatible pull-ups.
- Current: allow for the PM sensor’s fan or laser assembly. Do not assume that a USB supply capable of powering the ESP32 alone is sufficient for every attached sensor.
On a typical original ESP32 board, GPIO21 and GPIO22 are commonly used for I²C SDA and SCL, but this is not a universal rule. UART pins may also be reserved for USB serial, boot messages, flash, PSRAM, or other board functions. Confirm the exact board’s pin map before assigning them.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errorsSome sensors may require 5 V for power while using 3.3-V logic; others may not. Never assume that a 5-V output is safe for an ESP32 GPIO. Check the schematic or datasheet for the specific module.
Rank #3
- Perfect choice for beginners to learn, electronics and program.
- The Basic Starter Kit is easy to use and you can learn to program at an introductory level.
- You can use ESP32 modules to control other modules, such as LED,DHT11,OLED module, etc
- The tutorial include codes and lessons.It will teach every users how to assembly Basic Starter Kit for ESP32.
- Please download our tutorial and learn after you receive the goods.
Airflow and enclosure design
A sensor cannot measure room air correctly if its inlet is blocked, its outlet recirculates into its inlet, or it is sealed in a box. Provide a deliberate inlet and outlet path, protect the opening from dust blockage, and prevent the PM sensor from drawing air across a hot regulator, display, charging circuit, or ESP32 module.
Separate heat-producing electronics from temperature, humidity, CO₂, and VOC sensors. Avoid condensation. High relative humidity can change the optical response of PM sensors by changing apparent particle size; serious deployments may require correction validated against a reference.
Mount the device where its readings represent the question being asked. A monitor beside a purifier outlet, open window, extractor fan, or worker’s face may measure a local plume rather than room-average conditions. For construction or renovation work, distinguish background room monitoring from near-source dust monitoring; they answer different questions.
Recommended Free Tools
Firmware structure
A reliable implementation should be built incrementally:
- Install the current Arduino-ESP32 package or use ESP-IDF, then select the exact board variant. Espressif’s installation guidance and board documentation change over time, so record the package version used for a published build.
- Verify serial upload and logging.
- Scan and test the I²C bus with one sensor.
- Test the PM sensor independently over UART or I²C.
- Test CO₂ and environmental sensors independently.
- Add warm-up handling, timestamps, and sensor-status reporting.
- Add filtering and local display.
- Add Wi-Fi, MQTT, Home Assistant, or a local web endpoint.
- Add reconnection and offline buffering.
- Validate the complete enclosure before interpreting the readings.
Each sensor has its own measurement cycle. Do not poll every device at the same interval or treat every value immediately after boot as valid. Record raw values, processed values, timestamps, error codes, and whether the sensor is warming up, stale, disconnected, saturated, or otherwise invalid.
A moving average can make a display easier to read; a median filter can reduce isolated spikes. Keep the raw data so that filtering can be changed later. Wi-Fi reconnection must not block sensor acquisition indefinitely. When the network fails, continue sampling and buffer data locally if the deployment requires continuity.
Use NTP only after network time is available. Until then, mark timestamps as unsynchronised rather than presenting an invented time. Do not hard-code Wi-Fi credentials in publicly shared firmware. OTA updates are convenient, but provide a recovery method before deploying them remotely.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteData format and display
A useful record might contain:
timestamp_utc
pm1_0_ug_m3
pm2_5_ug_m3
pm10_ug_m3
co2_ppm
temperature_c
relative_humidity_percent
voc_index_or_gas_resistance
sensor_status
wifi_rssi
firmware_version
The status field is as important as the number. A value collected during warm-up, after a communication failure, or while a sensor reports an error should not silently appear as normal data.
Prefer a dashboard that shows pollutant-specific values, units, time trends, and data-quality indicators. A local OLED is useful for immediate feedback, while MQTT or Home Assistant is useful for historical graphs and alerts. Attractive charts should not hide missing data, stale readings, or uncertainty.
Calibration and validation
Calibration is more than adding a fixed offset. The EPA Air Sensor Guidebook recommends considering calibration, drift, precision, bias, interference, environmental conditions, and collocation. A correction that works in one room, season, humidity range, or particle environment may not work elsewhere.
Rank #4
- COMPREHENSIVE STARTER KIT: Includes an ESP32 development board and over 20 different types of electronic components and modules. This complete set provides everything you need to start learning electronics and building Internet of Things (IoT) projects, all organized in a convenient plastic storage case.
- POWERFUL ESP32 MICROCONTROLLER: Features a versatile ESP32 development board with an integrated dual-core CPU, Wi-Fi, and Bluetooth connectivity. This board serves as the core of your projects, enabling wireless communication and control for a wide range of applications from home automation to robotics.
- DIVERSE SENSORS AND MODULES: Explore your environment with a variety of included sensors. The kit contains a DHT11 temperature and humidity sensor, HC-SR501 PIR motion sensor, an IR infrared obstacle avoidance sensor, and a photoresistor light detection module for creating responsive, intelligent devices.
- INPUTS, OUTPUTS, AND CONTROL: Features an I2C OLED display for showing data, a 2-channel 5V relay module for controlling high-power devices (rated 10A 250VAC / 15A 125VAC), active and passive buzzers for audio feedback, various color LEDs, push buttons, and a potentiometer for precise analog input.
- PROTOTYPING ESSENTIALS INCLUDED: Get building right away with an 830-tie-point solderless breadboard, a bundle of male-to-male jumper wires, a USB cable for power and programming the ESP32 board, and a variety of common resistors. The kit is perfect for both beginners and experienced makers.
A practical validation process is:
- Finish the enclosure and wiring before testing.
- Allow the device to stabilise according to the sensor documentation.
- Place it next to a trusted or professionally evaluated reference monitor.
- Keep both inlets at approximately the same height and airflow.
- Collect data during low, moderate, and elevated conditions where safely possible.
- Record temperature and humidity alongside pollutant values.
- Compare offset, trend, response time, repeatability, and missing data—not only one average.
- Repeat in other rooms or seasons if the device will be used broadly.
- Document any correction equation and the conditions under which it was derived.
- Recheck after sensor replacement, enclosure changes, firmware changes, or long operation.
For PM2.5 performance evaluation, EPA guidance discusses placing sensors within 20 metres horizontally of a reference monitor, keeping the sampling inlet within ±1 metre of the reference inlet, maintaining unrestricted airflow, and separating identical sensors by about 1 metre when evaluating repeatability. These are evaluation recommendations, not universal indoor installation rules. See the EPA performance-testing FAQ.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Do not claim that a factory calibration makes the finished enclosure regulatory-grade, that one side-by-side comparison proves accuracy everywhere, or that a software offset removes humidity, aerosol-composition, ageing, and placement effects.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.How to interpret the readings
CO₂
Use CO₂ primarily as an indicator of ventilation and occupancy-related accumulation. A rising trend during a meeting may suggest that outdoor-air delivery is insufficient for the occupancy and conditions. It does not diagnose all indoor-air problems and should not be converted into a universal health verdict without considering the sensor, averaging period, room use, and local guidance.
PM2.5 and PM10
PM readings are useful for identifying particle events, comparing rooms, evaluating filtration, and observing smoke or dust trends. A construction site may produce highly localised plumes, so one wall-mounted monitor cannot represent every work area or exposure zone.
VOC index or gas resistance
Treat a sudden change as an event signal. Investigate cleaning products, solvents, paint, adhesives, new furnishings, cooking, perfume, or humidity changes rather than assigning the reading to a specific chemical.
Scores and AQI
Be cautious with a single green/yellow/red “air-quality score.” AQI systems are jurisdiction-specific, pollutant-specific, breakpoint-based, and dependent on averaging periods. A DIY sensor may not meet the accuracy or averaging requirements assumed by an official AQI. The EPA notes that low-cost monitors vary in accuracy and precision, and that widely accepted indoor concentration limits do not exist for most pollutants.
If you display an AQI, identify the jurisdiction, pollutant, averaging period, breakpoint table, and calculation version. Otherwise, display the measured pollutant, unit, trend, timestamp, and project-defined alert status instead. Do not combine PM, CO₂, VOC, humidity, and temperature into an unsupported health score.
Common failure modes
Sensor not found
Check power, common ground, SDA/SCL orientation, address conflicts, pull-ups, and the sensor’s required startup time. Two I²C devices may share a default address; change one address if supported, use an I²C multiplexer, move one device to UART, or use separate buses where the board and framework support them.
UART data is corrupt or absent
Swap TX and RX if necessary, verify baud rate and frame settings, check voltage levels, confirm that the chosen UART pins are available, and ensure that USB serial or boot functions are not using the same pins.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →Unexpectedly high PM
Check for dust inside the enclosure, a blocked outlet, recirculation, a nearby source, a purifier plume, condensation, high humidity, or a hot component affecting airflow. Compare with a second device or reference before concluding that the entire room has the reported concentration.
Best Value
- ESP32-S3 camera board: Dual-core 32-bit microprocessor up to 240 MHz, 8 MB flash, 8 MB PSRAM, onboard 2.4 GHz Wi-Fi and Bluetooth 5 (LE), USB-OTG, USB code uploader, camera, memory card slot (Comes with 1GB memory card and card reader)
- 3 sets of code: MicroPython, C and Processing (Java). Python is one of the most popular languages, and C is one of the most classic languages. Processing code needs to run on computers to provide graphical interfaces
- Detailed tutorial: Can be downloaded (in English, 828-page in total) or viewed online (original in English, can be translated into other languages by browsers) (The tutorial link can be found on the product box, no paper tutorial)
- 121 projects from simple to complex: Provides step-by-step guide with electronics and components knowledge, each project has schematics, wiring diagrams, complete code and detailed explanations
- 243 items in total: This ultimate kit includes the most commonly used electronic components, modules, sensors, wires and other compatible items
VOC spikes
Look for solvents, alcohol, sanitiser, cleaning products, fragrances, cooking, new materials, and humidity changes. A spike is not proof of a particular toxic compound.
CO₂ values seem wrong
Allow warm-up, check placement and heat, investigate baseline or automatic-calibration behaviour, and avoid placing the inlet directly in an exhaled breath stream. Confirm that the sensor is a true NDIR device rather than an eCO₂ estimator.
Wi-Fi drops out
Continue sensor acquisition while offline, time out connection attempts, reconnect periodically, buffer records locally, and expose network status in the data. A monitor that stops sampling whenever the router fails is not robust.
Recommended Free Tools
Power and deployment
Continuous wall power is usually simpler for a Wi-Fi-connected PM monitor. PM sensors often contain a fan or laser assembly and use substantially more power than a small I²C sensor. Battery operation requires duty-cycling, a suitable regulator, startup and warm-up planning, battery-capacity calculations, and a decision about whether intermittent measurements are acceptable.
For an unattended installation, protect the electronics from dust and moisture while preserving the sensor’s intended airflow. A weatherproof box that blocks air is not a valid enclosure. Avoid condensation and do not place a hobby monitor where it could be damaged by site activity or mistaken for a safety alarm.
DIY system versus a commercial monitor
DIY is strongest when you need repairability, data ownership, custom dashboards, multiple rooms, unusual sensor placement, or integration with existing building systems. It also lets you replace an individual sensor and inspect the raw data.
A commercial product is usually better when you need a finished enclosure, warranty, built-in display, mobile application, simple installation, or documented third-party evaluation. It may also be preferable when staff cannot maintain firmware, networking, power, and calibration.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Do not choose a product solely because it displays one attractive air-quality number. Compare which pollutants it actually measures, whether CO₂ is direct NDIR or estimated, how readings are validated, what data are retained, and whether the device provides status and uncertainty information. The EPA does not endorse specific low-cost indoor monitors.
Safety limits
An ESP32 monitor must not replace smoke alarms, certified carbon-monoxide alarms, radon testing, regulatory monitors, exposure-control procedures, or professional industrial-hygiene instruments. It can show trends and help investigate ventilation, dust, smoke, or filtration, but a low reading does not prove that a space is safe and a high reading does not by itself identify the source or required legal response.
For a serious indoor build, the best general recommendation is an ESP32 with an SPS30-class PM sensor, an SCD40/SCD41-class NDIR CO₂ sensor, temperature and humidity measurement, local logging, and clearly labelled pollutant-specific data. Validate the complete assembled device, design the enclosure around airflow and heat, and report sensor status alongside every measurement.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




