Wesley Elfring's AirQuality V3 Is a Low-Cost Broad-Function Do-It-Yourself MQTT Air Quality Monitor

Talking MQTT to a Home Assistant server, this multi-function sensor can track everything from nitric oxide pollution to light levels.

Self-described "hobby programmer" Wesley Elfring is working on a homebrew air quality sensor built around an Espressif ESP32-S3 microcontroller and modular sensors — having found off-the-shelf equivalents wanting in price or functionality.

"The AirQuality V3 is an air quality sensor made from scratch," Elfring explains of his project. "I wanted a cheaper sensor than the commercially available options, but more capabilities than the open source options like AirGradient. It also gave me a good project to continue on my journey to learn more on developing electronics and embedded software."

If you want a wealth of data about your air quality, the AirQuality V3 project can deliver — for under $60 in parts. (📷: Wesley Elfring)

The AirQuality V3 board itself is designed as a carrier for an Espressif ESP32-S3 module, which provides both the driving logic and its Wi-Fi connectivity. To this, a number of sensors can be added: a Sensirion SGP41 gas sensor for nitric oxide (NOx) and volatile organic compound (VOC) measurements; a SenseAir S8 for carbon dioxide (COâ‚‚) measurement; a Plantower PMS5003 for particulate matter measurement, with readings for PM1.0, PM2.5, and PM10; a Bosch Sensortec BME280 combined temperature, humidity, and barometric pressure sensor; and a Vishay VEML7700 to measure ambient light levels.

"The sensor periodically polls the sensors (as per the datasheets) and publishes the new values to a MQTT topic," Elfring explains of the device's operation. "Home Assistant is then able to pick up the values automatically trough auto-discovery. OTA updates and configuration is supported through a web interface.

The sensor reports readings for a variety of pollutants and environmental metrics, and calculates an overall air quality level. (📷: Wesley Elfring)

"[The] cost for all components for a single board is about $53. [The] most expensive components are the PMS5003 ($17), SenseAir S8 ($18), the SGP41 gas sensor ($7) and the ESP32-S3 ($4.7). The four-layer PCB itself strongly depends on how many you order, but is around $4 per PCB, bringing the total cost per Air Quality sensor to $57."

Elfring has released design files and source code for the project, under an unspecified open source license, on GitHub.

ghalfacree

Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.

Latest Articles