Automate your home to keep your indoor air safe

darkpicnic1 pts0 comments

Automate your home to keep your indoor air safe · HIGHLY PROBABLE

Recently, I woke up to my indoor air quality being surprisingly awful. I could see that it spiked around midnight while my family and I slept. Quickly I realized our ERV unit kicked on in the middle of the night and was pumping outside air filled with wildfire smoke into our house.

Let’s solve this problem with Home Assistant automations and some commodity hardware.

Hardware

My HVAC system is a fairly new heat pump-based A/C & furnace combo. I like it for the most part, but the thermostat is typical proprietary garbage. For instance, the thermometer on the main outdoor unit is off by upwards of 20º because it gets hit with direct sunlight. It also fails to factor in outside humidity when calculating many of its automations.

I also have an ERV unit to bring in outside air. If you’re not familiar with HRV/ERV units, they are air exchangers that act as “lungs” for your modern house. Newer houses are tightly sealed —which is great for energy conservation— and do not pull in fresh air as well as drafty old houses. This leads to stale air and CO2 build up. ERVs are particulary good in cold climates since you can bring in fresh air without opening your windows directly, flooding your home with sub-zero temperatures.

Air quality is checked with my indoor and outdoor AirGradient sensors. These devices are fantastic (and highly recommended!), but if you want to save money you can get less precise air quality readings by using an open weather API.

Lastly, I built a Corsi-Rosenthal Box to cheaply and quickly clean the indoor air when it gets bad. When I first heard about these, I dismissed them thinking they were some kind of viral nonsense that feels good but does nothing. I was very wrong. They work really well.

Setup the automations

We’ll create three automations:

Toggle the ERV on or off depending on air quality outside

Toggle the CR Box on or off depending on air quality inside

Signal to the household the state of the air through a color-enabled light

Automation #1: Toggling the ERV

Originally I planned on allowing Home Assistant to control the ERV directly. This would let me do things like temporarily run the ERV on High so I could get the air in the house cycled quickly. Unfortunately, this ran into issues with the thermostat that came with my HVAC. My options were to either completely remove the ERV from the HVAC system and fully control it with Home Assistant or partially integrate it and have issues where it collides with the thermostat programming. None of these seemed appealing. I instead opted for something far simpler: kill the power if the air quality goes bad .

These devices from IKEA are cheap and work well with Home Assistant and Zigbee. When the automation senses the µg/m³ is higher than healthy for more than 30 minutes, it simply switches off the ERV at the power source.

✍️A note on air quality units

You’ll more often see air quality measured as AQI, especially when presented in mainstream media. This is a unit that represents air quality averaged over time, which is useful when thinking about air quality “for today”, but less useful when thinking about air quality “right now”. µg/m³ is the unit most sensors use to measure real-time air quality and I’ve moved all my automations to using it.

When the air quality improves, the ERV power comes back on. Here’s the automation to turn off the ERV:

alias: Turn off ERV on high PM2.5<br>triggers:<br>- trigger: numeric_state<br>entity_id: sensor.front_porch_airgradient_open_air_pm2_5<br>above: 35.4<br>for:<br>minutes: 30<br>conditions:<br>- condition: state<br>entity_id: switch.furnace_room_erv_shutoff<br>state: 'on'<br>actions:<br>- action: switch.turn_off<br>target:<br>entity_id: switch.furnace_room_erv_shutoff<br>- action: notify.mobile_app_sebs_iphone<br>metadata: {}<br>data:<br>message: >-<br>ERV disabled — outdoor PM2.5 at {{<br>states('sensor.front_porch_airgradient_open_air_pm2_5') }} µg/m³<br>mode: single

The inverted automation to turn it back on:

alias: Turn on ERV when PM2.5 recovers<br>triggers:<br>- trigger: numeric_state<br>entity_id: sensor.front_porch_airgradient_open_air_pm2_5<br>below: 25<br>for:<br>minutes: 60<br>conditions:<br>- condition: state<br>entity_id: switch.furnace_room_erv_shutoff<br>state: 'off'<br>actions:<br>- action: switch.turn_on<br>target:<br>entity_id: switch.furnace_room_erv_shutoff<br>- action: notify.mobile_app_sebs_iphone<br>metadata: {}<br>data:<br>message: >-<br>ERV re-enabled — outdoor PM2.5 at {{<br>states('sensor.front_porch_airgradient_open_air_pm2_5') }} µg/m³<br>mode: single

Automation #2: Toggling the CR Box

Our second automation is essentially the same as our first, just inverted. Our CR Box stays off until needed, then turns on full blast when the indoor air quality drops.

I keep my CR Box in the basement. It would be far better for me to keep it on the main floor to pull the upstairs and basement air more uniformly, but it’s far too big —and ugly— to leave out when it’s not in use. However, the results are still fantastic. In my 1800 sq...

quality home indoor automation entity_id switch

Related Articles