1. Introduktion
This instruction manual provides comprehensive guidance for the installation, operation, and maintenance of the Generic ENS160+AHT21 sensor module. This module is designed to measure carbon dioxide (CO2), equivalent CO2 (eCO2), Total Volatile Organic Compounds (TVOC), temperature, and humidity, making it suitable for various environmental monitoring applications, particularly with microcontroller platforms like Arduino.
The ENS160+AHT21 sensor combines an advanced digital gas sensor (ENS160) with a high-precision temperature and humidity sensor (AHT21) to offer a compact and versatile solution for indoor air quality assessment.
2. Produktet er slutview
The ENS160+AHT21 sensor module is a multi-functional environmental sensor. It features the ENS160 for detecting various air quality parameters and the AHT21 for accurate temperature and humidity readings. This combination allows for a holistic view of the ambient environment.

Figur 2.1: Øverst view of the ENS160+AHT21 sensor module, showing the main components and pin headers for connection.

Figur 2.2: Vinklet view of the ENS160+AHT21 sensor module, highlighting the integrated sensors and connection pins.
3. Specifikationer
| Feature | Detalje |
|---|---|
| Modelnummer | WYQc_JNIO_2250 |
| Sensortype | ENS160 (CO2, eCO2, TVOC), AHT21 (Temperature, Humidity) |
| Kommunikationsgrænseflade | I2C (SDA, SCL) |
| Operation Voltage | 3.3V (VIN pin for wider input voltage range, typically 3.3V-5V depending on onboard regulator) |
| Dimensioner | Approximately 2.4cm x 2cm |
| Vægt | Cirka 1.65g |
| Materiale | Carbon (referring to sensor element) |

Figure 3.1: Dimensions and weight of the ENS160+AHT21 sensor module.
4. Opsætningsvejledning
This section outlines the steps required to connect and prepare your ENS160+AHT21 sensor module for use with a microcontroller, such as an Arduino board.
4.1 Pinout Beskrivelse
The module typically features the following pins:
- FIN: Power input (typically 3.3V to 5V, regulated to 3.3V onboard).
- 3V3: 3.3V regulated output (if available, or direct 3.3V input).
- GND: Jordforbindelse.
- SDA: I2C Data Line.
- SCL: I2C Clock Line.
- ADD/MISO: I2C Address Select (or SPI MISO, if supported).
- CS: Chip Select (for SPI, if supported).
- INT: Interrupt Pin (optional, for event notifications).

Figure 4.1: Pinout diagram of the ENS160+AHT21 sensor module.
4.2 Wiring Instructions (I2C)
For typical I2C communication with an Arduino board, follow these connections:
- Tilslut VIN pin of the sensor to the 5V or 3.3V pin on your Arduino board.
- Tilslut GND pin of the sensor to a GND pin on your Arduino board.
- Tilslut SDA pin of the sensor to the SDA (A4 on Uno, D20 on Mega) pin on your Arduino board.
- Tilslut SCL pin of the sensor to the SCL (A5 on Uno, D21 on Mega) pin on your Arduino board.
- Ensure the I2C address selection pin (ADD) is configured correctly. Refer to the sensor's datasheet for default or configurable addresses.

