sparkfun/SparkFun_BME280_Arduino_Library

relative humidity issues with BME280

brooksdr opened this issue · 1 comments

I and others have noted problems with the BME280 relative humidity readings. These same kinds of problems appear to be common with "capacitive" temperature-compensated humidity sensors. BME280 RH values are almost universally too high. Under warm and humid conditions I have observed them "saturating" at 100% RH when this is clearly not possible. These problems appear to be related to how the temperature compensation algorithms work. It might be helpful if their software libraries (Adafruit, SparkFun) included access to the calibration coefficients that I assume are used to convert some sensor output to a relative humidity value. Then it might be possible to develop algorithms that would give more reasonable values -- compared to, for example, RH values from a nearby "official" weather station. Without better performance, these sensors simply aren't suited for outdoor use in weather stations, despite what is said about them by vendors such as Adafruit and SparkFun.
Thoughts? Suggestions?

Please see example 5 of the latest library (new, v2.0). This example prints the calibration factors.

The cal factors are also exposed via the library. You can change the calibration factors (although I don't think I would) by using the following code:

settings.calibration.dig_T1 = 5;
settings.calibration.dig_T2 = 6;

You can set each of the 19 cal factors to whatever you want!

I am not savvy enough to develop an algorithm that bests Bosch but if you're into it, please let us know what you come up with! It would be really need to study your approach to the problem.