Skip to content
Pressure & Altitude

BME280 Environmental Sensor

Combined pressure, humidity, and temperature sensing — the go-to all-in-one environmental sensor.

The BME280 is Bosch's combined humidity, pressure, and temperature sensor, built on the same die family as the BMP280 with a humidity element added on top. It talks over I2C (up to 3.4MHz) or SPI (up to 10MHz), and a single read gives you all three environmental values with factory-calibrated compensation coefficients baked into onboard registers — the sensor itself does the raw-to-real-world math via the calibration data, and your library just applies it.

It is the standard choice for weather stations, altitude estimation (via barometric pressure), greenhouse monitoring, and indoor air-comfort projects. The catch that trips people up is address selection and voltage: most breakout boards default to I2C address 0x76 or 0x77 depending on how the SDO pin is tied, so two identically-wired boards on one bus will collide unless you change one address. Also, the bare BME280 chip is 3.3V logic only — always confirm your breakout has an onboard regulator before wiring it to a 5V board.

Specifications

InterfaceI2C (up to 3.4MHz) or SPI (up to 10MHz), selectable
I2C address0x76 (SDO to GND) or 0x77 (SDO to VCC)
Operating voltage1.71–3.6V (breakout boards commonly add a 5V-tolerant regulator)
Humidity range0–100% RH, ±3% accuracy
Pressure range300–1100 hPa, ±1 hPa absolute accuracy
Temperature range−40°C to 85°C, ±1°C accuracy
Current consumption3.6µA @ 1Hz (humidity+temp), 0.6µA in sleep mode
Response time~1s (humidity 63% step response)

Pinout

PinNameDescription
1VCCPower — 3.3V (check breakout for 5V-tolerant regulator)
2GNDGround
3SCLI2C clock (or SPI SCK)
4SDAI2C data (or SPI MOSI)
5CSBSPI chip select — tie HIGH (to VCC) to force I2C mode
6SDOI2C address select (GND = 0x76, VCC = 0x77) or SPI MISO

For I2C mode (the common case), tie CSB to VCC and use SDO only to pick the address. For SPI mode, all 6 pins are active and CSB becomes the active-low chip select.

Variants

VariantTemp rangeHum rangeAccuracyProtocolPrice
BMP280~$1–2
BME680~$8–12
BME280 5V module~$2–4

Board Integration

Library

Adafruit BME280 Libraryby Adafruit

Arduino IDE → Tools → Manage Libraries → search "Adafruit BME280"

Notes

[]