Table of Contents

Looking for a clear BMP280 vs BME280 guide? The BME280 sensor is a top pick for measuring temperature, humidity, pressure (it’s a true temperature humidity pressure sensor!).
Need practical tips? We cover BME280 pinout, BMP280 schematic, and BMP280 wiring—plus how to power BMP280 (choose BMP280 3.3V or BMP280 5V wisely!). We also include steps for BME280 Arduino setups and where to find the handy BME280 datasheet. Simple, no fluff—perfect for your project!

What is BMP280 and BME280 Barometric Pressure Sensor ?

The BMP280 sensor is a small-sized, low-power digital compound sensor based on Bosch’s APSM process. It can measure ambient temperature and atmospheric pressure. The pressure-sensitive element is a low-noise, high-precision, high-resolution absolute atmospheric pressure piezoelectric sensor. The temperature sensing element features low noise and high resolution, and the temperature value can be used for temperature compensation and self-calibration of the pressure.

The BME280 sensor is an environmental sensor that integrates temperature, humidity and pressure. This sensor is characterized by high precision, multiple functions and small size, making it suitable for use in battery-powered devices such as mobile phones, GPS and smart phones. It also provides SPI and I2C interfaces for quick prototyping. It can be widely applied in environmental monitoring, floor height measurement, IoT control and other fields.

Working Principle

BME280

BME280 Schematic Diagram

BME280 Schematic Diagram

BME280 Working Principle

  • Analysis of BME280 Structure
  1. BME280 Sensor Construction and Main Components

    The BME280 sensor is a comprehensive environmental sensor that can measure temperature, humidity, and atmospheric pressure. It consists of a microstructured silicon capacitive pressure sensor, a thermistor (NTC) for temperature measurement, and a humidity sensor. These sensors are integrated onto a single micro-mechanical element through a conversion layer.

The main components of the sensor include:

(1) Capacitive Pressure Sensor: Measuring absolute pressure using the capacitance principle, its sensitivity can be adjusted as needed.

(2) NTC Temperature Sensor: NTC (negative temperature coefficient) thermistor for temperature measurement, featuring high precision and rapid response.

(3) Polymer Humidity Sensor: A humidity sensor made of polymer film material, utilizing the principle of dielectric humidity sensors, is highly sensitive to the moisture content of the surrounding environment.

  1. BME280 Sensor Measurement Principle

    The BME280 sensor utilizes micro-electromechanical systems (MEMS) technology, integrating mechanical and electronic components onto a tiny chip. Temperature measurement is based on the characteristic that the resistance of the NTC thermistor changes with temperature. Humidity measurement is achieved through the change in dielectric constant of the humidity sensor with environmental humidity. Atmospheric pressure measurement is obtained by measuring the change in capacitance between the two layers of the capacitive pressure sensor.

  • BME280 Measurement Function
  1. BME280 Temperature Measurement Mechanism

    The BME280 temperature measurement principle is based on the characteristics of NTC thermistors. As the temperature rises, the resistance of the NTC decreases, while when the temperature drops, the resistance increases. By measuring the change in the resistance, the surrounding temperature can be inferred. The BME280 converts this analog signal into a digital signal and outputs the temperature data.

  1. BME280 Humidity Measurement Mechanism

    The measurement of humidity relies on the property of the polymer film on the humidity sensor, which changes its dielectric constant with humidity. The dielectric constant of the film changes as the amount of water vapor adsorbed on the film changes, resulting in a corresponding change in the capacitance of the film. By measuring this capacitance, the BME280 can calculate the relative humidity of the current environment.

  1. BME280 Atmospheric Pressure Measurement Mechanism

    Atmospheric pressure measurement is accomplished through a capacitive pressure sensor. The pressure sensing element of the sensor consists of two plates separated by a very small gap. Changes in environmental pressure cause the size of the gap to change, resulting in a change in the capacitance between the two plates. The BME280 converts this change in capacitance into a digital signal and then calculates the pressure value.

  • BME280 Electronic Characteristics
  1. BME280 Power Supply and Voltage Range

    The BME280 sensor requires a stable power supply, typically using a 3.3V or 5V power source. The operating voltage range is between 1.71V and 3.6V, allowing the sensor to be used in various different systems. The supply current is approximately 150μA, and it can be reduced to below 1μA in sleep mode.

  1. I2C and SPI Communication Protocols

    The BME280 sensor supports two digital communication protocols: I2C and SPI. I2C communication uses two signal lines (SCL and SDA) to achieve bidirectional communication, while SPI communication uses four signal lines (SCK, SDO, SDI, CS) for communication. The I2C interface is convenient for connecting devices such as microcontrollers, while the SPI interface is suitable for applications requiring high-speed data transmission. The BME280 supports I2C rates up to 3.4MHz and SPI rates of 8MHz, ensuring efficient data transmission.

