A touchscreen CO₂, PM 2.5 dust (particulate matter) monitor. Adaptive histogram function covers up to a day of data per sensor.
A touchscreen CO₂, particulate and comfort monitor, adapted from an ESP32-S3 design onto a plain ESP32 DevKit. Three sensors, two buses, no buttons anywhere on it. Most of the work turned out to be neither the wiring nor the drivers, but what a small screen should say when a sensor goes quiet — and how to draw a whole day of history across a hundred pixels.
The hardware: Figure 2. The whole thing, abbreviated. Decoupling, the indicator LEDs and the backlight transistor are left out.
Two buses do all the work. Everything that measures is on I²C at 100 kHz; everything you look at or touch is on VSPI. The touch controller shares the display’s bus, which is convenient but means the two have to take turns — more on that later.
Figure 3. The prototype: DevKit and display on the left, the two sensor groups wired out on the right.
The sensors:
Particulates — Bosch BMV080
This is the expensive part, at around $41, and the reason the project is interesting. It is the smallest particulate sensor available and, unlike the PMSA003 that these builds used to rely on, it has no fan — no moving parts, no filter to clog, and no noise. It is specified for PM2.5; the PM1 and PM10 figures come out of the same optical measurement as derived values, which is worth remembering before reading too much into them. CO₂ — Sensirion STCC4
Thermal conductivity rather than NDIR, physically tiny, and remarkably frugal: a fraction of a milliwatt in the duty-cycled mode used here. It answers at 0x64 by default, or 0x65 if you strap it the other way.
Temperature and humidity — Sensirion SHT40
What it shows:
The touch panel earns its place here. A short tap in the top-right corner cycles between three layouts, and the choice survives a power cut.
Dashboard is closest to the original: one large CO₂ figure inside a coloured arc, the three particulate readings beside it, temperature and humidity underneath. The arc is banded by the same thresholds as the number, so it goes green, yellow, orange as the room fills up.
Histogram 1 and 2 trade the arc for history. Each reading gets its own strip: name and unit on the left, the current value beside them, the chart across the middle, and the window’s minimum and maximum on the right. Histogram 1 carries all six readings, Histogram 2 drops to four and gives each one more room.
Figure 6. Histogram 1 in bar style — all six readings at once. Each bar is coloured by its own band, so the temperature trace runs orange through yellow to green as the room cooled overnight. Minimum and maximum for the window sit on the right; the header gives its length, here just under fourteen hours.
Figure 7. The touch zones. Coordinates are display pixels on the 320 × 240 panel; the board paints this same map over its calibration points at first boot.
See the full article under the software section below: 702 - Air_Quality_Meter_Article_rev01.pdf
Note 1 (18 Aug. 2026): KiCad schematic + board and Arduino code available upon request.
Want to build a project?
Bring your design to life with the Elektor PCB Service, powered by Eurocircuits. Upload the project files and order professionally manufactured PCBs or assembled boards through a proven European production platform.
Supporting KiCad, Eagle, Gerber, and ODB++ formats, the service is suitable for everything from prototypes and validation builds to series production and volume manufacturing.
Elektor Magazine is al 65 jaar een van de toonaangevende informatiebronnen op het gebied van elektronica voor ingenieurs, ontwerpers, start-ups en bedrijven. Ons magazine wordt ondersteund door een actieve community van elektronica-ingenieurs – van studenten tot professionals – die gepassioneerd zijn over het ontwerpen en delen van innovatieve ideeën.
Voor hen publiceren we jaarlijks honderden items in verschillende formats, zoals artikelen, video’s, webinars en andere leervormen. Onze missie is om kennis op elke mogelijke manier te delen en lezers te inspireren met de nieuwste ontwikkelingen binnen de elektrotechnische sector.
Bedankt voor uw beoordeling!
Voeg hieronder eventueel commentaar toe!
Bedankt voor uw beoordeling!
Reactie bij uw beoordeling plaatsen? Log hieronder in. Geen behoefte aan? Sluit dan gewoon dit venster.
Discussie (0 opmerking(en))