I am using in total 6 BME280 sensors In my smart Home setup.
Initially the sensors worked fine with accurate temperature and Humidity readings.
However after ~3 Months one of the sensors suddenly shows a much too high temperature. The temperature is about 4 Degrees higher than the other sensors (e.g. 28 degree instead of real temperature of 24 degree).
This also causes invalid/too low humidity readouts (as temperature is used to calculate relative humitidy)
The other 5 sensors work fine with the same hardware setup and software.
The affected sensor is positioned in the Bathroom (which will sense a humidity change from 30% to 85% to 30% each day during showering) and controls the Fan to blow humid air out of the room.
I sample sensor values every 5 seconds.
Regarding PCB layout, I am using the Breakout boards with integrated 5V regulator and level shifter commonly found on Amazon or Ebay.
The sensor is mounted Head-down (metal casing pointing towards the floor) inside of a Plastic casing with slots to allow free airflow.
I am using the Bosch BME driver software v3.5.0 on AVR controller.
This is how I initialize the device (Weather monitoring mode):
.... struct bme280_dev m_dev; m_dev.intf_ptr = &m_i2c; m_dev.intf = BME280_I2C_INTF; m_dev.read = IicCWrapper::smRead_c_wrapper; m_dev.write = IicCWrapper::smWrite_c_wrapper; m_dev.delay_us = Bme280::delay_us; checkResult(bme280_init(&m_dev)); /* Recommended mode of operation: Weather monitoring */ m_dev.settings.osr_h = BME280_OVERSAMPLING_1X; m_dev.settings.osr_p = BME280_OVERSAMPLING_1X; m_dev.settings.osr_t = BME280_OVERSAMPLING_1X; m_dev.settings.filter = BME280_FILTER_COEFF_OFF; m_dev.settings.standby_time = BME280_STANDBY_TIME_1000_MS; uint8_t settings_sel = BME280_OSR_PRESS_SEL; settings_sel |= BME280_OSR_TEMP_SEL; settings_sel |= BME280_OSR_HUM_SEL; settings_sel |= BME280_STANDBY_SEL; settings_sel |= BME280_FILTER_SEL; ...
It shis a known issue?
Did I do something wrong, e.g. use the sensor outside of its spec?
Does the sensors intended use cover usage inside a Bathroom to control the room ventilation?
Might this be related to the affected sensor being exposed to numerous humidity changes as ist is situated in the bathroom?
Is this a defective sensor?
If I replace the sensor, will it show the same problem after 3 month?
Thanks for looking into this 🙂
Solved! Go to Solution.
I made some pictures, on how I physically positioned the Sensor in the Casing and on the wall.
I also took the opportunity when I had the case disassembled, to swap the Sensor with a new one.
After the swap the new sensor as expected reads the correct temperature again (as did the old sensor for 3 months).
From this I conclude the issue is not from any ambient heat source, but sensor degradation over time.
Now let's see if the new sensor also degrades over time.
I would be happy on any feedback on this. Is the way I mounted the sensor OK for a humid Bathroom environment (I let the sensor face downwards to avoid any condensation forming on and dripping into the sensor)?
According your feedback, we would like to get more information from you:
1. Where are the other five BME280 installed? And what about the surrounding environment?
2. The BME280 in the bathroom has a temperature drift of 4 °. Is the humidity value normal at that time?
3. Is the temperature and humidity normal when the BME280 in the bathroom is taken out of the bathroom?
Hi, thanks for the reply.
Regarding question 1:
Regarding question 2:
Regarding question 3:
I will still keep the affected sensor module. If you are interested, I can send it to you.
Thank for your feedback.
Could we know which region you located?