Adding Tasmota to a IKEA Vindriktning

Introduction

With winter come closed windows and doors, the air quality might be of less quality in such conditions.

So I took the opportunity of a visit at IKEA to buy a VINDRIKTNING. This is a PM2,5 device indicating air quality with green/amber/red light.

The goal of this post is to make it smart and integrate it into Home Assistant. As very often, that’s a job for Tasmota.

VINDRIKTNING Capteur qualité de l'air

Hardware

The hack is pretty basic, as the internal PCB of the device already exposes GND, +5V and TX, it is as simple as wiring these 3 pads to a WeMos D1 Mini ESP8266.

ESP8266VindriktningNotes
GNDGNDPower -
VBUS5VPower +
D2 GPIO4RESTData
3V3(Fan +)To reduce fan speed and noise. Optional

Bill Of Materials

The BoM is probably the shortest you can image.

Part Quantity Approx. Price
WeMos D1 Mini ESP8266 1 5€
Some flexible silicone wire rolls (30 AWG, 20m, 5 rolls) 3 * 10 cm 15€ for 5*20m
VINDRIKTNING from IKEA 1 10€

You’ll of course need some soldering iron, I use a Yihua 853D rework soldering station. It might be overkill but I wanted an all-in-one solution (soldering iron, hot air gun and DC power supply).

Software

Tasmota Firmware

As for all devices using an ESP chip, you have to wire it to your computer using a Serial-to-USB adapter for a bare chip or directly over USB if you use a board like the WeMos D1 Mini ESP8266.

The easiest way to flash Tasmota nowadays is to use the Tasmota Web installer at https://tasmota.github.io/install/

However, while the Vindriktning has official support (see “Supported peripherals“), it is NOT built by default.

TODO, 2024-11-03 : The unofficial build does not seem to ship support for the device, I’ve switched to a custom build using Visual Studio Code / Platform IO. See https://tasmota.github.io/docs/Compile-your-build/ and the use of user_config_override.h

Here is the minimum content for that:

#ifndef _USER_CONFIG_OVERRIDE_H_
#define _USER_CONFIG_OVERRIDE_H_

#define USE_VINDRIKTNING    // Add support for IKEA VINDRIKTNING particle concentration sensor (+1k code)¸

#endif  // _USER_CONFIG_OVERRIDE_H_

Back to the old content:

Make sure to select unofficial > Tasmota All Sensors (english).

After a successful flash and connection to the module’s WiFi, use below template.

{"NAME":"Vindriktning","GPIO":[1,1,1,1,7456,1,1,1,1,1,1,1,1,1],"FLAG":0,"BASE":18}

Continue with the usual WiFi, MQTT and misc configurations.

Home Assistant configuration

Tasmota integration

To ease Tasmota usage in HA, I’ve installed the Tasmota Integration.

Home Assistant – Tasmota Integration
Details of the device and its entities

Custom graph

I’ve installed the Lovelace Mini Graph Card using HACS.

The below configuration is made to compare two Vindriktning running the fan at 5V and 3.3V.

type: custom:mini-graph-card
align_header: left
align_icon: left
entities:
  - entity: sensor.tasmota_vindriktning_vindriktning_pm2_5
    name: Salon
  - entity: sensor.tasmota_vindriktning_2_vindriktning_pm2_5
    name: Bureau
hour24: true
font_size: 80
icon: mdi:chemical-weapon
name: Air quality (PM2.5)
points_per_hour: 6
show:
  extrema: true
  average: true
  state: false
color_thresholds:
  - value: 0
    color: '#00ff00'
  - value: 35
    color: '#ff8800'
  - value: 85
    color: '#ff0000'

Reducing fan noise

Now that we are happy and the device is deployed in the house, we notice it is a noisy one.

A common hack is to cut the +5V of the fan and solder it to the +3.3V of the WeMos D1 Mini ESP8266, this indeed works pretty well and the device becomes finally quite. But there’s a catch, is it still as reliable?

Reducing the fan voltage reduces its speed and so is the air flow. Let’s have a quick comparison between 5V & 3.3V.

As you can see, values are still pretty close. The 3.3V variant is slightly more permissive, so I’d have to test it following a “kitchen crisis” like a burnt slice of bread.

Here is another test, when moved from Room 1 to Room 2 and back to Room 1.

And the final test AKA the toasted bread, with an overview of 48 hours.

So, is it worth it? If you want a quite device it is mandatory. Assuming you won’t use the device for life saving purposes, the offset seems OK. Maybe using a voltage like 4V might be preferred as it’ll balance further the noise/offset ratio.

For my own case, I’ll hack the second device to use 3.3V.

References

DIY: Use an IKEA VINDRIKTNING air quality sensor in Home Assistant with ESPHome

https://style.oversubstance.net/2021/08/diy-use-an-ikea-vindriktning-air-quality-sensor-in-home-assistant-with-esphome/

IKEA Vindriktning air quality sensor running Tasmota

https://blakadder.com/vindriktning-tasmota/

Mega thread at Home Assistant community, what appears to be the original work

https://community.home-assistant.io/t/ikea-vindriktning-air-quality-sensor/324599

 

Post Author: Shut

Leave a Reply

Your email address will not be published. Required fields are marked *