Figure 4.2: Sensor module with pin headers, illustrating connection points.
4.3 Software Setup (Arduino IDE)
To communicate with the sensor, you will need to install appropriate libraries in your Arduino IDE:
- Åbn Arduino IDE.
- Gå til Sketch > Inkluder bibliotek > Administrer biblioteker...
- Søg efter "ENS160" and install a suitable library (e.g., "Adafruit ENS160").
- Søg efter "AHT21" and install a suitable library (e.g., "Adafruit AHTX0" or "SparkFun AHT20/AHT21").
- Restart the Arduino IDE after installation.
5. Betjeningsvejledning
Once the sensor is wired and libraries are installed, you can begin reading data. Here's a basic example structure for reading values:
5.1 Basic Code Example (Konceptuel)
This is a conceptual example. Refer to the specific library's examples for exact syntax.
#include <Wire.h>
#include <Adafruit_ENS160.h> // Example library
#include <Adafruit_AHTX0.h> // Example library
Adafruit_ENS160 ens160;
Adafruit_AHTX0 aht;
void setup() {
Serial.begin(115200);
while (!Serial) delay(10); // Wait for serial port to connect
Serial.println("ENS160 + AHT21 Sensor Test");
if (!ens160.begin()) {
Serial.println("Couldn't find ENS160 sensor! Check wiring.");
while (1) delay(10);
}
Serial.println("ENS160 Found!");
if (!aht.begin()) {
Serial.println("Couldn't find AHT21 sensor! Check wiring.");
while (1) delay(10);
}
Serial.println("AHT21 Found!");
}
void loop() {
sensors_event_t humidity, temp;
aht.getEvent(&humidity, &temp); // Populate temp and humidity objects
Serial.print("Temperature: "); Serial.print(temp.temperature); Serial.println(" *C");
Serial.print("Humidity: "); Serial.print(humidity.relative_humidity); Serial.println(" %");
// Set environmental compensation for ENS160 for better accuracy
ens160.setTempOffset(temp.temperature);
ens160.setHumidityOffset(humidity.relative_humidity);
Serial.print("TVOC: "); Serial.print(ens160.getTVOC()); Serial.println(" ppb");
Serial.print("eCO2: "); Serial.print(ens160.geteCO2()); Serial.println(" ppm");
Serial.print("AQI: "); Serial.print(ens160.getAQI()); Serial.println(" (1-5, 1=Good)");
delay(2000); // Read every 2 seconds
}
Upload this sketch to your Arduino board and open the Serial Monitor (set to 115200 baud) to view sensoraflæsningerne.
6. Vedligeholdelse
The ENS160+AHT21 sensor module is designed for low maintenance. However, adhering to the following guidelines can help ensure optimal performance and longevity:
- Hold rent: Avoid exposing the sensor to dust, dirt, or corrosive gases, which can affect its accuracy and lifespan. Do not use liquid cleaners directly on the sensor.
- Miljøforhold: Operate the sensor within its specified temperature and humidity ranges. Extreme conditions can damage the module.
- Undgå fysisk stress: Handle the module carefully to prevent physical damage to the sensitive sensor elements or solder joints.
- Kalibrering: While the ENS160 performs self-calibration, prolonged exposure to very clean or very polluted air might affect its baseline. Occasional exposure to fresh outdoor air can help recalibrate the sensor's baseline.
7. Fejlfinding
If you encounter issues with your ENS160+AHT21 sensor, consider the following troubleshooting steps:
- No Sensor Detected:
- Verify all wiring connections (VIN, GND, SDA, SCL) are secure and correct.
- Ensure the correct I2C address is being used in your code.
- Check if the sensor is receiving adequate power (3.3V or 5V).
- Confirm that the necessary libraries are installed correctly in the Arduino IDE.
- Forkerte aflæsninger:
- Ensure the sensor is placed in an environment free from direct airflow, heat sources, or strong chemical fumes that could skew readings.
- Allow the sensor to warm up for at least 5-10 minutes after power-on for stable readings.
- For ENS160, ensure temperature and humidity compensation values from the AHT21 are being correctly applied.
- If TVOC/eCO2 readings seem consistently off, expose the sensor to fresh outdoor air for a few hours to allow its baseline to re-establish.
- Intermitterende læsninger:
- Check for loose connections or poor solder joints.
- Ensure power supply is stable and free from noise.
- Verify that no other I2C devices on the bus are conflicting with the sensor's address.
8. Garanti og support
This product is typically covered by a standard manufacturer's warranty against defects in materials and workmanship. For specific warranty terms, please refer to the documentation provided by your retailer or contact the point of purchase. Technical support may be available through online forums, community resources, or the retailer's support channels.