Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Adafruit ENS160 MOX Gas Sensor: Examples, Pinouts, and Specs

Image of Adafruit ENS160 MOX Gas Sensor
Cirkit Designer LogoDesign with Adafruit ENS160 MOX Gas Sensor in Cirkit Designer

Introduction

The Adafruit ENS160 MOX Gas Sensor (Part ID: 5606) is a digital metal-oxide (MOX) gas sensor designed for indoor air quality monitoring. It is capable of detecting various gases and volatile organic compounds (VOCs), making it an essential component for applications such as air purifiers, HVAC systems, and smart home devices. This sensor provides accurate and reliable measurements, ensuring optimal indoor air quality.

Explore Projects Built with Adafruit ENS160 MOX Gas Sensor

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
ESP8266 NodeMCU with MQ-4 Gas Sensor for Air Quality Monitoring
Image of Gas leakage detector: A project utilizing Adafruit ENS160 MOX Gas Sensor in a practical application
This circuit features an ESP8266 NodeMCU microcontroller connected to an MQ-4 gas sensor for detecting methane and natural gas in the air. The NodeMCU reads analog data from the MQ-4 sensor to monitor gas levels. Power is supplied to both the NodeMCU and the MQ-4 sensor through a 2.1mm Barrel Jack with Terminal Block, ensuring that both components share a common ground and power supply.
Cirkit Designer LogoOpen Project in Cirkit Designer
NodeMCU ESP8266-Based Smart Environmental Monitoring System with OLED Display
Image of Robotics: A project utilizing Adafruit ENS160 MOX Gas Sensor in a practical application
This circuit is a multi-sensor monitoring system using a NodeMCU ESP8266 microcontroller. It reads gas levels from an MQ-2 sensor, temperature from an MLX90614 sensor, and displays the data on an OLED screen. Additionally, it includes a DHT11 sensor for humidity and temperature, a MAX30102 sensor for heart rate and oxygen levels, and a SIM800L GSM module for communication.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Mega 2560 Based Multi-Gas Detection System with ADS1115 ADC
Image of 4 Multi-sensor with 1 ADS - V3: A project utilizing Adafruit ENS160 MOX Gas Sensor in a practical application
This circuit is designed for gas detection and monitoring, utilizing an Arduino Mega 2560 microcontroller to interface with multiple MQ-series gas sensors (MQ-2, MQ-3, MQ-7, and MQ-135) through an Adafruit ADS1115 16-bit ADC over I2C. The ADC converts the analog signals from the gas sensors into digital values, which are then read by the Arduino and output to the serial monitor for analysis. The circuit is powered by a 5V supply, ensuring all components receive the necessary operating voltage.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP8266 NodeMCU with MQ-4 Methane Gas Sensor Monitoring System
Image of BLYNK RELAY CONTROL: A project utilizing Adafruit ENS160 MOX Gas Sensor in a practical application
This circuit integrates an ESP8266 NodeMCU microcontroller with an MQ-4 methane gas sensor. The ESP8266 NodeMCU provides power to the MQ-4 sensor and reads its analog output to monitor methane gas levels. Without any embedded code provided, the functionality for processing and responding to the sensor's readings would need to be implemented in the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Adafruit ENS160 MOX Gas Sensor

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Gas leakage detector: A project utilizing Adafruit ENS160 MOX Gas Sensor in a practical application
ESP8266 NodeMCU with MQ-4 Gas Sensor for Air Quality Monitoring
This circuit features an ESP8266 NodeMCU microcontroller connected to an MQ-4 gas sensor for detecting methane and natural gas in the air. The NodeMCU reads analog data from the MQ-4 sensor to monitor gas levels. Power is supplied to both the NodeMCU and the MQ-4 sensor through a 2.1mm Barrel Jack with Terminal Block, ensuring that both components share a common ground and power supply.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Robotics: A project utilizing Adafruit ENS160 MOX Gas Sensor in a practical application
NodeMCU ESP8266-Based Smart Environmental Monitoring System with OLED Display
This circuit is a multi-sensor monitoring system using a NodeMCU ESP8266 microcontroller. It reads gas levels from an MQ-2 sensor, temperature from an MLX90614 sensor, and displays the data on an OLED screen. Additionally, it includes a DHT11 sensor for humidity and temperature, a MAX30102 sensor for heart rate and oxygen levels, and a SIM800L GSM module for communication.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of 4 Multi-sensor with 1 ADS - V3: A project utilizing Adafruit ENS160 MOX Gas Sensor in a practical application
Arduino Mega 2560 Based Multi-Gas Detection System with ADS1115 ADC
This circuit is designed for gas detection and monitoring, utilizing an Arduino Mega 2560 microcontroller to interface with multiple MQ-series gas sensors (MQ-2, MQ-3, MQ-7, and MQ-135) through an Adafruit ADS1115 16-bit ADC over I2C. The ADC converts the analog signals from the gas sensors into digital values, which are then read by the Arduino and output to the serial monitor for analysis. The circuit is powered by a 5V supply, ensuring all components receive the necessary operating voltage.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of BLYNK RELAY CONTROL: A project utilizing Adafruit ENS160 MOX Gas Sensor in a practical application
ESP8266 NodeMCU with MQ-4 Methane Gas Sensor Monitoring System
This circuit integrates an ESP8266 NodeMCU microcontroller with an MQ-4 methane gas sensor. The ESP8266 NodeMCU provides power to the MQ-4 sensor and reads its analog output to monitor methane gas levels. Without any embedded code provided, the functionality for processing and responding to the sensor's readings would need to be implemented in the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer

