CO2-meter: from prototype to meter-in-a-box

I spent too much time in too small, too busy meeting rooms, discussing about who knows what and too many times I felt the oxygen was letting me down. Was there too little oxygen? Or too much carbon dioxide? Or still something else? Time to find out and build my own CO₂-meter.

On Sparkfun I found a CCS811 air quality sensor on a breakout board. It can not only measure the carbon dioxide (CO2) level in the air but also the level of so-called total volatile organic compounds (TVOC). It has an I2C interface, so you must use it in conjunction with a microcontroller. But the CCS811 is a wonder on its own, because it contains a microcontroller in itself to pre-process the data. The catch is, that the CCS811 can only tell the CO₂ and TVOC by any accuracy when you tell it the temperature and humidity.

So we need a second sensor in order to find out temperature and humidity and Sparkfun has a solution for that too: the BME280, which not only measures temperature and humidity, but also air pressure. This one is also available on a breakout board and also uses a I2C interface. As a matter of fact, the wires of the two sensors can be connected in parallel on the I2C interface. The can be distinguished because they use a different address on the bus!

What else to throw in? An ATMEGA328 microcontroller, a 36 mm, 128×128 TFT display based on the ST7735 and a project box! The display was lying around in one of my drawers and Adafruit supplies drivers for it.

In the next steppenplan I will describe how I started this project with an Arduino Uno, then got rid of all the unnecessary stuff on an Arduino and moved to just the ATMEGA on a pcb.”