Hi! I created four humidity sensor nodes, two using the SI7021 sensor and two using the HYT221 sensor. The tolerances of these two sensors are as follows:
- SI7021: ± 3% RH (max)
- HYT221: ±1.8% RH (max)
I run all sensors using an 3.3V Arduino Pro Mini 328P replacement board, each powered by 2AA batteries. At the moment all 4 nodes run at the same position, so under same conditions and so I'd expect them to measure almost the same humidity values.
But they're not: While all sensors report almost the same temperature, the results for humidity are very different:
The two SI7021 are between 41-42% at the moment, whereas one of the HYT221 is around 35% and the other is at about 30%. I have a fifth sensor in the same room part of a Tado thermostat, reporting 40% RH at the moment.
I already double-checked my code and all the formulas in the specs but it looks fine to me. So I guess, the HYT221 sensors are faulty. Since they are rather expensive compared to other sensors I expected them to be more accurate than the SI7021, but the HYT221 already contradict themselves, because with a tolerance of 2*1.8% I cannot explain this difference of 5% between both of them.
What do you think? Are the HYT221 faulty? Is there another problem I didn't see yet?
Specs for the sensors:
The code I'm using: