Air Quality Monitor

Remix / design of Tom's design.
13
21
0
1309
updated December 22, 2024

Description

PDF

After I saw the Air Quality Monitor made by Thomas Sanladerer (Made with Layers), I decided to also make one, but slightly different.


I used the following components:
A 2.4" TFT screen, a "D1 Mini" ESP8266 clone, a SCD40 sensor for CO2, Temperature and Humidity, a SGP30 sensor for TVOC and a PMS5003 air particle counter.
I also remixed his enclosure to accommodate my screen and components.
On the rear is a switch to "blank" the screen and instead of logging the measurements in "Home Assistant", I transmit it via MQTT -> Node-RED to Grafana, since I already have that setup for other things.

Everything is soldered onto some project board, not as professional as Tom's but it works for me. ;)

The Arduino Sketch is mostly code from the various library examples and some of my own amateurish wisdom.
I am not a programmer of any sorts, and can only copy and paste from existing code, and mix it up until it does what I want it to, not always in a logic way.
There is a lot of unnecessary code floating around, please clean it up as required.

If you use the code files attached here, you must rename all files ending with “.h.txt” to end with only “.h” , or else just download the files from the link to Google Drive.

Very important!! 

Disconnect PMS5003 before downloading sketch. PMS5003 uses Rx pin which interact with serial comms.!!!
 

PLEASE suggest ways to improve it, in that way I may learn something.

My idea of the "air quality index" indicator, is a combination of the particle levels, CO2 level and TVOC.
The picture of the screen showing a "green" quality index, is edited. 
The CO2 did not go below 400 in my room while putting this together, but it will show the correct index if the CO2 and the other factors are within the correct limits.

For my application, I only use the Tx pin on the PMS5003.

I extended the "D1 Mini" USB connection to the outside of the enclosure with a USB-Mini breakout board.

The PLA I used (some very old, opened "Marble PLA") did not print very nice, so my enclosure looks like, well ..... not so good.

My Arduino code and other files: https://drive.google.com/drive/folders/1cVmqqO9nQIcPC_xsrk5Gso6tvhecS2ev?usp=sharing

Tom's project: https://www.youtube.com/watch?v=OzFAtCZh_fM
PMS5003 example: https://how2electronics.com/interfacing-pms5003-air-quality-sensor-arduino/
Some very good info on Air Quality sensors: https://dronebotworkshop.com/air-quality/

Model origin

The author remixed this model.

Differences of the remix compared to the original

Used smaller screen and different components.

License