Environmental · Bosch BMP180

BMP180 — i2c address & wiring

Bosch's older barometric pressure and temperature sensor — still on countless modules.

Key facts

BMP180 at a glance

i2c address
0x77
fixed address
Logic voltage1.8–3.6 V
Typesensor
PartBosch BMP180
Ships withGrove
DatasheetBosch BMP180 — manufacturer documentation ↗

The chip

What the Bosch BMP180 actually is

Digital barometric pressure sensor with an on-chip temperature sensor, used for weather readings and altitude estimation. The host reads raw pressure and temperature and corrects them with factory calibration coefficients stored in the chip's E²PROM; an oversampling setting trades conversion time for resolution.

Watch out: The address is fixed at 0x77 — no pin to move it. That's one of the two BME280/BMP280 addresses, so a BMP180 and a BME280 at 0x77 collide; move the newer sensor to 0x76. Datasheets also quote it as 0xEE/0xEF — those are just the 8-bit write and read forms of the same 0x77.

Wiring

How to connect the BMP180

HOST · Arduino / ESP32 / Pi BMP180 3V3 VCC VCC · 1.8–3.6 V GND GND GND SDA SDA SDA · data SCL SCL SCL · clock 0x77 pull-up resistors to VCC on SDA & SCL — usually already on the breakout
BMP180 i2c wiring diagram: connect VCC to the host's 3V3 pin (1.8-3.6 V), GND to ground, SDA to SDA and SCL to SCL. i2c address 0x77.
BMP180 wiring — host to board over SDA, SCL, power and ground — free to save and share under CC BY 4.0 with credit to i2c.net.

The BMP180 talks i2c at address 0x77. It runs at 1.8–3.6 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.

The address is fixed, so two BMP180s can't share a bus directly — the address-conflict guide covers the workarounds (multiplexer, second bus).

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 scanner first; if the bus is silent, the 7-step checklist finds it faster than guessing.

Ecosystems

Plug-together options for the BMP180

BMP180 breakouts ship with Grove — 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.

Alternatives

Other environmental boards

Watch the bus

Boards that clash with the BMP180

These want an address the BMP180 also answers (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

BMP180 i2c FAQ

What is the BMP180's i2c address?

The BMP180 sits at a fixed address of 0x77. It can't be changed, so two of them can't share one bus without a multiplexer or a second bus.

What voltage does the BMP180 run at?

The chip runs from 1.8–3.6 V, so a bare BMP180 must never see 5 V. Many modules (Seeed's Grove board among them) add a regulator and accept 3.3 V or 5 V — check your module before wiring it to a 5 V Arduino.

Can I use two BMP180s on one i2c bus?

Not directly — every BMP180 answers to 0x77, so two on one bus would collide. Use a TCA9548A multiplexer to give each its own channel, or put the second one on a separate bus.

Does the BMP180 work with Grove?

Yes — BMP180 breakouts ship with Grove, 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 BMP180?

The address is fixed at 0x77 — no pin to move it. That's one of the two BME280/BMP280 addresses, so a BMP180 and a BME280 at 0x77 collide; move the newer sensor to 0x76. Datasheets also quote it as 0xEE/0xEF — those are just the 8-bit write and read forms of the same 0x77.