8 November 2026 · Soldr

BME280 vs BMP280: why your "BME280" has no humidity

Short answer: the BMP280 measures pressure and temperature. The BME280 measures pressure, temperature and humidity. They share the same I2C addresses (0x76 or 0x77) and very similar modules, so they're easy to mix up. If a BME280 library says it can't find the sensor, or humidity reads 0 or NaN, you most likely have a BMP280. Use a BMP280 library, or swap to a BME280 if you need humidity.

Both chips come from the same maker and are often sold on breakout boards that look almost the same. The difference is one sensor element, and it decides whether your weather station can report humidity. Here's what each datasheet says, as cited on our BMP280 and BME280 reference pages.

Side by side

BMP280 spec table on soldr.ai: pressure range 300 to 1100 hPa, relative accuracy plus or minus 0.12 hPa, absolute accuracy plus or minus 1.0 hPa, supply VDD 1.71 to 3.6 V and VDDIO 1.2 to 3.6 V, operating temperature minus 40 to 85 degrees C, I2C address 0x76 or 0x77, with no humidity row

Notice what's missing from the BMP280 table: humidity. It isn't a setting you can turn on. The sensor element isn't there.

Symptoms of a mix-up

How to tell which one you have

  1. Run an I2C scanner. It confirms there's a device at 0x76 or 0x77 but can't tell the two apart, because the addresses are the same. See I2C address conflicts for a scanner sketch.
  2. Try a BME280 library. If it refuses the sensor, it's almost certainly a BMP280.
  3. Check the listing and the marking. The module label or product name should say which chip it carries.

Wiring either one

More on mixing levels in 5 V sensors on a 3.3 V ESP32.

Which to buy

When you describe a weather build on Soldr, name the exact sensor ("a BME280 for humidity"), so the parts and the library match what you need.

On Compoden: BME280 module, BMP280 module. Describe your build on app.soldr.ai. Sign in and get 100 credits free.