BME280 Measurement Technology

1、​Temperature​ sensing uses an NTC thermistor with ±0.5°C accuracy

2、​Humidity​ measurement employs a capacitive polymer sensor

3、​Pressure​ detection utilizes a MEMS piezoresistive sensor

    The ​BME280sensor​ combines these measurements through advanced digital signal processing, providing calibrated digital outputs via ​I2C​ or ​SPI.

BMP280

BMP280 Schematic Diagram

BMP280 Schematic Diagram

BMP280 Working Principle

    The minimum operating voltage of this BMP280 sensor ranges from 1.7V to 3.6V. The BMP280 consists of a piezoresistive sensing element, which is then connected to an A/D converter. This converter provides conversion results with specific sensor compensation, as well as a digital interface, and is equipped with a built-in IIR filter to minimize interference in the output data.

    The BMP280 can be interfaced using either the I2C or SPI protocols. It can measure pressure ranging from 300 to 1100 hPa, with an accuracy of ±1%, a temperature range of -40 to +85°C, with an accuracy of ±1%, and can provide an approximate altitude through some calculations. The operating voltage of the sensor is 1.2V to 3.6V, and the current consumption in sleep mode is 0.1uA, making it suitable for low-power applications in embedded electronic products. For more information about the sensor and its technical specifications, you can refer to the BMP280 Datasheet.

  • BMP280 Parameter Configuration

    The use of the BMP280 sensor is relatively straightforward. Before starting to collect data using the BMP280 sensor, a series of parameter settings must be carried out. These settings include selecting the appropriate working mode, configuring the IIR filter to optimize data quality, setting the required sampling quantity, and determining the appropriate sampling frequency to meet specific measurement requirements. Through these meticulous parameter configurations, the BMP280 sensor can ensure accurate data collection and output of the required environmental data.

  • BMP280 Data Acquisition Process

The test startup process of BMP280:

① Read the ID of BMP280 (0x58)

② Read out the values of all compensation registers

③ Reset BMP280

④ Configure the data acquisition accuracy and other modes of BMP280

⑤ After a delay, read the collected data from the registers

     BMP280 has a temperature sensor and a pressure sensor. Through the I2C interface, the temperature and pressure data can be read.

    The eight-bit device address of BMP280 is 111011X0, where X represents the SDO configuration status. When SDO is low, the device address is 11101100 (0XEC), and when SDO is high, the device address is 11101110 (0XEE). From the schematic diagram, it can be seen that SDO is default grounded, so we don’t need to connect anything. When finding the I2C address, it is (0xEC).

    The data read by BMP280 is the original value converted by the internal ADC of the chip, not the final atmospheric pressure value. Conversion is required to obtain the pressure value, and the conversion is calculated based on the coefficients in the registers of BMP280.

  • BMP280 Working Mode

    The BMP280 sensor offers three different working modes: sleep mode, forced mode, and normal mode. In sleep mode, the sensor stops data collection, but the data in the registers remains unchanged. The forced mode allows the sensor to perform a single data collection, and after the collection is completed, it will automatically enter the sleep state. The normal mode causes the sensor to continuously cycle and perform multiple data collections.

  • BMP280 Main Functions

