BME688 Gas Sensor Pinout

The BME688 is a compact, digital 4-in-1 environmental sensor that measures gas, humidity, pressure, and temperature in a single package — purpose-built for mobile and connected devices where size and energy efficiency are non-negotiable.

Its gas sensing capability is particularly noteworthy — it can detect volatile organic compounds (VOCs), volatile sulfur compounds (VSCs), carbon monoxide, hydrogen, and a range of other gases down to parts-per-billion (ppb) concentrations. This makes it well-suited for applications like indoor air quality monitoring, breath analysis, smart home systems, and wearables.

It is a hardware-compatible drop-in replacement for the BME680, but with the gas scanner function and AI capability layered on top.

What is BME688?

BME688 sensor

The BME688 is the first gas sensor with Artificial Intelligence and integrated high-linearity, high-accuracy pressure, humidity, and temperature sensors, housed in a robust 3.0 × 3.0 × 0.9mm package.

Additionally to all features of the BME680, the BME688 has a gas scanner function. In standard configuration, the presence of volatile sulfur compounds is detected as an indicator of bacteria growth. The gas scanner can also be customized with respect to sensitivity, selectivity, data rate, and power consumption.

The customization is done through Bosch’s BME AI-Studio — a desktop tool that lets you train the sensor’s gas scanner on specific target gases or odors for your application, then deploy the resulting configuration to the device.

BME680 vs BME688: The BME688 is a drop-in replacement for the BME680 — it adds a method of programming the gas sensor heater for controlled odor analysis but is otherwise the same hardware. Existing BME680 code and wiring works on the BME688 without modification.

BME688 overview

ParameterValue
Sensor TypeDigital Gas, Humidity, Pressure & Temperature Sensor with AI
Operating Voltage (VDD)1.71V – 3.6V
Interface Voltage (VDDIO)1.2V – 3.6V
Current (humidity + temp @ 1Hz)2.1µA
Current (pressure + temp @ 1Hz)3.1µA
Current (all three @ 1Hz)3.7µA
Current (ULP mode, air quality)90µA
Current (LP mode, air quality)0.9mA
Current (standard gas scan mode)3.9mA
Sleep Current0.15µA
Temperature Range−40°C to +85°C
Humidity Range0% to 100% RH
Pressure Range300 to 1100 hPa
Gas DetectionVOCs, VSCs, CO, H₂, ethanol, breath-VOC
CommunicationI²C (up to 3.4MHz) / SPI (3 and 4-wire, up to 10MHz)
I²C Address0x76 (SDO → GND) or 0x77 (SDO → VDDIO)
Package8-pin LGA, 3.0 × 3.0 × 0.9mm
Compatible BoardsArduino Uno, ESP32, Raspberry Pi

Pinout

BME688 Pinout

PinDescription
VIN / VCCPower supply input (3.3V–5V on most modules)
GNDGround
SCL / SCKI²C Clock or SPI Clock
SDA / SDII²C Data or SPI MOSI
SDOSPI MISO; also selects I²C address
CSSPI Chip Select (leave unconnected for I²C mode)
INT / 3V3Interrupt output on some modules, or 3.3V output on others (depends on module manufacturer)

Working principle

Temperature, humidity, and pressure work identically to the BME680 — forced mode, normal mode, oversampling, IIR filter, and OTP-based compensation all apply in exactly the same way.

The gas scanner is where the BME688 differs. The BME688 measurement period consists of a temperature, pressure, and humidity measurement with selectable oversampling, followed by a heating phase for the gas sensor hot plate and a measurement of the gas sensor resistance.

The gas scanner can operate in two ways:

Standard mode (BSEC library) As a raw signal, the BME688 outputs gas sensor resistance values — the higher the concentration of reducing VOCs, the lower the resistance. Since the raw signal is also influenced by humidity, the BSEC library transforms these values into an IAQ index ranging from 0 (clean air) to 500 (heavily polluted). The algorithms automatically calibrate and adapt to the typical environment where the sensor is operated, considering up to four days of measurement history.

AI scan mode (BME AI-Studio) The gas scan mode and scan rate can be optimized per application using BME AI-Studio. Users collect gas resistance data across a sweep of heater temperatures (a “scan profile”), label the samples in the studio, train a classification model, and deploy it back to the device.

The sensor then outputs a gas scan result percentage alongside the standard IAQ output — enabling detection of specific gases, odors, or environmental events tailored to the application.

Key gas scanner performance figures: F1 score of 0.94 for H₂S scanning, standard scan speed of 10.8 seconds per scan, and an electric charge of 0.18mAh for 5 scans (~1 minute).

Internal Structure of the BME688 Module

The BME688 breakout module is functionally identical in layout to the BME680 breakout, with the same supporting components serving the same roles.

BME688 sensor IC The metal-lid LGA chip at the centre of the board. Physically identical in footprint to the BME680 at 3.0 × 3.0mm, but internally upgraded with a higher gas resistance range enabled at the ASIC level and an extended heater temperature sweep capability that makes the AI gas scanner function possible. All four sensing elements, heater control circuit, OTP calibration memory, and I²C/SPI interface logic are inside this single package.

Filter capacitors Suppress voltage spikes and high-frequency noise on the supply lines. The gas scanner heater draws up to 3.9mA during a scan cycle — significantly more than the microampere-level draws of the environmental sensors — making decoupling especially important to prevent heater switching noise from corrupting pressure and humidity readings.

Pull-up resistors Hold SDA and SCL at a high logic level when idle, as required by the I²C protocol. Included onboard so no external resistors are needed.

Pull-down resistor Holds the SDO pin at GND by default, setting the I²C address to 0x76. Bridging SDO to VCC shifts it to 0x77, allowing two BME688 modules on the same I²C bus.

Specifications

ParameterValue
Supply Voltage (VDD)1.71V – 3.6V
Interface Voltage (VDDIO)1.2V – 3.6V
Current (hum + temp @ 1Hz)2.1µA
Current (pres + temp @ 1Hz)3.1µA
Current (hum + pres + temp @ 1Hz)3.7µA
Current (ULP air quality mode)90µA
Current (LP air quality mode)0.9mA
Current (standard gas scan mode)3.9mA
Sleep Current0.15µA
Temperature Range−40°C to +85°C
Temperature Accuracy±1.0°C
Temperature Resolution0.01°C
Humidity Range0% to 100% RH
Humidity Accuracy±3% RH (20–80% RH, 25°C)
Humidity Response Time (τ0-63%)~8 seconds
Humidity Hysteresis±1.5% RH
Pressure Range300 to 1100 hPa
Pressure Accuracy±0.6 hPa (0°C to 65°C)
Pressure RMS Noise0.12 Pa (equiv. 1.7cm altitude)
Gas DetectionVOCs, VSCs, CO, H₂, ethanol
Gas Response Time (τ33-63%)<1 second (new sensors)
Gas Sensor-to-Sensor Deviation±15%
Gas Scan Speed (standard)10.8 seconds per scan
Gas Scan Charge (5 scans ~1 min)0.18 mAh
H₂S Detection F1 Score0.94
IAQ Scale0 (clean) to 500 (heavily polluted)
AI ToolBME AI-Studio (free, Bosch)
I²C SpeedUp to 3.4MHz
SPI SpeedUp to 10MHz
I²C Address0x76 or 0x77
Chip ID0x61
Package8-pin LGA
Dimensions3.0 × 3.0 × 0.9mm
BME680 CompatibilityFull hardware and software drop-in
Operating Temperature−40°C to +85°C
RoHSCompliant, halogen-free, MSL1

Helpful resources

Leave a Comment