Neu im Shop: BME280 Sensor - AZ-Delivery

Heute möchten wir Ihnen das BME280 Sensor-Modul vorstellen.

 

Das Modul ist mit einem Umgebungssensor von Bosch bestückt. Dieser vereint die 3 verschiedenen Sensortypen: Drucksensor, Luftfeuchtigkeitssensor und Temperatursensor. Dies alles in einem kleinen 8-Pin-Gehäuse.

Dieser befindet sich auf einer kleinen Platine mit 4 Pins: VIN, GND, SCL und SDA.

Das macht es sehr einfach den Sensor über I²C mit einem Mikrocontroller zu verbinden.

Wir verwenden in diesem Beispiel einen AZ-Delivery Mikrokontroller, kompatibel mit Arduino Uno-R3

Dabei verbinden wir folgende Pins:

AZ-Delivery Mikrokontroller, kompatibel mit Arduino Uno R3

BME280 Modul

3,3v

VIN

GND

GND

SCL

SCL

SDA

SDA

 

Wir nutzen für unser Projekt 2 Libraries von Adafruit: „Adafruit Unified Sensors“ und „Adafruit BME280 Library“

 

Falls diese noch nicht installiert sind kann man diese am einfachsten über den Bibliotheksverwalter der Arduino IDE einbinden.

 

Dann über „Datei“ → „Beispiele“ → „Adafruit BME280 Library“ → „bme280test“ den Testsketch öffnen.

Nachdem der Sketch kompiliert und hochgeladen ist, öffnen wir den seriellen Monitor durch klicken auf das Symbol rechts oben (Oder mit der Tastenkombination Strg+Shift+M):

 

Falls nun wie hier die Meldung „Could not find a valid BME280 sensor, check wiring!“ erscheint, muss im Sketch eine Zeile angepasst werden.

 

status = bme.begin();

auf

status = bme.begin(0x76);

 

 

Nun wird der Sensor korrekt ausgelesen:

 

 

Wir hoffen, dass Ihnen unser heutiger Blogbeitrag mit dem neuen BME280 Sensor gefallen hat, und wir freuen uns auf Ihre Kommentare. Bis zum nächsten Beitrag von AZ-Delivery, Ihrem Experten für Mikroelektronik!

ProduktvorstellungenSensoren

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. ESP32 jetzt über den Boardverwalter installieren - AZ-Delivery
  2. Internet-Radio mit dem ESP32 - UPDATE - AZ-Delivery
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1 - AZ-Delivery
  4. ESP32 - das Multitalent - AZ-Delivery