Technical Specifications

Key Technical Details

Parameter Value
Operating Voltage 3.3V - 5V
Operating Current 29mA (typical)
Interface I2C, SPI
I2C Address 0x53
Operating Temperature -40°C to 85°C
Gas Detection Range 0 - 500 ppm (CO2 equivalent)
Dimensions 20mm x 20mm x 3.2mm

Pin Configuration and Descriptions

Pin Name Description
1 VCC Power supply (3.3V - 5V)
2 GND Ground
3 SDA I2C data line
4 SCL I2C clock line
5 INT Interrupt output (optional)
6 CS Chip select for SPI (optional)
7 SDO SPI data output (optional)
8 SDI SPI data input (optional)

Usage Instructions

How to Use the Component in a Circuit

  1. Power Supply: Connect the VCC pin to a 3.3V or 5V power supply and the GND pin to the ground.
  2. I2C Interface: Connect the SDA pin to the SDA pin on your microcontroller and the SCL pin to the SCL pin on your microcontroller.
  3. Optional Connections: If using SPI, connect the CS, SDO, and SDI pins accordingly. The INT pin can be used for interrupt-driven applications.

Important Considerations and Best Practices

  • Power Supply: Ensure a stable power supply to avoid fluctuations that could affect sensor readings.
  • I2C Pull-up Resistors: Use appropriate pull-up resistors (typically 4.7kΩ) on the SDA and SCL lines if not already present on your microcontroller.
  • Warm-up Time: Allow the sensor to warm up for a few minutes after powering on to ensure accurate readings.
  • Calibration: Periodically calibrate the sensor in a clean air environment to maintain accuracy.

Example Code for Arduino UNO

#include <Wire.h>
#include "Adafruit_ENS160.h"

// Create an instance of the sensor
Adafruit_ENS160 ens160;

void setup() {
  Serial.begin(115200);
  // Initialize I2C communication
  Wire.begin();
  
  // Initialize the sensor
  if (!ens160.begin()) {
    Serial.println("Failed to find ENS160 sensor!");
    while (1);
  }
  Serial.println("ENS160 sensor found!");
}

void loop() {
  // Read gas concentrations
  ens160.readGas();
  
  // Print the gas concentrations
  Serial.print("eCO2: ");
  Serial.print(ens160.eCO2);
  Serial.print(" ppm, TVOC: ");
  Serial.print(ens160.TVOC);
  Serial.println(" ppb");
  
  // Wait for 1 second before the next reading
  delay(1000);
}

Troubleshooting and FAQs

Common Issues Users Might Face

  1. Sensor Not Detected: Ensure proper connections and check the I2C address (default is 0x53).
  2. Inaccurate Readings: Allow sufficient warm-up time and perform regular calibration.
  3. Communication Errors: Verify pull-up resistors on the I2C lines and ensure no address conflicts.

Solutions and Tips for Troubleshooting

  • Check Connections: Double-check all wiring and ensure secure connections.
  • Power Supply: Use a stable and clean power supply to avoid noise and fluctuations.
  • Library Updates: Ensure you have the latest version of the Adafruit ENS160 library installed.

By following this documentation, users can effectively integrate and utilize the Adafruit ENS160 MOX Gas Sensor in their projects, ensuring accurate indoor air quality monitoring.