Interfacing BMP280 Pressure Sensor Module With Arduino

Introduction: Interfacing BMP280 Pressure Sensor Module With Arduino

About: hIOTron is an IoT Based company that offers IoT Platforms, IoT Solutions, IoT Training.

To measure the atmospheric pressure we have used one of the best modules i,e BMP280 Pressure sensor module.


Hardware Components

Arduino Uno

Connecting Wires


LCD 16 X 2

Software Components

Arduino IDE

Step 1: About This Project

BMP280 Pressure Sensor Module The BMP280 sensor module operates with the minimum voltage (VDD) of 1.71V, However, the previous version of this sensor modules operate on 1.8V (VDD). The BMP sensor includes a Pressure sensing element, Humidity sensing element as well as Temperature sensing element which is then attached to Pressure front-end, Humidity front-end and temperature front-end. These front end IC’s are sensitivity analog amplifiers that are utilized in the process of the amplification of small signals. In this integration, the analog values are turned to digital voltage and this voltage is supplied to the logic circuits for further interface.

The BMP280 can be also utilized in mobile phones, tablets, PCs, Portable health care devices, GPS devices, home weather stations, etc. By using this procedure we can simply interface BMP280 with the Arduino.

Know more about suchIoT Devicespractically with the help ofIoT Training Online.

Step 2: Run a Program

#include #include #include #include Adafruit_BMP280 bmp; // I2C //Adafruit_BMP280 bmp(BMP_CS); // hardware SPI //Adafruit_BMP280 bmp(BMP_CS, BMP_MOSI, BMP_MISO, BMP_SCK); LiquidCrystal lcd(9, 8, 5, 4, 3, 2); void setup() { lcd.begin(16,2); Serial.begin(9600); Serial.println(F("BMP280 test")); lcd.print("Welcome to "); lcd.setCursor(0,1); lcd.print("CIRCUIT DIGEST"); delay(1000); lcd.clear(); if (!bmp.begin()) { Serial.println(F("Could not find a valid BMP280 sensor, check wiring!")); while (1); } /* Default settings from datasheet. */ bmp.setSampling(Adafruit_BMP280::MODE_NORMAL, /* Operating Mode. */ Adafruit_BMP280::SAMPLING_X2, /* Temp. oversampling */ Adafruit_BMP280::SAMPLING_X16, /* Pressure oversampling */ Adafruit_BMP280::FILTER_X16, /* Filtering. */ Adafruit_BMP280::STANDBY_MS_500); /* Standby time. */ } void loop() { Serial.print(F("Temperature = ")); Serial.print(bmp.readTemperature()); Serial.println(" *C"); lcd.setCursor(0,0); lcd.print("Temp= "); lcd.print(bmp.readTemperature()); Serial.print(F("Pressure = ")); Serial.print(bmp.readPressure()); Serial.println(" Pa"); lcd.setCursor(0,1); lcd.print("Press= "); lcd.print(bmp.readPressure()); Serial.print(F("Approx altitude = ")); Serial.print(bmp.readAltitude(1018)); /* Adjusted to local forecast! */ Serial.println(" m"); Serial.println(); delay(2000); }

Be the First to Share


    • Meatless Challenge

      Meatless Challenge
    • Fabric Challenge

      Fabric Challenge
    • Eggs Challenge

      Eggs Challenge



    1 year ago on Step 2

    Hi there, thanks for your article but unfortunately, the code which is in the article is not in the readable format and has many errors when compiling, and got a well constructed code from, but initially i got an error saying sensor not found later i read on i2c addresses errors, I checked on I2c address and replaced the i2c hex address. then the sensor worked perfectly. Thanks