Pressure
BME280
I2C temperature + humidity + pressure sensor breakout — the go-to combo environmental sensor.
BME280 · Bosch Sensortec
Overview
The BME280 measures temperature, humidity and barometric pressure from one I2C (or SPI, on some breakouts) chip. The bare Bosch die itself is rated 1.71-3.6V and is NOT 5V tolerant — but nearly every breakout board sold (GY-BME280, Adafruit, SparkFun, etc.) adds its own regulator and level shifting, so the module you actually wire up often accepts a wider range than the die datasheet alone would suggest. That varies by which breakout you bought, which is why the supply spec below is marked varies-by-vendor rather than repeating the die's number as if it applied to the board. Don't confuse this part with the BMP280, which looks identical and shares its I2C address but drops humidity sensing entirely.
Wiring tip: I2C, addr 0x76 or 0x77 (check SDO) — verify your specific breakout before assuming 5V is safe
Pins & wiring
BME280
Breakout Board
Physical pin order shown left to right.
All pins
Hover · click to selectSelected pin
vcc
- Direction
- Power
Full pin table
| Pin | Name | Role | Direction |
|---|---|---|---|
| 1 | Power | Power | |
| 2 | Ground | Passive | |
| 3 | I2C | Open-drain | |
| 4 | I2C | Open-drain |
Wiring examples
I2C to any host
Works on any board with an I2C bus — bus lines target board roles so this example isn't tied to one board's pin numbering.
| BME280 pin | Connects to | Note |
|---|---|---|
| VCC | host Power (any matching pin) | — |
| GND | host Ground (any matching pin) | — |
| SDA | host I2C SDA (any matching pin) | — |
| SCL | host I2C SCL (any matching pin) | — |
You also need
- Optional4.7 kΩ resistor between SDA and VCC — I2C requires pull-ups to VCC — most breakouts already include them onboard, so add these only if you've verified yours doesn't.
- Optional4.7 kΩ resistor between SCL and VCC — Same as SDA — usually already onboard.
- Confirm your specific breakout's rated voltage before powering from 5V — some are 3.3V-only despite looking identical to 5V-tolerant ones.
- If sharing the bus with another 0x76/0x77 device, set the SDO pin (6-pin variants) to pick the other address.
I2C to an ESP32 DevKit V1 (3.3V)
esp32-devkit-v1 pinout →| BME280 pin | Connects to | Note |
|---|---|---|
| VCC | 3V3 | — |
| GND | GND | — |
| SDA | GPIO21 | — |
| SCL | GPIO22 | — |
- 3.3V always works regardless of which breakout you have.
Specifications
Electrical
Performance
Physical
- Package
- Breakout Board
- Length
- Varies by vendor
- Mounting
- module
Footprint
No independently verified physical footprint is on file for this part yet.
Alternatives
Budget options
Cheaper, with a stated tradeoff — read the reason before swapping.
Cheaper, single-wire option if you only need temperature and don't need humidity, pressure, or I2C.
Compare with BME280- Measures: temperature, humidity, pressure → temperature
- Interface: i2c → onewire
Documents
Datasheets
- BME280 DatasheetBosch Sensortec
Frequently asked questions
What voltage does the BME280 run at?
Banana Board does not have a verified operating voltage on file for the BME280 yet — check the datasheet in Documents before wiring it up.
How many pins does the BME280 have?
The BME280 has 4 pins, communicating over I2C. See the full pinout table in Pins & wiring for each pin's role.
Can I simulate the BME280 before ordering hardware?
Not yet — the BME280 does not have a live simulation model in Banana Board today, so validate the wiring here and test on real hardware.
Where is the BME280 datasheet?
Linked in the Documents section on this page, and cited on every spec that came from it.
Related references
Build it, do not just look it up
Describe your circuit in one sentence and Banana Board wires it to these exact pins, validates it, and lays out a fab-ready PCB.