Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

Arduino UNO and BME280 Sensor-Based Weather Station with Serial Monitoring

View and Edit Project In Cirkit DesignerImage of Arduino UNO and BME280 Sensor-Based Weather Station with Serial Monitoring

Circuit Documentation

Summary

This circuit involves an Arduino UNO microcontroller interfaced with a BME/BMP280 sensor. The Arduino UNO provides power and communication to the sensor, which measures temperature, pressure, and humidity. The data collected by the sensor is then printed to the Serial Monitor.

Component List

Arduino UNO

BME/BMP280

Wiring Details

Arduino UNO

BME/BMP280

Code

/*
 * This Arduino Sketch initializes the BME/BMP280 sensor and reads
 * temperature, pressure, and humidity data from it. The data is then
 * printed to the Serial Monitor.
 */

#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>

#define BME_SDA A4
#define BME_SCL A5

Adafruit_BME280 bme;

void setup() {
  Serial.begin(9600);
  Wire.begin(BME_SDA, BME_SCL);
  if (!bme.begin(0x76)) {
    Serial.println("Could not find a valid BME280 sensor, check wiring!");
    while (1);
  }
}

void loop() {
  Serial.print("Temperature = ");
  Serial.print(bme.readTemperature());
  Serial.println(" *C");

  Serial.print("Pressure = ");
  Serial.print(bme.readPressure() / 100.0F);
  Serial.println(" hPa");

  Serial.print("Humidity = ");
  Serial.print(bme.readHumidity());
  Serial.println(" %");

  delay(2000);
}

This code initializes the BME/BMP280 sensor and reads temperature, pressure, and humidity data from it. The data is then printed to the Serial Monitor every 2 seconds.