Environmental · Bosch BME280

BME280 — i2c address & wiring

Temperature, humidity and barometric pressure in one tiny package.

Key facts

BME280 at a glance

i2c address
0x760x77
address-selectable via pins/jumpers
Logic voltage3.3–5 V
Typesensor
PartBosch BME280
Ships withQwiic, STEMMA QT
DatasheetBosch BME280 — manufacturer documentation ↗

The chip

What the Bosch BME280 actually is

Integrated environmental sensor measuring temperature, relative humidity and barometric pressure. Combines three calibrated MEMS sensing elements in a single device for weather monitoring, altitude estimation and environmental sensing applications.

Watch out: The classic Amazon bait-and-switch: countless 'BME280' listings ship the cheaper BMP280 — no humidity sensor. Verify before building around it: chip-ID register 0xD0 reads 0x60 on a real BME280 and 0x58 on a BMP280, and a humidity reading stuck at 0 gives it away instantly.

Wiring

How to connect the BME280

HOST · Arduino / ESP32 / Pi BME280 3V3/5V VCC VCC · 3.3–5 V GND GND GND SDA SDA SDA · data SCL SCL SCL · clock 0x76 / 0x77 pull-up resistors to VCC on SDA & SCL — usually already on the breakout

The BME280 talks i2c at address 0x76 (up to 2 selectable addresses, handy when you need more than one on the same bus). It runs at 3.3–5 V, so match your host's logic level — if your host is 5 V and a board on the bus is 3.3 V-only, add a level shifter. Use the compatibility checker to confirm the exact cable for your setup.

Because the address is selectable, you can run several BME280 boards on one bus by setting each to a different address — no extra wiring beyond the shared SDA/SCL.

Wiring is the usual four: power, ground, SDA and SCL, plus pull-up resistors — almost always already fitted on the breakout. Nothing showing up? Run an i2c scan first; if the bus is silent, the 7-step checklist finds it faster than guessing.

Ecosystems

Plug-together options for the BME280

BME280 breakouts ship with Qwiic and STEMMA QT — keyed 4-pin cables carrying power, ground, SDA and SCL, so there's nothing to solder and nothing to wire backwards. Chain it to the next board and keep going.

Running a mixed bench? Those ecosystems interoperate more than their marketing suggests — see every connector pairing for the cable or adapter you need, or the standards overview for how they compare.

Go deeper

Guides covering the BME280

Alternatives

Other environmental boards

Watch the bus

Boards that clash with the BME280

These want addresses the BME280 also answers (0x76, 0x77), so they can't share a bus with it untouched. If one is address-selectable, strap it elsewhere; if not, the conflict guide covers the multiplexer and second-bus routes, and the collision roundup explains why a scan won't warn you.

Get one

Questions

BME280 i2c FAQ

What is the BME280's i2c address?

The BME280 uses 0x76 or 0x77, selected with an address pin or solder jumper on the board. If a scan turns up something unexpected, our i2c address list names the usual suspect for every address.

What voltage does the BME280 run at?

3.3–5 V logic. That range covers both 3.3 V and 5 V hosts, so it drops onto a Pi, ESP32 or Arduino without a level shifter.

Can I use two BME280s on one i2c bus?

Yes — set each one to a different address (0x76, 0x77) using its address pin or jumper, then wire both to the same SDA/SCL. That gives you up to 2 on a single bus before you need a multiplexer.

Does the BME280 work with Qwiic and STEMMA QT?

Yes — BME280 breakouts ship with Qwiic / STEMMA QT, so it plugs straight in with no soldering. Mixing ecosystems? The compatibility checker gives you the exact cable or adapter.

What should I watch out for with the BME280?

The classic Amazon bait-and-switch: countless 'BME280' listings ship the cheaper BMP280 — no humidity sensor. Verify before building around it: chip-ID register 0xD0 reads 0x60 on a real BME280 and 0x58 on a BMP280, and a humidity reading stuck at 0 gives it away instantly.