# Ikea Vindriktning PM2.5 air quality sensor + ESP8266

**URL:** <https://community.homey.app/t/ikea-vindriktning-pm2-5-air-quality-sensor-esp8266/50777>\
**Category:** Devices\
**Tags:** mqtt, ikea\
**Created:** [August 24, 2021, 1:14pm UTC](https://community.homey.app/t/ikea-vindriktning-pm2-5-air-quality-sensor-esp8266/50777 "2021-08-24T13:14:04Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Chillout](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/chillout/32/29997_2.png) [@Chillout](https://community.homey.app/u/Chillout)\
**Post date:** [August 24, 2021, 1:14pm UTC](https://community.homey.app/t/ikea-vindriktning-pm2-5-air-quality-sensor-esp8266/50777/1 "2021-08-24T13:14:04Z")

</div>

Thanks to the work of github member “Hypfer”, it’s now possible to use the cheap IKEA PM2.5 sensors as a MQTT source. I set it up with my homey as follows:

- Applied the hardware mod with a Wemos D1 Mini
- Put the supplied sketch onto the D1.
- Installed MQTT broker and MQTT client on Homey.
- Set up MQTT on the D1
- Create a virtual device on Homey (type: sensor, air quality) by using the [Virtual Devices app](https://homey.app/nl-nl/app/com.arjankranenburg.virtual/Virtuele-Apparaten/)
- Add a flow to homey: "  
IF  
MQTT Client Trigger when a message is received on  
“/home/data/pm25/1”  
THEN  
PM2.5 (virtual sensor) Set the value of a virtual sensor measure\_pm25 to “message recived via topic”

It will work like a charm 😄

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/6/6/661bd2ef740265911d9f309efdd01509e4826c08.png)  
And it’s pretty cheap for a smart sensor of this kind.

Find the github repository here:

> **[GitHub - Hypfer/esp8266-vindriktning-particle-sensor: Wifi MQTT Data Logging via an esp8266 for the Ikea...](https://github.com/Hypfer/esp8266-vindriktning-particle-sensor)**
>
> Wifi MQTT Data Logging via an esp8266 for the Ikea VINDRIKTNING PM2.5 air quality sensor

---

<div class="post-metadata">

**Author:** ![Lichtenberg](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lichtenberg/32/36370_2.png) [@Lichtenberg](https://community.homey.app/u/Lichtenberg)\
**Post date:** [August 25, 2021, 5:50pm UTC](https://community.homey.app/t/ikea-vindriktning-pm2-5-air-quality-sensor-esp8266/50777/2 "2021-08-25T17:50:48Z")

</div>

Awesome find!

How often does the Vindriktning update PM readings?

---

<div class="post-metadata">

**Author:** ![rindler](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/rindler/32/5501_2.png) [@rindler](https://community.homey.app/u/rindler)\
**Post date:** [August 25, 2021, 5:54pm UTC](https://community.homey.app/t/ikea-vindriktning-pm2-5-air-quality-sensor-esp8266/50777/3 "2021-08-25T17:54:48Z")

</div>

A couple of times every minute.

---

<div class="post-metadata">

**Author:** ![PJ\_2020](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pj_2020/32/44261_2.png) [@PJ\_2020](https://community.homey.app/u/PJ_2020)\
**Post date:** [August 31, 2021, 8:23am UTC](https://community.homey.app/t/ikea-vindriktning-pm2-5-air-quality-sensor-esp8266/50777/4 "2021-08-31T08:23:29Z")

</div>

Did you modify the .ino file or did you just uploaded it to the Wemos?

---

<div class="post-metadata">

**Author:** ![Chillout](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/chillout/32/29997_2.png) [@Chillout](https://community.homey.app/u/Chillout)\
**Post date:** [August 31, 2021, 8:57am UTC](https://community.homey.app/t/ikea-vindriktning-pm2-5-air-quality-sensor-esp8266/50777/5 "2021-08-31T08:57:05Z")

</div>

I didn’t modify anything, just uploaded it. Configuration is done through the web portal.

---

<div class="post-metadata">

**Author:** ![harmenkuijer](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/harmenkuijer/32/120683_2.png) [@harmenkuijer](https://community.homey.app/u/harmenkuijer)\
**Post date:** [October 19, 2023, 4:22pm UTC](https://community.homey.app/t/ikea-vindriktning-pm2-5-air-quality-sensor-esp8266/50777/6 "2023-10-19T16:22:47Z")

</div>

I have done al the steps as mentioned in the first post. Unfortunatly I don’t receive anything from the sensor. In the developer tools I see that it is pushing data to the pm25 sensor. But still nothing is received…

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/c/c/cc98334ff24064723686cf86e26cd5a64447fbd7.png)

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/3/b/3bfea95ab2f3ed616a419b158dee7d273b49b0ba.png)

---

<div class="post-metadata">

**Author:** ![robertklep](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/robertklep/32/160628_2.png) [@robertklep](https://community.homey.app/u/robertklep)\
**Post date:** [October 19, 2023, 5:17pm UTC](https://community.homey.app/t/ikea-vindriktning-pm2-5-air-quality-sensor-esp8266/50777/7 "2023-10-19T17:17:19Z")

</div>

I’m fairly sure your sensor data isn’t being published to `/home/data/pm25/1` but to `esp8266-vindriktning-particle-sensor/VINDRIKTNING-XXXX/state`

---

<div class="post-metadata">

**Author:** ![harmenkuijer](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/harmenkuijer/32/120683_2.png) [@harmenkuijer](https://community.homey.app/u/harmenkuijer)\
**Post date:** [October 19, 2023, 6:23pm UTC](https://community.homey.app/t/ikea-vindriktning-pm2-5-air-quality-sensor-esp8266/50777/9 "2023-10-19T18:23:32Z")

</div>

That did the trick (first time MQTT is a little bit a search ☹ ).

Now i’m receiving data: {“pm25”:9,“wifi”:{“ssid”:“ssid\_name”,“ip”:“192.168.1.122”,“rssi”:-58}}

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/9/8/98bd2d5f6e1e856d453e8f916ec63092769699ff.png)
