Measuring Air Quality in your Home Office

Measure Air Quality in your Home Office with Home Assistant

Measuring Air Quality in your Home Office
Air quality measuring in my Home Office with Home Assistant

I am working from home and I am fortunate enough to have a dedicated room for my home office. Speaking of fortunate, we have beautiful trees in our street where birds and the local Cologne parrots hang out. But trees leave leaves. ???

So, I have to share my home office with coworkers which are quite noisy:

Man, these parrots are loud. Good thing they are not that often around and mostly in the morning. Just a few of them are fine as well. But sometimes they come here in hundreds.

And then there is the leaf blower guy. He works hard. All, day. The constant on and off from that motor leaf blower drives me nuts. Also, it is kinda hard to understand my teammates when we have an online meeting or a pair programming session.

So I often close the window in my room. The door is mostly closed as well since my girlfriend is working from home part-time as well.

That leaves about 14 square meters times 2.5 meters of air for me to breathe in. That is gone faster than you think and leaves me in a tired and unconcentrated state. Just because I forget to open the window from time to time.

Solution - Measuring the CO2 Level

After watching Jeff Geerlings's video about the AirGradient DIY kit I needed to have one myself to measure the CO2 level in my room.

After waiting a few weeks for shipping I was ready to solder this guy.

Running the software - Home Assistant and ESPHome

My goals for this project:

  1. Measure CO2 level in my office
  2. Find a threshold that indicates bad air quality
  3. Let a Google Home yell at me to open a windows

Let's start with the ESPHome config. This can be found in my GitHub repository. I created this with a small tutorial to make it easier to get going with this sensor. Feedback is welcome!

GitHub - ajfriesen/ESPHome-AirGradient: ESPHome config for AirGradient Air Quality Sensor
ESPHome config for AirGradient Air Quality Sensor. Contribute to ajfriesen/ESPHome-AirGradient development by creating an account on GitHub.

Using Air Quality Data

So, after following the tutorial of my GitHub repository we have the data in Home Assistant. Now what?

Dashboard showing temperature, humidity, and CO2 level
Air Quality data in Home Assistant for my Office(nice)

What does 669 mean? When shall I let my Google Home yell at me to open the windows?

There are several resources for that matter. AirGradient got you covered as well with a good article: Classroom and indoor CO2 Standards compared; A Look around the World

In general, it looks like this: Everything  >1000 ppm CO2 is not good. That is also the value I settled for.
So I set up the automation and waited. After a while, my Google Home started to yell at me.

Just for completion here is the automation which I have set up via the GUI.

- id: '1635852166818'
  alias: Benachrichtigung über zu viel CO2 im Arbeitszimmer
  description: ''
  - type: carbon_dioxide
    platform: device
    device_id: 4fed5e07a00a5bb5df7c326ad6a8414a
    entity_id: sensor.senseair_co2_value_2
    domain: sensor
    above: 1000
  condition: []
  - service: tts.google_translate_say
      entity_id: media_player.arbeitszimmer
      message: Lüfte mal. Hier riecht es wie im Pumakäfig!
      language: de
  mode: single


Just out of curiosity I asked my girlfriend to make a real live test when the sensor was around 1500 ppm. When she entered the room she immediately left again. I think English speakers say something like this:

It smells like dead people in here!

As long as you sit in the same room you will not recognize the bad air quality that much. It is like leaving a room full of people for a bathroom break. Only then does it hit you how bad the air is inside.

But still, concentration and mood will be affected. Some people get headaches as well.

So the last few weeks Google Home will tell me to open the window and I am less likely in a tired and unconcentrated mood. This is especially useful when you are in the zone for too long. Get up and open the window for a few minutes.

If you find this interesting hit subscribe and do not miss any updates on my shenanigans. Feel free to share this with your friends as well.

Have a great day!