GY-213V HDC1080 Digital Humidity & Temperature Sensor

GY-213V HDC1080 Digital Humidity & Temperature Sensor
High-Accuracy I2C Environmental Sensing for Arduino Projects
Introduction
The GY-213V HDC1080 is a high-precision digital humidity and temperature sensor with I2C interface. This low-power sensor provides ±2% relative humidity accuracy and ±0.2°C temperature accuracy, making it ideal for weather stations, HVAC systems, and IoT applications.
Key Features
Dual Measurements
Simultaneous humidity and temperature sensing
Low Power
1.2μA sleep current (0.55mA active)
High Accuracy
±2% RH, ±0.2°C (typical)
I2C Interface
Standard 3.3V-5V compatible
Technical Specifications
Humidity Range | 0% to 100% RH |
---|---|
Temperature Range | -40°C to +125°C |
Resolution | 14-bit (RH), 14-bit (Temp) |
Supply Voltage | 2.7V to 5.5V |
I2C Address | 0x40 (default) |
Response Time | 8s (RH), 6.5ms (Temp) |
Pin Configuration
Pin | Label | Description | Arduino Connection |
---|---|---|---|
1 | VCC | Power (2.7-5.5V) | 3.3V or 5V |
2 | GND | Ground | GND |
3 | SCL | I2C Clock | A5 (Uno) or SCL |
4 | SDA | I2C Data | A4 (Uno) or SDA |
5 | ADDR | Address Select | GND (default) or VCC |
Note: Pull-up resistors (4.7kΩ) are typically included on the module
Wiring Diagram (Arduino Uno)
1 2 3 4 5 6 |
// Basic Connections: // VCC → 3.3V or 5V // GND → GND // SCL → A5 (or SCL) // SDA → A4 (or SDA) // ADDR → GND (for default address 0x40) |
Basic Reading Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
#include <Wire.h> #include "ClosedCube_HDC1080.h" ClosedCube_HDC1080 hdc1080; void setup() { Serial.begin(9600); hdc1080.begin(0x40); // Default I2C address Serial.println("HDC1080 initialized"); Serial.print("Manufacturer ID=0x"); Serial.println(hdc1080.readManufacturerId(), HEX); } void loop() { float humidity = hdc1080.readHumidity(); float temperature = hdc1080.readTemperature(); Serial.print("Humidity: "); Serial.print(humidity); Serial.print("% RH, Temperature: "); Serial.print(temperature); Serial.println("°C"); delay(2000); } |
Library Required: Install “ClosedCube HDC1080” via Arduino Library Manager
Advanced Configuration
Resolution Settings
1 2 3 |
// Set measurement resolution hdc1080.setResolution(HDC1080_RESOLUTION_14BIT, HDC1080_RESOLUTION_14BIT); |
Heater Control
1 2 3 4 |
// Enable built-in heater (for drying condensation) hdc1080.heatOn(); delay(1000); hdc1080.heatOff(); |
Battery Monitoring
1 2 3 4 |
// Check battery status (below 2.8V) if(hdc1080.readBatteryStatus() == LOW) { Serial.println("Low battery!"); } |
Address Change
1 2 |
// Connect ADDR pin to VCC to use 0x41 hdc1080.begin(0x41); // Alternate address |
Troubleshooting
No Device Detected
- Verify I2C connections (SDA/SCL)
- Check with I2C scanner sketch
- Confirm power supply (3.3V recommended)
Incorrect Readings
- Allow proper warm-up time (15s recommended)
- Keep sensor away from heat sources
- Check for condensation on sensor
Communication Errors
- Add 4.7kΩ pull-up resistors if missing
- Reduce I2C bus speed if using long wires
- Check for address conflicts