New in the shop: BME280 Sensor

Today we would like to offer you the BME280 Sensor Module Imagine.

 

The module is equipped with an ambient sensor from Bosch. This combines the 3 different sensor types: pressure sensor, humidity sensor and temperature sensor. All this in a small 8-pin case.

It is located on a small board with 4 pins: VIN, GND, SCL and SDA.

This makes it very easy to connect the sensor to a microcontroller via I2C.

In this example, we use a AZ-Delivery microcontroller, compatible with Arduino Uno-R3

We connect the following pins:

AZ-Delivery microcontroller, compatible with Arduino Uno R3

BME280 Module

3.3v

Vin

Gnd

Gnd

Scl

Scl

Sda

Sda

 

We use 2 libraries from Adafruit for our project: "Adafruit Unified Sensors" and "Adafruit BME280 Library"

 

If they are not yet installed, the easiest way to integrate them is via the library manager of the Arduino IDE.

 

Then, via "File" - "Examples" - "Adafruit BME280 Library" - "bme280test" open the test sketch.

After the sketch is compiled and uploaded, we open the serial monitor by clicking on the icon at the top right (or with the key combination Ctrl+Shift+M):

 

If the message "Could not find a valid BME280 sensor, check wiring!" appears as here, a line has to be adjusted in the sketch.

 

status = bme.begin();

On

status = bme.begin(0x76);

 

 

Now the sensor is read out correctly:

 

 

We hope that our blog post today with the new BME280 Sensorand we look forward to hearing from you. Until the next post from AZ-Delivery, your expert in microelectronics!

ProduktvorstellungenSensors

4 comments

Lollo7579

Lollo7579

Hatte das selbe Problem wie foto2004 an einem ESP32 Wroom bis mir die Idee kam SCA & SCL mal zu tauschen und siehe da Sensor läuft. ;-)

Simon Kellner

Simon Kellner

Habe den Sensor zuerst auch mit I2C-Adresse 0×76 nicht zum Laufen bekommen.
Habe dann die Adafruit-Library erweitert, um vorab die Chip-ID auszulesen.
Diese war nicht 0×58 (Default in Adafruit) sondern 0×60. Danach wurden auch die Werte ausgelesen.
→ status = bme.begin(0×76, 0×60);

foto2004

foto2004

Also ich bekomme das Teil absolut nicht zum laufen.

Ich habe es an einem ESP-32 NodeMCU Developmentboard :

VIN = 3V3
GND = GND
SCL = G5
SDA = G4

Hat da jemand eine Idee, es kommt bei mir in dem Testsketch immer dass er das Board nicht finden kann. Habe auch schon versucht die Adresse zu ändern ohne Erfolg .

Dino Schmitz

Dino Schmitz

Hallo,

eine Frage zum Raspberry (3b mit aktuellem Rasbian Stretch). Mit den i2ctools (i2cdetect -y 1) wird der Sensor bei mir erkannt mit adresse x76. Bei Ansprache unter Python wird unabhängig von der verwendeten Bibliothek ein Fehler geworfen. Z.B.:
File “bme280.py”, line 56, in readBME280ID
(chip_id, chip_version) = bus.read_i2c_block_data(addr, REG_ID, 2)
IOError: [Errno 121] Remote I/O error

Ist eine funktionierende Bibliothek bekannt oder gibt es eine andere Lösung?

Vielen Dank

Leave a comment

All comments are moderated before being published

Recommended blog posts

  1. Install ESP32 now from the board manager
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. OTA - Over the Air - ESP programming via WLAN