BME680: 4-in-1 Umweltsensor (Gas, Druck, Temp, Feuchte) – Arduino Guide
Umweltmonitoring erfordert oft mehrere Sensoren (Temperatur, Luftfeuchte, Luftdruck, Gas). Der BME680 von Bosch Sensortec vereint alle vier in einem winzigen Gehäuse (3×3×0,93 mm LGA) mit I²C/SPI-Schnittstelle. Dieser Deep-Dive deckt Specs, Pinout, Arduino-Anbindung (I²C/SPI), Bibliotheken, Code-Beispiele und Anwendungen ab.
Was ist der BME680?
Der BME680 ist ein MEMS-Umweltsensor mit vier Sensorelementen auf einem Chip:
- Temperatur: Hochgenau, hohe Linearität
- Relative Luftfeuchte: Kapazitiv, schnelle Response
- Barometrischer Druck: Piezoresistiv, absolut
- VOC-Gas (IAQ): MOX-Sensor (Metal Oxid) für flüchtige organische Verbindungen – misst Luftqualität (IAQ Index), nicht einzelne Gase
Optimiert für niedrigen Stromverbrauch (Sleep-Mode < 1 µA), kompakte Wearables/IoT-Geräte. Hohe EMV-Festigkeit, Langzeitstabilität.
Genauigkeit (Absolute Accuracy)
Typische Werte: Temp ±0,5 °C (0–65 °C), Feuchte ±3 % rF (20–80 %), Druck ±0,6 hPa (300–1100 hPa). Gas: IAQ-Index 0–500 (0=sauber, 500=stark belastet).
Messbereiche (Operating Range)
- Temperatur: –40 … +85 °C
- Feuchte: 0 … 100 % rF (nicht kondensierend)
- Druck: 300 … 1100 hPa
- Gas: 0 … 500 IAQ Index (VOC, CO, Alkohol, etc.)
Pinout (Breakout-Board, 6 Pins)
| Pin | Name | Funktion |
|---|---|---|
| 1 | VCC | Versorgung 1,7–3,6 V (typ. 3,3 V) |
| 2 | GND | Masse |
| 3 | SCL | I²C Clock / SPI SCK |
| 4 | SDA | I²C Data / SPI SDI (MOSI) |
| 5 | SDO | SPI SDO (MISO) / I²C Adresswahl (Low=0x76, High=0x77) |
| 6 | CS | Chip Select (SPI: Low aktiv; I²C: an VCC oder GND ziehen) |
Schaltplan: Arduino UNO + BME680
Benötigt: Arduino UNO, BME680 Breakout, Breadboard, Jumper-Wires. Unterstützt I²C und SPI.
I²C-Verdrahtung (Standard, 4 Drähte)
- VCC → 3,3 V (nicht 5 V!), GND → GND
- SDA → A4 (UNO), SCL → A5 (UNO)
- SDO → GND (Adresse 0x76) oder VCC (0x77)
- CS → VCC (I²C-Mode erzwingen)
SPI-Verdrahtung (4-Draht, schneller)
- VCC → 3,3 V, GND → GND
- SCK → D13, SDI (MOSI) → D11, SDO (MISO) → D12
- CS → D10 (oder beliebiges Digital-Pin)
Wichtige Bibliotheken (Arduino IDE → Bibliotheken verwalten):
Adafruit BME680 Library(von Adafruit)Adafruit Unified Sensor Library(Dependency)
Nach Installation: Arduino IDE neu starten.
Messwerte auslesen (Code-Walkthrough)
Beispielsketch: Datei → Beispiele → Adafruit BME680 Library → bme680async
Code-Struktur
1. Bibliotheken einbinden
#include <Wire.h>
#include <SPI.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME680.h>
2. Schnittstelle wählen (I²C oder SPI)
Standard: I²C. Für SPI: I²C-Zeilen auskommentieren, SPI-Zeilen aktivieren (Pins definieren).
3. Meeresspiegeldruck (für Höhenberechnung)
#define SEALEVELPRESSURE_HPA (1013.25) – Für präzise Höhenmessung aktuellen lokalen QNH-Wert eintragen.
4. Objekt-Instanziierung (I²C Default)
Adafruit_BME680 bme; // I2C → nutzt Wire (A4/A5). Für SPI: Adafruit_BME680 bme(CS, MOSI, MISO, SCK);
5. setup()
- Serial.begin(115200)
- bme.begin() – Initialisierung, Prüft Chip-ID (0x61)
- Oversampling & Filter setzen (Temp 8×, Hum 2×, Press 4×, Filter 3, Gas Heater 320 °C / 150 ms)
6. loop() – Asynchrones Lesen
bme.beginReading() startet Messung (nicht-blockierend). Nach Ende: bme.endReading() holt Daten. Vermeidet Blockierung des Hauptloops (wichtig für Multitasking).
7. Messwerte ausgeben
Ausgabe: Temperatur (°C), Druck (hPa), Feuchte (%), Gas (kΩ → IAQ), ca. Höhe (m).
Praxis-Demo
- Sketch auf Arduino UNO hochladen
- Serial Monitor öffnen (115200 Baud)
- Reset-Taster drücken → Live-Daten
Anwendungen des BME680
- Smart Home / Building Automation (HVAC-Steuerung, Lüftungsempfehlung)
- Wearables (Smartwatches, Fitness-Tracker – IAQ am Handgelenk)
- Mobile Geräte (Smartphones, Tablets – Umgebungsmonitoring)
- Wetterstationen (lokaler Druck → Vorhersage, Höhe)
- Indoor Air Quality (IAQ) Monitoring (Büros, Schulen, Wohnräume)
- Industrielle Prozessüberwachung (Lackierereien, Labore, Lebensmittel)
- IoT-Node (Batteriebetrieb, Deep Sleep, LoRaWAN/Sigfox/NB-IoT Uplink)
Fazit
Der BME680 ist der Goldstandard für kompakte 4-in-1-Umweltmessung. Ein Chip, vier Messgrößen, niedriger Strom, I²C/SPI, Arduino-ready. Ideal für batteriebetriebene IoT-Nodes, Wearables, Smart Home & Wetterstationen. Die IAQ-Funktionalität (VOC) hebt ihn von reinen TPH-Sensoren (BME280, BMP280) ab. Fragen zur Einbindung? Gerne melden!
Industrietechnik
- Umweltauswirkungen des grenzüberschreitenden E-Commerce bewerten
- Ihr definitiver Leitfaden zum 3D-Druck: Von den Grundlagen bis zu fortgeschrittenen Techniken
- AIaaS entmystifiziert: Der definitive Leitfaden zu AI as a Service
- Field Service Management meistern: Der Experten-Leitfaden für Erfolg
- Logistikmanagement meistern: Ihr vollständiger, bewährter Leitfaden
- Bestandsmanagement meistern: Bewährte Strategien für jedes Unternehmen
- Wartungsmanagement meistern: Effizienz steigern & Kosten senken
- Supply Chain Management meistern: Ein umfassender Leitfaden
- 74LS74 Dual D-Flip-Flop: Referenz, Pinout & Wahrheitstabelle
- MQ-3 Gassensor: Umfassender Leitfaden zur Alkohol-Detektion