# BME680 (temperature, humidity, pressure, gas): specs and pinout

> A Bosch Sensortec environmental sensor that measures temperature, humidity, pressure and a gas-sensor resistance, over I2C or SPI.

[HTML version](https://soldr.ai/docs/components/bme680)

[Docs](https://soldr.ai/docs) / [Components](https://soldr.ai/docs/components)

A Bosch Sensortec environmental sensor that measures temperature, humidity, pressure and a gas-sensor resistance, over I2C or SPI.

Every value cites its sourceChip-level pinout

[Buy on Compoden](https://compoden.com/products/bme680-sensor-module-temp-humidity-pressure-gas-i2cspi)

## Specs

| Spec | Value | Source |
|---|---|---|
| Main supply VDD | 1.71 V to 3.6 V | source Features (p.3); Table 1 (p.8) |
| Interface supply VDDIO | 1.2 V to 3.6 V | source Features (p.3) |
| Interface | I2C up to 3.4 MHz; SPI 3-wire and 4-wire up to 10 MHz | source Features (p.3) |
| I2C address | 0x76 when SDO is GND; 0x77 when SDO is VDDIO | source section 6.2 (p.38) |
| Operating range | -40 C to +85 C, 0 to 100 %RH, 300 to 1100 hPa | source Features (p.3) |
| Humidity absolute accuracy | +/-3 %RH (20 to 80 %RH, 25 C, including hysteresis) | source Table 6 (p.10) |
| Pressure absolute accuracy | +/-0.6 hPa typ (300-1100 hPa, 0-65 C); relative accuracy +/-0.12 hPa typ (700-1100 hPa, 25-40 C, constant humidity); full-accuracy temperature range 0-65 C | source Table 7 Pressure parameter specification, section 1.4 (p.11, read from the rendered page) |
| Temperature absolute accuracy | +/-0.5 C at 25 C | source Table 8 (p.12) |
| Gas heater current | 9 mA to 13 mA at 320 C heater target, VDD 1.8 V | source Table 2 (p.8) |
| Absolute maximum supply | -0.3 V to 4.25 V at VDD and VDDIO | source Absolute maximum ratings (p.13) |

## Power

| | Value | Source |
|---|---|---|
| Supply | VDD 1.71 V to 3.6 V (chip) | source Features (p.3); Table 2 (p.8) |
| Current | 3.7 uA at 1 Hz humidity, pressure and temperature; gas heater 9 mA to 13 mA while heating | source Features (p.3); Table 2 (p.8) |

## Chip pins
These are the pins of the chip on the module, from the chip datasheet. The module's own header may label or expose them differently.

These are the 8 pads of the Bosch LGA chip, not the module header. The module board (regulator, pull-ups, header order, any 5 V tolerance) is not covered by an official document.

| Pin | Function | Voltage | Notes | Source |
|---|---|---|---|---|
| 1 | GND | 0 V | Ground | source Table 24 (p.44) |
| 2 | CSB | VDDIO | Chip select (SPI); tied to VDDIO for I2C | source Table 24 (p.44) |
| 3 | SDI | VDDIO level | SDA in I2C; SDI in SPI 4-wire; SDI/SDO in SPI 3-wire | source Table 24 (p.44) |
| 4 | SCK | VDDIO level | SCL in I2C; clock in SPI | source Table 24 (p.44) |
| 5 | SDO | VDDIO level | SPI data out; in I2C, GND for default address | source Table 24 (p.44) |
| 6 | VDDIO | 1.2 V to 3.6 V | Digital / interface supply | source Table 24 (p.44) |
| 7 | GND | 0 V | Ground | source Table 24 (p.44) |
| 8 | VDD | 1.71 V to 3.6 V | Analog supply | source Table 24 (p.44) |

## Build with it
Project ideas for the BME680 (temperature, humidity, pressure, gas). Each link opens Soldr with the prompt filled in; Soldr assigns the pins, checks power and shows how to wire every part.

- [Desk weather station](https://app.soldr.ai/?prompt=I%20want%20to%20build%20a%20desk%20weather%20station%20with%20an%20ESP32%2C%20a%20BME680%20sensor%20module%20and%20an%20OLED%20showing%20temperature%2C%20humidity%20and%20pressure): The chip runs at 3.3 V and I2C with 4.7 kohm pull-ups is the sheet&#x27;s recommended connection.
- [Wi-Fi room data logger](https://app.soldr.ai/?prompt=I%20want%20to%20build%20a%20room%20environment%20logger%20with%20a%20NodeMCU%20ESP8266%20and%20a%20BME680%20sensor%20module%20that%20posts%20readings%20over%20Wi-Fi): A 3.3 V board suits the chip&#x27;s supply range. Treat the gas value as a trend only; a learning project.
- [Room air trend display](https://app.soldr.ai/?prompt=I%20want%20to%20build%20a%20room%20air%20trend%20display%20with%20an%20ESP32%2C%20a%20BME680%20sensor%20module%20and%20a%202.4%20inch%20TFT%20display): Show the gas-resistance trend next to humidity as a learning project; not a safety or health reading.
- [Altitude and pressure logger](https://app.soldr.ai/?prompt=I%20want%20to%20build%20a%20pressure%20and%20altitude%20logger%20with%20an%20ESP32%2C%20a%20BME680%20sensor%20module%20and%20an%20OLED): The sheet gives a 300 to 1100 hPa range, enough for typical altitudes in a building or on a hike.

## Common mistakes

- Do not feed 5 V to the bare chip: VDD and VDDIO are limited to 3.6 V (4.25 V absolute maximum). Check whether your module board has a regulator and level shifting before using 5 V (source: [link](https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme680-ds001.pdf), p.3 and p.13).
- Do not leave SDO floating in I2C mode: it selects the address (GND = 0x76, VDDIO = 0x77) and the sheet says it cannot be left unconnected (source: [link](https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme680-ds001.pdf), section 6.2, p.38).
- The gas channel reports a sensor resistance, and the sheet describes a stabilization period on first use; treat it as a trend, not a calibrated air-quality or safety reading (source: [link](https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme680-ds001.pdf), stabilization time status, p.25).

## Not covered by the official source

- Module board not documented by an official source.

## Sources

- [link](https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme680-ds001.pdf) (BME680 Datasheet rev 1.9, Feb 2024; Bosch Sensortec)
