Thank you very much for your time and for your explanation. I don’t know where the mistake could have been. I haven’t changed anything since last night, and when I turned it back on today, everything works great.
Probably an old IT trick called rebooting helped.
Here is a photo of my IKEA Vindriktning Air Quality Sensor
One others thing that I recognized: in have another one which I’m using with the original PCB attach and just reading the UART. I had also some struggles with the esp32 but since I was using RXD2 and giving the UART a name which I added in the sensor as well, at least this pm1006 was working.
What sensor do you have attached to yours? Is that the CO2 sensor from the website? That is a really steep choice for 1418 CZK…
Then what is your final bill at the end? Around 3000 CZK? Does it worth it?
The PM1006 makes it cheap and unreliable but the other equipment seems to be at a different level compared to the PM1006. Nice work!
Thanks for adding the link. As a newbie, I can only add a limited amount of links and images to a post.
Yes, I used a high quality and expensive Sensirion CO2 sensor combined with a very inaccurate PM1006. It really doesn’t seem like a good idea. I will probably place the CO2 sensor completely outside the box. The sensor has a thermometer and hygrometer integrated in it, and measures 5°C higher because it is placed directly above the ESP. When you flash new firmware, the temperature will increase by 8°C for a short time.
I will probably place the CO2 sensor in a separate unit and get the data for the display from Home Assistant.
I fell for that trap too with a DIY device as a lot of people do the first time it seems.
As quick mitigation, I found that calibration (like in my charts a few posts up), can get temp within 1% (which is probably ok for most use cases) and humidity back to useful values too (~ ± 5%).
Apparently heat can come from and be transmitted by a number of sources (for example via the wires).
I think i found the issue with some devices not working when using them without the IKEA MCU.
I contacted Cubic about this sensor, and their engineer told that when the sensor doesn’t receive a request within 5s after boot it will go into PWM mode. (This information is missing in the translated datasheet of the PM1006, but it is actually the same as the PM1006K)
With that information I attached the scope to it when booting, and I noticed that immediately when the data lines become high ESPHome sends the request, so that got me thinking it might be that some sensors may require a little more startup time to be able to read the requests.
I added the following automation to my config and now it’s working!
on_boot:
priority: 240
then:
- uart.write:
id: ikea #id of the uart bus used for the PM1006
data: [0x11, 0x02, 0x0B, 0x01, 0xE1]
@Habbie can you confirm when the first data request is being send to the sensor?
And @Meinereiner can you maybe also try if this automation can make the “dead” sensor alive again?
I don’t have more sensors to test this “fix” on and I’m curious if it really is that simple.
I’m trying to build this thing, but I don’t get any data from the sensor. My Wemos Mini D1 is powered from the original PCB. The wemos works correctly. I have also attached a mhz19 co2 sensor. This one works fine too (update every 60s). The fan is also powered from the wemos. The fan works too.
I’ve connected the 2nd from the left pad to D3 on the Wemos. This should be correct, right? I have even replaced the wire and soldered it again, but still no succes.
Edit:
Never mind. I tried another pin D5 and then it worked fine. I guess D3 is one of those special pins.
I’ve had the Vinketering running for a couple months now. But lately, occasionally it’s giving very low (stable) values. Like 1-2ug/m3. Before, it never went below 5-6.
I don’t have an air purifier or similar.
Yes, have experienced the exact same. But have also seen the stable readings go back up. I think that this is due to the air quality of the outside air that is influencing the air inside your home, which can change over time?
From what I have read, the air in NL should be around 5-6 ug/m3 on a “clean air day”. And I live in a city.
1-2 ug/m3 I’d expect to read in the middle of the jungle 1000km from any industrial machine.
I was thinking that maybe, since I smoke indoors, the sensor was getting a bias. Or it has autocalibrated itself while the air was dirty from sigarette smoke.
I am using the same combination of sensors as you do. For me the primary goal was CO2 so the Sensirion does its job. And the PM25 is just a bonus
I use the same board from LaskaKit and transformed the provided example code to ESPhome configuration. So now it is perfectly aligned with HASS and no programming needed. If anyone would be interested I can share …
Ciao and thanks for your guide!
Did you cut the PCB from one side to the other (from the front to the back)?
And how ‘long’ did you make the cut? How much left and right did you go from R3 and R4?