meta data for this page
This is an old revision of the document!
LamaPLC: BMP/BME Bosch Temperature/Humidity/Pressure sensors with I²C communication
Bosch BMP sensors primarily measure barometric pressure and temperature, while Bosch BME sensors are more comprehensive, adding humidity and, in newer models, gas/air quality sensing.
| Type of measurement | Model | Power voltage | Measurement, range, accuracy | Communication | Note |
|---|---|---|---|---|---|
![]() ![]() Temperature Humidity Air pressure | Bosch BME280 ![]() | 3.3 V (1.71 .. 3.6V) | Temperature measurement range: -40 .. +80 °C Temperature measurement accuracy: ±0.5°C (-40..85) Humidity measurement range: 0..100% RH Humidity measurement accuracy: ±3% Air pressure Range: 300 .. 1100 hPa Air pressure accuracy: ±0.25% | I²C default addr.: 0x76/77 SPI | - |
![]() ![]() Temperature Humidity Air pressure | Bosch BME680 ![]() | 3.3 V (1.71 .. 3.6V) | Temperature measurement range: -40 .. +80 °C Temperature measurement accuracy: ±1.5°C Humidity measurement range: 0..100% RH Humidity measurement accuracy: ±3% Air pressure Range: 300 .. 1100 hPa Air pressure accuracy: ±0.25% | I²C default addr.: 0x76/77 SPI | Direct output of IAQ: Index for Air Quality |
![]() Temperature Air-pressure | Bosch BMP180 ![]() | 3.3 V (1.62 .. 3.6V) | Temperature measurement range: -40 .. +85 °C Temperature measurement accuracy: ±1.5°C Air pressure Range: 4.35PSI .. 15.95PSI (30kPa .. 110kPa) Air pressure accuracy: ±2% | I²C default addr.: 0x77 (fix) | Maximum Pressure: 145.04PSI (1000kPa) Temperature resolution: 0.1 °C Pressure resolution: 1 Pa |
![]() Temperature Air-pressure | Bosch BMP280 ![]() | 3.3 V (1.71 .. 3.6V) | Temperature measurement range: -40 .. +85 °C Temperature measurement accuracy: ±1.5°C Air pressure Range: 4.35PSI .. 15.95PSI (30kPa .. 110kPa) Air pressure accuracy: ±2% | I²C default addr.: 0x76 SPI | Maximum Pressure: 290.08PSI (2000kPa) Temperature resolution: 0.01 °C Pressure resolution: 0.16 Pa |
Moduls
| Type of measurement | Name | Pictures | Sensors | Description |
|---|---|---|---|---|
![]() - Temp - Air-press | GY-68, BMP180 | ![]() | BMP180 | - I²C interface (only 1 modul) - The I²C address on the BMP180 is 0x77. And it is fixed, making it impossible to add multiple sensors to the same I²C bus. - Compatible with Arduino, Atmega328p, ESP and Raspberry |
![]() ![]() - Temp - Humidity - Air press | GY-BME280 | ![]() | BME280 | - I²C interface (max. 2 moduls) - The module's default I2C address is 0x76, which can be easily changed to 0x77 using the provided solder jumper.* - Compatible with Arduino, Atmega328p, ESP, and Raspberry *: To change the i2c address to 0x77, cut the trace between the middle and left copper pads with a sharp knife. Then, add a solder blob between the middle and right copper pads to short them. |
![]() - Temp - Air press | GY-BMP280-3.3,BMP280 | ![]() | BMP280 | - Or I²C interface (max. 2 moduls; up to 3.4 MHz) - Or SPI interface (up to 10 MHz) - Current consumption of sensor BMP280: 2.7µA @ 1 Hz sampling rate - The Chip Select (CSB) and Serial Data Output (SDO) pins of the BMP280 are necessary only when SPI-based (four-wire) communication is applied. I²C is a two-wire interface, comprising SDA and SCK. - Default I²C is: 0x76 (SDO pin low) - To I²C 0x77 address connect pin 6 of the module (SDO) to Vcc, which would typically be the 3.3V supply - Pin 5 of the module (CSB) must be connected to Vcc to select the I²C interface |
Arduino
Arduino wiring
- SCL: A5
- GND: GND
- SDA: A4
- Vdd: 5V
Arduino code
sample
I²C topics on lamaPLC
This page has been accessed for: Today: 1, Until now: 14









