Closed TD-er closed 6 months ago
@TD-er please replace "Senserion" with "Sensirion".
This guy Oleksii has a sort of tear-down for the device (more like an unboxing 😉), that confirms the sensor is indeed a SEN54. There also is an official Sensirion Arduino library for the SEN5x (using I2C). Not sure if we can 'eaves-drop' on that, like is done with the Vindriktning plugin (that's using a more 'regular' serial interface). And maybe just implementing this in a more ESPEasy fashion, without introducing another 'standard' way of communication with I2C devices, is a better idea.
Edit: Here is the Sensirion SEN5x datasheet
Yep, was thinking about the same approach. Problem is that we may need to 'sniff' to see if there is activity on the I2C bus.
Ah apparently someone else came up with the same idea: https://github.com/oleksiikutuzov/IKEA-VINDSTYRKA/issues/1#issuecomment-1455082822
Hello, I am interested in IKEA Vindstyrka integration in ESPeasy and below is my research regarding it:
I hope to be able to activate the interrupt with your help and to be able to complete the plugin.
Note:
I guess the Ikea firmware does try to read only on regular intervals, so maybe we can detect this and try to match its read interval, not to disturb those readings?
Another way can be to add a second I2C bus and try to emulate the device on this 2nd bus and thus act as some kind of man-in-the-middle and echo'ing the values while keeping the read results.
N.B. a 2nd bus is probably only limited to ESP32-like devices.
Ah this emulation was also mentioned on the link you provided. Meaning this could be turned into 2 plugins:
The SEN55 sensor is planned to be included soon, using the I2C bus.
Hello, from the research of the person who made the sniffing, it is clear that the query of the SEN54 sensor by the IKEA Vinstyrka controller is done at regular intervals of 1 sec. I like the idea of "man in the middle" but I would prefer that ESP8266 users can also benefit from this plugin (including myself). I hope I can solve the problems with the interrupt activation on the SCL monitoring pin. I don't know how to try to activate this interruption, so far everything has been unsuccessful.
If someone wants to modify such a unit, then quite often new hardware has to be bought. So why buy any ESP8266 right now if the ESP32-C3 (as example) costs less money, is smaller and has much less power and antenna related issues compared to those "Wemos D1 mini" ESP8266 form factor boards you get when ordering now from Ali et. al. ?
The SEN55 sensor is planned to be included soon, using the I2C bus.
@tonhuisman is about standalone SEN5x or in this category is included IKEA Vindstyrka device ??? (because for IKEA device it's necessary to not affect original (main) communication).
The pending implemented PR is not taking into account that there might be other concurrent I2C transfers.
It is quite hard to manage 2 masters on the same I2C bus. Maybe the IKEA firmware does allow to sometimes have no connection to the sensor? If so, then you could add some "analog switch" chip to switch connection from ESP to IKEA PCB? But I think the most stable and elegant solution would be to consider the IKEA PCB as a display.
i make some progress for this ESPeasy plugin (for ESP8266) All description and files could be find here: https://github.com/andibaciu/ESPeasy-plugin-for-IKEA-VINDSTYRKA Best regards!
Why do you use P253? You can just request a plugin ID: https://github.com/letscontrolit/ESPEasy/issues/3839 And why not directly make a pull request?
Sorry, my mistake, i dont know about this request a plugin ID: https://github.com/letscontrolit/ESPEasy/issues/3839 (it's my first contribution for this project) and i post about this plugin only here. I already make a plugin request and after the owner give approval for this plugin and allocate a number i'll make all necessary changes.
The latest Ikea VINDSTYRKA air quality sensor uses the Sensirion SEN5x. There are 3 types of this sensor:
Assuming the IKEA unit uses the SEN54, since photos only show values for PM, RH/T, VOC