Improved Humidity Algorithm

We’ve noticed for awhile that the top value for humidity readings seems to be in the low to mid 90 percentiles (in unadjusted raw values). The humidity sensor’s effective ceiling has dropped since we last performed a significant top-end adjustment in 2020.

Perhaps you’re thinking, “why not just replace the sensor?” Because a new sensor, while perfectly affordable and somewhat more accurate in very moist air, has other more unpredictable errors which will not be easily correctable. I base this assertion upon years of experience with the SHT31 sensors, particularly when exposed to fan-assisted air movement (~2.25 m/s). A replacement sensor need to “harden” in the field for years before being deployed. We’ve had one “baking” in our backup station since last fall, and it’s not ready yet. It’s only to be used in the event of a failure of the primary station.

In the early morning hours of Monday July 24th our location experienced significant dewfall. Dew coated all objects within view, including the housing of our weather station. Unfortunately, our station’s max humidity reading that morning was 91%. Not good. A fan-aspirated weather station, such as ours, will sometimes run a bit drier than nearby air-ventilated stations which are susceptible to moisture depositing within their housing & on sensors when winds are low but air is not quite saturated (95-100% RH). ┬áBut given the level of moisture observed combined with empty radar images & precipitation gauges, our sensor should have read upper 90 percentiles at least, with or without a fan to move air through the housing. Other nearby weather stations were reporting maximum humidities for hours, including our backup station.

After hunting through humidity records this past year and observing patterns, I have tweaked the “dry bias” algorithm that progressively adjusts readings above 85% relative humidity. It’s a bit tricky because the sensor also has a “wet bias” that stretches into the low 80 percentiles. Certain values have to be transitioned to make the handoff at 85 smooth yet accurate. Luckily, I’ve got lots of data available from past and present checks against our reference psychrometer (accurate to +/- 1% RH) to aid in the process.

You should now clearly notice when fog, dew or significant precipitation events occur just by examining humidity tables on our weather history page. Future maximum values should be close to, if not precisely, 100%.

Questions? Thoughts? Hit the comment form below.


UPDATE 7/27/23 2:55 PM: Fog descended on Marquette last night! It lasted for several hours. A decent rain storm followed this morning which re-saturated the air with moisture (nearby stations all at max humidity). The new algorithm couldn’t have performed better!!

Humidity Adjustments

It appears our humidity sensor’s maximum value has lowered over time. This is, unfortunately, common with our particular weather station’s sensor. The process is accelerated by 24 hour fan aspiration. We’ve seen this behavior in 3 other units we’ve deployed in the past.

When we first installed this sensor last July, the top possible humidity reading was 98%. The ceiling has since lowered to 96%.

After a round of tests using an independently calibrated device yesterday & today, and in an effort to stay within +/- 3% of true ambient humidity, we’ve programmed adjustments to the following humidity readings:

  1. 94% +2% = 96%
  2. 95% +3% = 98%
  3. 96% + 4% = 100%

Because we use a 5 minute rolling average for humidity at times you will see values between 96%, 98%, and 100%.

The good news is, based on experience with this sensor model, the biases should now be fairly solidified and predictable.

The bad news is that when humidity starts to descend from persistently moist conditions (>95% and >2 hours) the sensor can lag because of moisture uptake within the protective housing. Our programmed offsets exaggerate this process. We believe it’s more important to properly indicate the arrival of fog & dew than the drier air that immediately follows.

As always, though, we will test to verify sensor performance every so often and adjust accordingly.


NOTE: We send corrected humidities to CWOP & Weather Underground.

UPDATE 5/28/19: After an overnight period of saturated air, discovered the sensor’s ceiling is actually 96%; corrected offsets.

Back to Top

(Auto night: 9:46 PM - 5:52 AM)