Skip to main content

bme680

Environmental sensor for temperature, humidity, pressure, and air quality (VOC/IAQ) via I2C.

Overview

The bme680 node reads temperature, humidity, pressure, and air quality from the Bosch BME680 sensor. The integrated gas sensor detects VOCs (Volatile Organic Compounds) and calculates an Indoor Air Quality (IAQ) index, making it perfect for smart home air quality monitoring.

4-in-1
Measurements
IAQ
Air Quality Index
VOC
Gas Detection
I2C
Interface

Indoor Air Quality (IAQ) Levels

IAQ Air Quality Recommendation
0-50 Excellent No action needed
51-100 Good No action needed
101-150 Lightly Polluted Increase ventilation
151-200 Moderately Polluted Open windows
201-300 Heavily Polluted Ventilate immediately
301-500 Severely Polluted Leave area, ventilate

Properties

Property Type Default Description
address number 0x77 I2C address (0x76 or 0x77)
interval number 3 Reading interval in seconds
calculateIAQ boolean true Calculate IAQ index (requires warmup)
tempOffset number 0 Temperature compensation offset

Output

{
  "payload": {
    "temperature": 23.5,
    "humidity": 42.3,
    "pressure": 1015.2,
    "gasResistance": 125000,
    "iaq": 45,
    "iaqAccuracy": 3
  },
  "iaqLabel": "Excellent",
  "timestamp": 1640000000000
}

Note: The gas sensor requires 30 minutes of burn-in time for accurate IAQ readings. During warmup, iaqAccuracy will be 0-2.

Example: Air Quality Alert System

Send alerts when air quality drops and control ventilation automatically.

// Function node: Air quality automation
var iaq = msg.payload.iaq;
var accuracy = msg.payload.iaqAccuracy;

// Only act on accurate readings
if (accuracy < 2) {
    return null; // Still warming up
}

var action = null;
var alert = null;

if (iaq > 150) {
    action = "ventilate";
    alert = "Air quality poor (IAQ: " + iaq + "). Opening vents.";
} else if (iaq > 100) {
    action = "fan_low";
    alert = "Air quality declining. Turning on fan.";
} else if (iaq < 75) {
    action = "normal";
}

msg.payload = {
    iaq: iaq,
    action: action,
    alert: alert
};

return msg;

Related Nodes