① Air pressure measurement: The BMP280 can be used to measure atmospheric pressure and supports SPI and IIC communication interfaces. Compared with the previous generation product BMP180, its accuracy has been significantly improved. Its measurement range is from 300 to 1100 hPa, covering a wide range of air pressure.

② Temperature measurement: In addition to air pressure measurement, the BMP280 also has a built-in temperature sensor, which can measure temperature simultaneously. This feature makes the BMP280 more advantageous in various meteorological monitoring, equipment temperature control and other scenarios.

BMP280 Operation Modes

  1. Sleep mode (0.1μA current)
  2. Forced mode (single measurement)
  3. Normal mode (continuous measurement)

The ​BMP280 Sensor​ Features

  1. Built-in 32-bit calibration data
  2. IIR filtering for stable readings
  3. 16-bit ​pressure​ and ​temperature​ resolution

Pin Functions

  • BME280 Pin Functions

Pin

Definition

VCC

Power supply positive (+3.3V, remember not to connect to 5V)

GND

Grounding

SCL

I2C communication mode clock signal

SDA

I2C communication mode data signal

CSB

The pins used in the SPI communication mode, the chip select pin, is activated by pulling it low.

SDO

Sensor address control bit

  • BMP280 Pin Functions

Pin

Definition

VCC

Positive power supply

GND

Grounding

SCL

IIC serial clock line

SDA

IIC serial data line

3-wire SPI serial data input/output port

4-wire SPI serial data input port

CSB

Chip select, a pin used in SPI communication mode. When connected to a high level (default), it is for IIC communication. When connected to a low level, it is for SPI communication.

SDO

IIC address selection bit

4-wire SPI serial output port

Technical Specifications

  • BME280 Key Parameters

Supply Voltage

1.71V~3.6V,suitable for various microcontroller platforms.

Working Current

Low power consumption design. The typical operating current is 2.8 µA (pressure measurement) and 350 µA (temperature measurement), and it is only 0.1 µA in sleep mode.

Operating Temperature Range

-40℃~+85℃,suitable for various environmental conditions.

Temperature Measurement Accuracy

±1℃(Within the range of -25℃ to +85℃)

Humidity Range

0-100% RH

Humidity Measurement Accuracy

±3% RH(At 25 degrees Celsius)

Pressure Range

300~1100hPa(hundred pascals),it can cover a wide range of application scenarios from low altitudes to high altitudes.

Air Pressure Measurement Accuracy

±1 hPa(under standard conditions)

Interface

Supports SPI and I2C communication interfaces, providing flexible connection options.

I2C address

0x76 or 0x77

  • BMP280 Key Parameters

Supply Voltage 

DC:1.71V~3.6V

Operating Temperature Range

-40℃~+85℃

Pressure Range

300~1100hPa(hundred pascals)

Air Pressure Measurement Error

±1hPa

Digital Interface Type

IIC(slave mode 3.4MHz)

or SPI (3-wire or 4-wire mode with a frequency of 10 MHz)

I2C address

0x76 or 0x77

BME280 VS BMP280 VS BMP180

Feature

BMP180

BMP280

BME280

Measuring physical quantities

Pressure and temperature

​Pressure and temperature

​Pressure, temperature, humidity

Communication interface

​I²C

​I²C, SPI

​I²C, SPI

Working voltage

​1.8V – 3.6V

1.71V~3.6V

1.71V~3.6V

Current consumption @3 Pa RMS noise

~12μA (typical value)

~2.7μA (typical value)

~3.6μA (typical value)

Temperature range

​0°C ~ +65°C

​-40°C ~ +85°C

-4​0°C ~ +85°C

Humidity measurement

​0% – 100% RH, ±3% RH accuracy​ (typical value)

Core differences and advantages

Old model, basic functions

BMP180 upgraded version, lower power consumption, smaller size, supports SPI

