Michsior14/ha-venta

False values in sensors (VOC,CO2,HCOH,T)

Closed this issue · 5 comments

I have a strong suspicion that even though the Venta Home app reports the VOC in ppb, it's probably the Sensirion’s VOC Index instead. https://sensirion.com/media/documents/02232963/6294E043/Info_Note_VOC_Index.pdf

The Sensirion VOC Index is a number from 1 to 500; where 100 represents an average amount of VOC's in the last 24 hours. A value below 100 means better than average. A value higher than 100 means worse than average.

The Sensirion VOC Index can never be '0' (zero).

When you look at the graph below it shows the max/min/mean (average) values. The light blue frequently dips too deep to '0'.

I feel this is probably another firmware quirk. I think that when the sensor is not ready it sometimes reports '0' when it should have reported 'None'.

Would you consider ignoring value '0' for the VOC sensor? That would that the graph is broken when no valid measurement is available for a specific time.

Or ignore value '0' and use the previous valid value again instead?

image

The CO2, Formaldehyde and Temperature sensors have the same issue. Sometimes (but less frequently than for the VOC sensor) a false value '0' is reported when it should have been a 'None' instead. Since '0' is an unlikely valid value for these sensors, perhaps you could apply the same fix for these sensors?

The particle count and PM sensors undoubtedly have the same issue, but since these sensors can produce a valid '0' value these sensors are better left untouched.

Originally posted by @johan-de-jong in #8 (comment)

Not sure yet how to handle this. I would love not to touch such values, but if there is no other option I guess that's the way (for this particular device).

Also IMHO temp shouldn't be part of this fix since it can be really 0 as in PM sensors.

One of the solutions would be to create helpers out of the sensors and apply logic you think it's correct. This would make sense since no all devices will have such issue (i.e. LW74 never wrongly reports 0 for temperature).

Since the AirSense is meant for indoor use I would not expect a temperature of 0 C. The temperature sensor seems much more reliable than the VOC sensor. In the same time period there was only 1 false value. I agree we can leave the temperature sensor alone.

My update interval is 30s. With a lower interval I would expect to see even more false values.

image

The CO2 and formaldehyde/hcoh and temperature sensors are much less of a problem, as you can see bad values happens far less frequently than for the VOC sensor.

image

When I create a graph with multiple sensors in my home (Statistics Graph hourly / last 2 days) the issue becomes very visible:
image

One of the solutions would be to create helpers out of the sensors and apply logic you think it's correct. This would make sense since no all devices will have such issue (i.e. LW74 never wrongly reports 0 for temperature).

The temperature and humidity values for both my AH555 Original Connect Air Humidifier units are also reported correctly.

The CO2 and Formaldehyde/HCOH graphs look sane and beautiful now. Thanks!