Creative Commons images are CC BY-NC-SA 3.0


added to your
shopping cart

In stock 374 in stock
9.95 1+ units
8.96 10+ units
7.96 100+ units

Description: This is a breakout board for the Bosch BMP180 high-precision, low-power digital barometer. The BMP180 offers a pressure measuring range of 300 to 1100 hPa with an accuracy down to 0.02 hPa in advanced resolution mode. It's based on piezo-resistive technology for high accuracy, ruggedness and long term stability. These come factory-calibrated, with the calibration coefficients already stored in ROM. What makes this sensor great is that it is nearly identical to its former rev, the BMP085!

This breadboard-friendly board breaks out every pin to a 5-pin 0.1" pitch header. VCC can be from 1.8V to 3.6V and is 5V tolerant; we typically run it on a clean, regulated 3.3V supply. The analog and digital supplies (VDDD and VDDA) are tied to a single header pin, but are separately decoupled. It connects to a microcontroller via I²C bus (also known as TWI, or on the Arduino, the "Wire" library).


  • Digital two wire (I²C, TWI, "Wire") interface
  • Wide barometric pressure range
  • Flexible supply voltage range (1.8V to 3.6V)
  • Ultra-low power consumption
  • Low noise measurements
  • Factory-calibrated
  • Includes temperature sensor
  • Low-profile with a small footprint


Comments 20 comments

  • Any feedback on the BMP180 versus the T5403?

  • I hope you can make more soon!

    • We’re trying - there’s a global shortage of these parts, and we’re waiting for a large order of them to arrive.

      • Just looking at the Bosch Sensortec site, are there any plans on carrying the BME280? It adds SPI (while keeping I2C) and also has a humidity sensor in the package

  • just got mine the other day hooked it up to an uno and it worked great. I then hooked it up to a teensy 3.1 and it would just return the max value for each reading. does the library not work with teensy 3.1?

  • The description says “breaks out every pin to a 6-pin 0.1” pitch header" but I only count 5 holes? Simple typo, or I am missing something?

  • Would this function as a vacuum gauge? I need to get fairly precise (under 5PSI) and having it be digital would be fantastic.

  • Is there any idea when these will be back in stock? (Weeks, months, years?)

  • So these sensors are accurate enough to detect ~ 1-foot change in altitude at sea level?

  • Is this known to work with the RaspberryPi?

    • I can’t speak for this particular breakout board, but the BMP180 sensor itself is, yes.

      I’m a little surprised that SparkFun is offering this breakout for twice the price of the Adafruit BMP180 breakout, which includes a regulator and level-shifting. The cost of the sensor itself certainly doesn’t justify the price. Is it possible that someone miscalculated, SparkFun?

      • Great point, there’s a global shortage of chips right now so we’re paying a premium for them, which worked its way into the initial retail price. We’ve lowered it in anticipation of larger quantities being available.

        Also note that in most cases* you shouldn’t need level shifting to connect this to a 5V system. I2C is an open-drain bus, which means that the host processor will actively drive the signal to ground for “low”, but will let it float to the pull-up voltage (3.3V) for “high”. 3.3V still counts as “high” on most 5V microprocessors, so as long as you’re powering this board with 3.3V (available on most Arduinos), it will work very well when connected to a 5V processor.

        • The fine print is that you shouldn’t mix 5V and 3.3V sensors on the same bus when doing this, and the pullup resistors should be tied to 3.3V (which they are on this board). The weak pull up resistors turned on by Arduino’s Wire library will raise the “high” voltage to 3.6V when combined with the pullup resistors on this board, but that’s within the limits of the chip. So check out the hook-up guide and connect away!
        • Thanks for the additional “fine print” information. I want to ask a clarification on 3.3V vs 5V.

          you shouldn’t mix 5V and 3.3V sensors on the same bus

          I use an Arduino connected to a DS2482-800 (8-channel 1-Wire master) with a network of DS18B20 temp sensors. The 1-Wire master is powered by 5V off of the Arduino and all temp sensors run in parasitic power mode off of the 1-Wire master. My intent is to connect the BMP180 to one of the channels of the 1-Wire master. If I understand your comment correctly, I should not connect a 3.3V sensor to a system running at 5V. I expect the solution is to try powering the entire system on 3.3V and change the pull-up resistors. Not sure if all my temp sensors will still work in parasitic power mode but it’s worth a try. Any thoughts?

          • Note that “1-Wire” is not the same as “Wire”, which is Arduino’s name for I2C (we agree, it’s confusing).

            The BMP180 isn’t designed to function on a 1-Wire bus, so you’ll need to connect it to a Wire/I2C bus. You should be able to run both of these buses simultaneously and separately on an Arduino. The example code has comments on how to connect the BMP180 to your Arduino, and there’s more information on Wire/I2C in our tutorial: Good luck!

Related Products