Three-in-one environmental sensor, with high functional integration degree

Main application fields

Basic DIY projects, simple weather station, altimeter

Drones, smart phones, weather monitoring, battery-powered devices

Internet of Things (IoT) devices, smart home appliances, weather stations, fitness trackers, HVAC systems

    The BMP280 sensor is an upgraded version of the BMP180, inheriting its excellent characteristics of high precision, linearity and long-term stability.

    Compared to the BMP180, the data of the BMP280 demonstrates remarkable stability. As a MEMS device, it also has zero bias error, that is, when the true value is 0, the measured value by the sensor is not completely accurate. However, its proportional factor error is relatively small, so in applications where measuring height differences is required, the BMP280 is a practical choice.

Feature

  • BME280 Feature

(1) Monitoring of combined environmental parameters: temperature, humidity and air pressure.

(2) High-precision measurement:

    ① Humidity measurement range: 0% to 100% relative humidity, resolution: 0.008%RH, noise: 0.02%RH.

    ② Pressure measurement range: 300 to 1100 hPa, capable of covering a wide range of applications from low altitudes to high altitudes.

    ③ Temperature measurement range: -40°C to +85°C, resolution: 0.01°C.

(3) Low-power design:

    ① Operating voltage: 1.71V to 3.6V, suitable for various microcontroller platforms.

    ② Typical operating current: 2.8µA (pressure measurement) and 350µA (temperature measurement), only 0.1µA in sleep mode.

(4) Compact size: Sensor size is 15.5mm x 11.9mm x 2.6mm, suitable for portable devices.

(5) Flexible interface: Supports SPI and I2C communication interfaces, providing flexible connection options.

  • BMP280 Feature

(1) High precision: The relative accuracy is ±0.12 hPa (equivalent to ±1 meter), and the sensor’s power consumption is only 2.7 μA.

(2) Small size: It is packaged in an 8-pin metal-covered LGA, occupying an area of only 2.0×2.5 mm².

(3) Low power consumption: Suitable for battery-powered devices.

(4) Dual-mode operation: Supports I2C and SPI communication interfaces.

Arduino Tutorial

BME280 Arduino

BME280 Pinout

  • BME280     Arduino

       VCC  ——>  3.3V

       GND  ——>  GND

       SCL    ——>  SCL

       SDA    ——>  SDA

  • OLED         Arduino

       VCC  ——>  3.3V

       GND  ——>  GND

       SCL    ——>  A5

       SDA    ——>  A4

BME280 Arduino Code

				
					#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <Adafruit_BME280.h>

// ZJYM242 OLED display settings (128x64 resolution)
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET -1
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

// BME280 sensor settings
Adafruit_BME280 bme;

void setup() {
  Serial.begin(9600);
  
  // Initialize OLED display
  if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
    Serial.println(F("OLED initialization failed! Check wiring."));
    for(;;);
  }
  
  // Initialize BME280 sensor
  if (!bme.begin(0x76)) {
    Serial.println("BME280 not found! Check wiring.");
    for(;;);
  }
  
  // Show splash screen
  display.clearDisplay();
  display.setTextColor(SSD1306_WHITE);
  display.setTextSize(1);
  display.setCursor(30, 25);
  display.println("ZJYM242 OLED");
  display.setCursor(20, 40);
  display.println("BME280 Sensor");
  display.display();
  delay(2000);
}

void loop() {
  // Read sensor data
  float temp = bme.readTemperature();
  float humi = bme.readHumidity();
  float pres = bme.readPressure() / 100.0F;
  
  // Clear display
  display.clearDisplay();
  display.setTextColor(SSD1306_WHITE);
  display.setTextSize(1); // Use small font size to ensure full line display
  
  // Display temperature (first line)
  display.setCursor(5, 5);
  display.print("Temperature: ");
  display.print(temp, 1);
  display.print(" C");
  
  // Display humidity (third line, with spacing from previous parameter)
  display.setCursor(5, 25); // Approximately 20 pixels spacing
  display.print("Humidity: ");
  display.print(humi, 0);
  display.print(" %");
  
  // Display pressure (fifth line, with spacing from previous parameter)
  display.setCursor(5, 45); // Another ~20 pixels spacing
  display.print("Pressure: ");
  display.print(pres, 1);
  display.print(" hPa");
  
  // Update display
  display.display();
  
  delay(2000);
}
				
			

