LamaPLC: ENS ScioSense Multi-gas sensors with I²C communication

ENS ScioSense Multi-gas sensors with I²C communication The ScioSense ENS160 is a digital multi-gas sensor tailored for indoor air quality (IAQ) monitoring, delivering fully processed outputs such as eCO₂, TVOC, and AQI. It employs advanced Metal Oxide (MOX) technology combined with on-chip algorithms to ensure high stability and accuracy.

The sensor's on-chip processing provides data including equivalent CO₂ (eCO₂), Total VOC (TVOC), and an Air Quality Index (AQI).

Key Features

  • Intelligent On-Chip Algorithms: The sensor handles complex data processing internally, reducing the burden on the host microcontroller (MCU). It performs:
    • Automatic Baseline Correction (ABC) for long-term stability.
    • Temperature and Humidity Compensation (requires an external T/H sensor input like the AHT21).
    • Calculation of processed outputs (eCO₂, TVOC, AQI).
  • Multiple IAQ Outputs:
    • AQI (Air Quality Index): A simple 1 (excellent) to 5 (unhealthy) index.
    • TVOC (Total Volatile Organic Compounds): Concentration ranging from 0 ppb to 65,000 ppb.
    • eCO₂ (Equivalent CO₂): Calculated concentration ranging from 400 ppm to 65,000 ppm.
  • Connectivity: Supports both I²C and SPI digital interfaces for flexible integration with microcontrollers.
  • Fast Operation: Offers a warm-up time of less than 3 minutes, much faster than conventional sensors.
  • Low Power Consumption: Multiple operating modes, including a deep-sleep mode, allow for use in battery-powered IoT applications.

Specifications Summary

SpecificationValue
Supply VoltageVDD: 1.71V - 1.98V; VDDIO: 1.71V - 3.6V
InterfaceI²C (0x53/0x52 selectable address) or SPI
Operating Temperature-40°C to +85°C
Operating Humidity5% to 95% RH (non-condensing)
DimensionsCompact 3.0mm x 3.0mm x 0.9mm LGA package
Warm-up Time<3 minutes for valid data; 24h+ for optimal accuracy

Moduls

ENS-160 modul

ENS-160 modul The ENS160 is a digital multi-gas sensor from ScioSense that uses metal-oxide (MOX) technology to detect air quality. Most modules (like those from Adafruit, SparkFun, or DFRobot) also include an AHT21 temperature and humidity sensor to provide compensation data for the ENS160, as air quality readings are sensitive to environmental conditions.

If you'd like to support the development of the site with the price of a coffee — or a few — please do so here.

Here's a handy tip: you can quickly save this page as a PDF by clicking “export to PDF” in the menu on the right side of the screen.

2026/02/14 23:38

Arduino & ENS-160 modul

Wiring (I²C Mode)

