Difference between onboard and QWIIC BME280

Hello World

Revisiting an old project of mine (lost my notes so half starting from square 1). I have the MicroMod Weather board with an ESP32 processor board. Couldn’t remember why I had an external BME280 installed when there’s one right there on the board. Figured it out, the on-board BME280 seems to be consistently reading inaccuratly on all fronts compared to the QWIIC connected BME280:

Temperature: 60.49
Humidity: 44
Pressure: 98722
Altitude: 718.3

On-board Temperature: 68.59
On-board Humidity: 34
On-board Pressure: 98756
On-board Altitude: 708.8

Based on other commercial sensors in the area the QWIIC connected BME is reading more accurately than the on-board BME280. Is this because I’m using an ESP32 for the processor (generating heat)? The devices are on different addresses, code is literally 1:1 the same for reading either sensor.

:?:

If the on-board sensor is located near the processor and is not shielded from its heat, this could cause it to read inaccurately. The BME280 sensor requires calibration to accurately measure temperature, humidity, and pressure. It is also possible that the on-board sensor was not calibrated correctly during manufacturing, whereas the QWIIC-connected sensor was calibrated more accurately.