Important Notes:

1、​Power Supply:

    Both devices should use 3.3V power (some OLEDs may tolerate 5V but BME280 is strictly 3.3V)

    If your OLED requires 5V, you’ll need to power them separately

2、​I2C Addresses:

    The code assumes:

        BME280 at address 0x76 (common for many breakout boards)

        OLED at address 0x3C (common default)

    If you get initialization errors, check addresses with an I2C scanner

3、​Pull-up Resistors:

    Most breakout boards include 4.7kΩ pull-up resistors

    If not, add 4.7kΩ resistors between SDA/3.3V and SCL/3.3V

BME280 Effect Demonstration

Application Scenarios

  • BME280Application Scenarios

The BME280 sensor, due to its high accuracy and multi-functional features, has extensive applications in various fields. Some typical application scenarios include:

① Indoor and outdoor environment monitoring systems: It can monitor temperature, humidity and air pressure in real time, and is used in homes, offices or agricultural greenhouses.

② Weather stations: It is used to collect meteorological data and help analyze weather change trends.

③ Smart homes: Integrated into smart home systems, it is used to regulate indoor temperature, humidity and air pressure, improving living comfort.

④ Mobile devices: Due to its low power consumption feature, the BME280 can be used as an environmental monitoring sensor for mobile devices (such as smartphones, wearable devices).

⑤Drones and remote sensing equipment: It provides precise environmental information, which is crucial for improving flight safety and measurement accuracy.

  • BMP280Application Scenarios

The BMP280 stands out among various pressure sensors due to its high accuracy, low power consumption and compact package size. It not only can accurately measure pressure and temperature, but also can calculate altitude based on pressure changes, providing powerful functional support for modern equipment. Whether in meteorological monitoring, unmanned aerial vehicle flight control or indoor navigation, the BMP280 demonstrates outstanding performance and application potential.

Relative Information

BME280/BMP280 Purchase Link

FAQ

1、Can BMP280 measure altitude?

Yes, BMP280 can measure altitude. By combining air pressure and temperature data, BMP280 can calculate the current altitude through certain algorithms. This feature makes BMP280 play an important role in applications that require altitude information.

2、What happens when a barometric pressure sensor goes bad?

When a barometric pressure sensor fails, it typically provides inaccurate or constant readings, which can cause issues in weather forecasting, altitude measurement, and engine performance in vehicles. Common symptoms include erratic data, no output, or failure to respond to environmental changes.

3、How to check if a pressure sensor is working?

To check if a pressure sensor is working, apply a known pressure source (like a calibrated tool) and compare its output signal to expected values using a multimeter or data logger. Ensure it responds accurately to pressure changes without drift or erratic readings.​​

4、Can a BMP280 sensor measure humidity?

No, the BMP280 sensor cannot measure humidity.​​ It is designed specifically for measuring barometric pressure and temperature only. For humidity sensing, you would need a different sensor like the BME280, which includes humidity measurement capabilities.

5、What are the limitations of BMP280 sensor?

The BMP280 sensor cannot measure humidity, has limited temperature accuracy (±1°C), and may require calibration for precise altitude measurement. It also operates within a limited pressure range (300-1100 hPa) and is sensitive to electromagnetic interference.​​

6、What is the lifespan of a pressure sensor?

The lifespan of a pressure sensor typically ranges from 5 to 15 years, depending on usage conditions such as temperature extremes, mechanical stress, and exposure to corrosive media. Proper calibration and protection can extend its longevity.

Leave a Reply

Your email address will not be published. Required fields are marked *