The sensor typically operates on 3.3V or 5V (depending on the breakout board's voltage regulator).

  • VIN: 3.3V or 5V (Match your Arduino's logic level)
  • GND: Ground
  • SDA: Pin A4 (on Uno/Nano)
  • SCL: Pin A5 (on Uno/Nano)
  • ADDR (optional): Connect to GND for address 0x52 or VCC (or leave floating) for 0x53.

Arduino Example Code

You will need to install the Adafruit ENS160 and Adafruit AHTX0 libraries via the Arduino Library Manager.

#include <Wire.h>
#include <Adafruit_ENS160.h>
#include <Adafruit_AHTX0.h>
 
Adafruit_ENS160 ens160;
Adafruit_AHTX0 aht;
 
void setup() {
  Serial.begin(115200);
  Wire.begin();
 
  // Initialize AHT21 (Temperature/Humidity)
  if (!aht.begin()) {
    Serial.println("Could not find AHT sensor!");
    while (1);
  }
 
  // Initialize ENS160 (Air Quality)
  if (!ens160.begin()) {
    Serial.println("Could not find ENS160 sensor!");
    while (1);
  }
 
  // Set operating mode: STANDARD, DEEP_SLEEP, or IDLE
  ens160.setMode(ENS160_OPMODE_STD);
}
 
void loop() {
  sensors_event_t humidity, temp;
  aht.getEvent(&humidity, &temp);
 
  // Send environmental data to ENS160 for better accuracy
  ens160.setTempHum(temp.temperature, humidity.relative_humidity);
 
  if (ens160.available()) {
    ens160.measure(true); // Perform measurement
 
    Serial.print("AQI: "); Serial.print(ens160.getAQI()); // 1 (Excellent) to 5 (Unhealthy)
    Serial.print(" | TVOC: "); Serial.print(ens160.getTVOC()); Serial.print(" ppb");
    Serial.print(" | eCO2: "); Serial.print(ens160.geteCO2()); Serial.println(" ppm");
  }
 
  delay(2000); // 2-second interval recommended
}

Key Sensor Outputs

The ENS160 provides fully processed air quality data:

  • AQI (Air Quality Index): A simple 1–5 scale based on UBA standards.
  • TVOC (Total Volatile Organic Compounds): Concentration from 0 to 65,000 ppb.
  • eCO2 (Equivalent CO2): Calculated proxy for CO2 concentration from 400 to 65,000 ppm.

Important Notes

  • Warm-up Time: The sensor needs about 3 minutes to warm up after powering on before it provides valid data.
  • Burn-in Period: For the highest accuracy, a new sensor should be “burned-in” for at least 24 to 48 hours of continuous operation.
  • Accuracy: MOX sensors detect a gas mixture and calculate eCO2; for critical CO2 monitoring (e.g., plant growth or safety), a dedicated NDIR CO2 sensor is preferred.

I²C topics on lamaPLC

PageDateTags
2026/04/23 21:51, , , , , , ,
2025/09/23 21:25, , , , , ,
2026/03/22 03:14, , , , , , ,
2026/04/23 21:52, , , , , , , , ,
2026/04/23 21:52, , , , , , , , , , , , ,
2026/03/28 23:50, , , , , , ,
2026/04/12 00:34, , , ,
2026/04/23 21:52, , , , , , , , , , , , , ,
2026/04/23 21:52, , , , , , , , , , ,
2026/04/23 21:52, , , , , , , , , ,
2026/03/22 00:08, , , , , , , , , , ,
2026/04/23 21:52, , , , , , , , , , ,
2026/04/23 21:52, , , , , , , ,
2025/05/31 23:32, , , , , , , ,
2026/04/23 21:52, , , , , , , , , , , , , ,
2025/11/22 00:07, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
2023/07/01 17:29, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
2026/03/22 01:44, , , , , , , , ,
2026/04/23 21:52, , , , , , , , ,
2026/04/23 21:52, , , , , , , , , , , , , , , ,
2026/04/23 21:51, , , ,
2026/04/23 21:52, , , , , , , , , , , , , , , , , , , , , , , , ,
2026/04/11 19:54, , , , , , , , , , , , , , , , , , ,
2026/04/23 21:52, , , , , , , , , , ,
2026/02/14 18:27, , , , , , , , , ,
2026/04/23 21:52, , , , , , ,
2026/04/23 21:52, , , , , , , ,
2026/04/23 21:52, , , , , , , ,
2026/04/23 21:52, , , , , , , , , , , , ,
2026/04/15 19:41, , , , , , , , , , , , , , , ,
2026/04/23 21:52, , , , , , , , , , , , , ,
2026/02/14 23:47, , , ,
2026/02/14 23:51, , , , , ,
2026/02/14 18:26, , , ,
2026/04/23 21:52, , , , , , , , , , , , ,
2026/04/23 21:52, , , , , , , , , , ,
2026/04/23 21:52, , , , , , , ,
2026/03/05 21:19, , , , , , , , , , , , , , , , ,
2026/02/14 18:27, , , , , , ,



This page has been accessed for: Today: 2, Until now: 3