IKEA Vindriktning Air Quality Sensor

I’ve noticed that one of my boards would also fit if I cut the pins :smiley: I’m curious yes, if it’s not too much to ask!

(meanwhile I have orded wemos d1 mini-sized ESP32 boards)

Of course. I will do it

By the way, its very interesting to desolder the ESP red led to avoid this:

1 Like

Both Wemos Mini Esp8266 and Esp32 has only the blue led, but I guess your real choice was for the antenna connector. But I have seen some other projects (Zigbee coordinator) where the built in antenna was cut through and an external connector soldered in place of the cut. Wouldn’t that be easier for you as well?

hah, yes. I have some ESP32 boards (LOLIN32 I think) that support a battery, and they will blink red (or was it blue? if they don’t see a battery. I have since gotten other boards without battery support to fix that, but they don’t fit nicely inside the IKEA unit, so now I’m waiting for the smaller ones.

Any idea how long the sensor lasts for?

Some of the other ones have quite a short life (circa 12months) but you can do life extension tricks…

Anyone seen measurements side by side with a higher quality sensor?

I’ve just set up my pms7003.

I used an ESP8266 ESP01 with a stepdown converter (5v-3,3v). Also I didn’t use the solder pins like everybody else did, i used the solder pins at the end of the board. I think they are pins to accommodate a connector which is not on the board from the factory but they perform the same.

Ikea board 5v and GND → Stepdown
Ikea board REST → GPIO2 on ESP
Stepdown 3,3v → 3V3 and EN on ESP
Stepdown GND → GND on ESP

YAML config:

# Ikea Vindriktning PM2.5 sensor
rx_pin: GPIO2
baud_rate: 9600

# External component until final merge
- source: github://Habbie/[email protected]
components: [ pm1006 ]

- platform: pm1006
name: Ikea_Vindriktning_PM25

I used a hot glue gun to glue the pcb’s to the casing. These glue guns can be bought at your local hardware store or at your local Action (NL).
The reason why I used two little pcb’s is (1) I had them laying around and (2) they minimally disturb the airflow for the sensor.

To get the air quality data into HomeKit the name of the sensor must contain: ‘pm25’.

Side note: I’m running my first config from before the icon was changed. You should use:
source: github://sermayoral/[email protected]

@Habbie, you may use my pictures for the docs.


@Habbie As I promised, I have updated my post with more specific photos :blush:


ESPHome has merged the component - you can view the docs at PM1006 Particulate Matter Sensor — ESPHome now!


I think this documentation has the answer for your question.



I see “Mean Time To Failure ~ >-5yr” ? That’s pretty good!

I understand the lifetime of the ones that use a laser light are driven by it’s shorter lifetime.

I guess that’s it. I had no clue what MTTF, but happy to see that you knew it.

I guess the fan makes it prolonged as it supposed to clean as well the sensor, as it was discussed in the Hackaday article’s comments section.

1 Like

This was just waiting for someone to connect it with an ESP. Simple and cheap solution!

One thing I struggle with a bit is all these ‘ESP-Hacks’ are just generating a lot of wifi connections, isn’t that a bit overkill for the network?

now my hard part has been finding these in the US it seems like every Ikea in 100 miles of me is out of stock.

1 Like

It depends what router you have. Some have limitations for number of connections like 16 or 32. In that case, yes it is an overkill. But generally not the dirt cheap bottom of the line routers access points can handle a higher number of clients and these devices generally do not use high bandwidth. Plus, for any device what you generally use to access the internet would use nowadays 5Ghz, meanwhile these ESP devices use only the 2.4Ghz frequency. So like your phone, Chromecast, laptop, tablet etc would use a faster access than these devices and they would not interfere with each other.

Anyone who was compared rhe values with other particulate sensors? Have just been running the sensor for a couple of hours but the values seems pretty off compared to my Sensirion sps30 sensor (SPS30 Particulate Matter Sensor — ESPHome) and the outdoor values (Luftdaten sds011). The values are about three or four times greater than what the other sensors measures. Sps30 (indoor) measures 2.23 ug/m3, sds011 (outdoor) 2.35 ug/m3. The vindriktning sensor, which is placed just next to the sps30 8 ug/m3.

1 Like

I just want to say be very careful with soldering (or maybe I’m just very bad at it).
In my case the + pad on the board came loose and when I tried to fix it somehow it came loose all the way to the edge of the board.

Any tips for what the best way is to solder this, let me know :).
Like do you put tin first on the pad and then solder the wire to the pad?

Guess I’ll have to buy a new one :frowning:

I was thinking about stripping the original pcb and drive the sensor + status leds directly with the wemos.
This way the status leds could be used for other thing (messages, alarm etc etc).
Maybe add some pressure/temp and CO2 sensors.
Give it a try before trashing it!

1 Like

I believe here is the answer why the PCB has those connectors at the end:


I cannot see any information what solution it will have Wifi or Zigbee, but I am pretty sure someone will find some time to tinker with it once it is released. (My guess would be Wifi and using the already implemented CoAP from the Tradfri bridge.)

@Habbie, @Hypfer


Just built one of these, pretty easy and fun! Thanks for showing us how to mod one, I think it’s a great ESPHome starter project.

I was just wondering about the PM1006 sensor. I thought a PM2.5 sensor means that it’s detecting only particles smaller than 2.5. But the sensor datasheet seems to indicate it detects between 0.3 and 10 micrometer? Doesn’t that make it a PM10 sensor? Or don’t I understand the PM definitions correctly?

@rindlerblabla I think this might also be why you see differing values between your other PM2.5 sensors and the IKEA one. If it’s actually a PM10 sensor, wouldn’t it catch much more particles than a true PM2.5 and thus return a much higher value?