Home Assistant and air quality – Ikea Vindstyrka
The problem
I’d like to monitor air quality in my kitchen/dining room to ventilate the rooms more frequently. Sometimes I simply forget to open windows.
But again, there is no problem really. I just like to play with IoT gadgets and spend money on something else than drugs.
The ‘solution’
So I did a little ‘research’ on cheap air quality sensors and then decided to buy Ikea’s Vindstyrka (zigbee) device.
“But Tomi, you should trust your nose!” some might say. That’s true, but after breathing stale air for some time I don’t notice it anymore.
After some googling I found out I should monitor VOC (Volatile Organic Compounds) that are emitted (off-gassed) from paints, furniture, cleaning products, burning wood, mold, cooking, frying etc. [definition of VOC].
Also small particles (PM2.5) are worth to monitor. They are emmited by cooking (frying, burning food), candles, smoking, plants (pollen) and also by people (skin shedding) [sources of particulate matter].
This Ikea’s device detects both (tVOC – total VOC and PM2.5) besides temperature and relative humidity.
Installation
Installation was pretty straightforward. Firstly, I had to buy USB-C charger (1A) to power it. It comes only with an USB cable, charger is sold separately.
To connect it to my #zigbee network I had to press the big button on top 4x and then allowed the device to join to HomeAssistant/Zigbee2MQTT. Immediately it found a firmware update and installed it successfully OTA.
Long press to pair it to z2m doesn’t do the trick – although the link icon on the device display blinks, it’s purpose is to connect the device to other Ikea devices such as air purifier. I found out that after RTFM. So – use 4x press.
The first biggest issue was – where to place it, physically? Near the kitchen hood? Above the kitchen sink?
Firstly I put it on a kitchen shelf approx. 1.6m above the floor. It wasn’t the best idea, because this device is loud. I read before that the fan emmits audible buzz, but I didn’t expect I will hear it 7-8m far sitting on the couch. Finally it ended in an open narrow kitchen cabinet, directed away from the couch. Maybe the air flow is not so good there, but at least I can’t hear it anymore.
It will definitely not be used in the bedroom.
Adding it to Home Assistant
I’ve added it to my Home Assistant / Kitchen dashboard:
The device doesn’t show tVOCs (only a trend – stable, increasing, decreasing), but it reports values over zigbee (1-500). Nice!
How did I define the colours (severity) of the measurements on the Gauge?
tVOC index
tVOC index is a Sensirion’s way of measuring VOCs. I‘ve used documentation from Sensirion tVOC sensor and defined ranges: green: 1-150, yellow: 150-250, orange: 250-400 and red: 400-500.
Value of tVOC index is a moving average and 100 represent an average VOC concentration in last 24hr. So in a way mimics a human nose. The Sensirion’s image:
While trying to define colours for HA’s Gauge card I found out it can’t be defined using UI.
So I edited Gauge’s yaml and defined ranges of colours. See the other post >>
PM2.5 Gauge
For defining PM2.5 Gauge colours, I’ve used levels from Vindstyrka’s documentation (page 13): green: 0-35, yellow: 35-120, red: >120 ug/m3 (img):
First measurements
After 10 days or so I started to make sense out of measurements.
Temperatue and relative humidity: I noticed it doesn’t report temperature decimals, only whole numbers (20, 21C…). I don’t understand that design decision, because the cheapest Xiaomi BLE thermomethers report decimals and are .2 -.3 accurate. It bothers me somehow that 30€ device can’t report temp. decimals.
Relative humidity measurements are similar to other (Xiaomi BLE) sensors, +- 5%.
What about tVOC and PM2.5? I was most interested in these measurements.
tVOC index
tVOC increases when we cook. It increases more when we’re frying something, using an oven or using a toaster. Only cooking a soup doesn’t increase tVOC as much.
Opening windows decrease tVOCs quickly, 5 minutes are enough.
PM2.5
Small particles are elevated when cooking. There is more to it: sometimes PM2.5 increase when I open windows to ventilate. Now it’s winter and some neighbours use wood for heating, probably that’s the reason (img).
Automations
I don’t have an air purifyer or recuperation system, so my first automations related to air quality are quite simple.
- notify when tVOCs > 450 for 10 minutes
This automation notifies FireHD tablet to say: “Warning, the air is dirty, open windows!” and also sends a text message to my and wife’s phone (img):
It works really good and our ventilation habits improved already.
I’m also playing with automation to turn on bathroom exhaust fan if tVOCs are increased. But the bathroom is on the other side of the house and I don’t know yet if it will have any effect.
Plans:
- Maybe I’ll smartify my kitchen hood to turn it on when the air is dirty. I ‘just’ have to figure out how to connect some esp32 to its fan buttons… and how to convert hood’s light 12V to 5V to power the esp32.
- Do I need CO2 sensor too? Probably yes, especially in the bedroom.
TL;DR
- it’s a cheap device (30€) in comparison with similar air quality sensors
- it works well with z2m and Home Assistant
- its fan is loud (imagine some angry flies trapped in a box)
- the temperature sensor returns only whole numbers, no decimals
Tags: #homeassistant #zigbee #z2m #zigbee2mqtt #ikea #vindstyrka #tvoc #pm25
If you’re reading this on fediverse and the layout (embedded pics) is off or missing, here’s the link to the original blog post.
Leave a Reply