Maintaining the temperature in Infrastructures is important because it affects the fundamental equipment, particularly servers. If the temperature is not maintained correctly, computers get heated. So unexpected changes in humidity & temperature can meet overheating which may result in larger damages & financial failures. This demonstrates how significant correct cooling is in avoiding sudden downtime. To overcome this issue, temperature and humidity sensors are invented to measure both temperature & humidity and then change these measurements into electrical signals. Thus it can be utilized by other instruments and software. The examples of these sensors are; DHT11, KY-015, SHT10, SHT31, etc. This article elaborates on the KY-015 sensor module, pinout, working, and its applications.
What is the KY-015 Sensor Module?
A KY-015 is a temperature and humidity sensor module or combi-sensor that uses the DHT11 sensor to provide digital output for the temperature & humidity readings. This module can be interfaced directly with microcontrollers like Raspberry Pi, ESP32, Arduino, etc. So it is a convenient method to monitor ecological conditions in a variety of applications like weather stations or home automation. The KY-015 module uses a DHT11 sensor that provides digital format output data. This sensor works with a digital technique that combines exclusive moisture sensing technology to ensure stability & reliability.
How KY-015 Sensor Module Work?
The KY-015 temperature & humidity sensor module works with an internal capacitive humidity sensor & thermistor to measure the nearby surroundings’ humidity and temperature. After that, it transmits digitally like a serial bit sequence throughout a single data pin by allowing a microcontroller to read the values straight without requiring extra ADC conversion.
This module combines both a temperature sensor & a humidity sensor. Different from some other analog sensors, this module provides a digital signal to make it simple to interface with different microcontrollers. The sensor transmits data as a sequence of bits that the microcontroller reads and interprets with a specific library. The KY-015 module draws minimum power to make it appropriate for battery-powered projects.
Pin Configuration:
The KY-015 sensor module pin configuration is shown below. This module includes three pins which are discussed below.

KY-015 Pin Configuration
- Pin-1 (Vcc): This pin connects to the 5Volts power supply of your microcontroller board.
- Pin-2 (Signal): This is the data pin of the module that sends the temperature & humidity readings from the sensor module to your microcontroller.
- Pin-3 (GND): This is a ground pin that is connected to the GND pin of your microcontroller board.
Features & Specifications:
The features and specifications of the KY-015 sensor module include the following.
- KY-015 is a humidity and temperature sensor module.
- This module uses a DHT11 sensor.
- Its operating voltage ranges from 3.3 volts to 5 volts.
- Temperature measurement range is from 0°C to 50°C or 32°F to 122°F.
- Temperature measurement accuracy is ±2°C.
- Humidity measurement range is from 20% to 90% RH
- Humidity measurement accuracy is ±5% RH.
- The sample rate is 2 seconds approximately.
- It is compatible with different platforms like Micro: bit, Raspberry Pi, Arduino, etc.
- The signal transmission range is 20m
- Humidity measurement error is + / -5%
- The temperature measurement range is from 0 – 50°C.
- Its temperature measurement error is + / -2°C
- The output type is a digital output.
- This module uses a red power LED.
Equivalent & Alternatives
Equivalent to the KY-015 sensor module is DHT11. Alternatives to KY-015 sensor module are DHT22, BME280, KY-028, etc.
KY-015 Sensor Module Interfacing with Arduino Uno
KY-015 sensor module interfacing with Arduino Uno is shown below. This sensor module gives a digital serial interface for measuring temperature & environment humidity. It is compatible with different microcontrollers. This module includes a DHT11 digital humidity & temperature sensor, 3 male header pins & a 1 kΩ resistor. This sensor utilizes an internal thermistor & a capacitive humidity sensor to decide the nearby conditions and an internal chip is accountable for changing the readings toward a serial digital signal.
The required components for this interfacing mainly include; the KY-015 sensor module, Arduino Uno, breadboard, and connecting wires. The connections of this interfacing follow as;

KY-015 Sensor Module Interfacing with Arduino UNO
- The KY-015 module connects its signal pin to pin 8 of the Arduino board.
- Connect the middle pin of the KY-015 module to the +5V of the Arduino board.
- The KY-015 module connects its GND pin to the GND pin of the Arduino board.
Code:
The required code for the KY-015 sensor module interfacing with Arduino is shown below.
int DHpin = 8; // input/output pin
byte dat[5];
byte read_data()
{
byte i = 0;
byte result = 0;
for (i = 0; i < 8; i++) {
while (digitalRead(DHpin) == LOW); // wait 50us
delayMicroseconds(30); //The duration of the high level is judged to determine whether the data is ‘0’ or ‘1’
if (digitalRead(DHpin) == HIGH)
result |= (1 << (8 – i)); //High in the former, low in the post
while (digitalRead(DHpin) == HIGH); //Data ‘1’, waiting for the next bit of reception
}
return result;
}
void start_test()
{
digitalWrite(DHpin, LOW);
//Pull down the bus to send the start signal
delay(30);
//The delay is greater than 18 ms so that DHT 11 can detect the start signal
digitalWrite(DHpin, HIGH);
delayMicroseconds(40);
//Wait for DHT11 to respond
pinMode(DHpin, INPUT);
while(digitalRead(DHpin) == HIGH);
delayMicroseconds(80);
//The DHT11 responds by pulling the bus low for 80us;
if(digitalRead(DHpin) == LOW)
delayMicroseconds(80);
//DHT11 pulled up after the bus 80us to start sending data;
for(int i = 0; i < 5; i++)
//Receiving temperature and humidity data, check bits are not considered;
dat[i] = read_data();
pinMode(DHpin, OUTPUT);
digitalWrite(DHpin, HIGH);
//After the completion of a release of data bus, waiting for the host to start the next signal
}
void setup()
{
Serial.begin(9600);
pinMode(DHpin, OUTPUT);
}
void loop()
{
start_test();
Serial.print(“Humdity = “);
Serial.print(dat[0], DEC); //Displays the integer bits of humidity;
Serial.print(‘.’);
Serial.print(dat[1], DEC); //Displays the decimal places of the humidity;
Serial.println(‘%’);
Serial.print(“Temperature = “);
Serial.print(dat[2], DEC); //Displays the integer bits of temperature;
Serial.print(‘.’);
Serial.print(dat[3], DEC); //Displays the decimal places of the temperature;
Serial.println(‘C’);
byte checksum = dat[0] + dat[1] + dat[2] + dat[3];
if (dat[4] != checksum)
Serial.println(“– Checksum Error!”);
else
Serial.println(“– OK”);
delay(1000);
}
Working
The above sketch utilizes the Arduino board’s pin 8 to send & receive data serially from the KY-015. Serial communication can be archived by sending a specific sequence of low or high signals to the sensor & waiting for a reply. Thus humidity & temperature data can be read bit through bit & returned like a group of bytes.
Advantages & Disadvantages
The advantages of the KY-015 sensor module include the following.
- It is easily integrated with single-wire serial communication.
- These are available in compact size.
- It has less power consumption.
- They have high accuracy
- It has anti-interference capabilities & affordability.
- It has a fast response time.
- This module is easy to use.
- They have good accuracy.
- It reduces noise from outside factors to ensure precise readings
- These are cost-effective.
The disadvantages of the KY-015 sensor module include the following.
- Its sampling rate is slow.
- This module provides quite low precision in humidity & temperature measurements than advanced sensors.
- It is sensitive to environmental factors.
- This sensor module is suitable only for measuring a limited humidity & temperature range.
- It outputs a digital signal that needs extra processing to change to analog values if required.
- This sensor provides only a new measurement for each couple of seconds, so it is slow for applications requiring frequent updates.
- It has fairly low accuracy for both humidity & temperature measurements than more advanced sensors.
- It functions only in a humidity & moderate temperature range.
- Digital signal transmission can be vulnerable to electrical noise from near components.
- It outputs a digital signal that might need extra processing for some applications wherever an analog signal is chosen.
KY-015 Sensor Module Applications
The applications of the KY-015 sensor module include the following.
- This module mainly measures both humidity and temperature in different applications.
- Home automation systems use this module to adjust HVAC systems automatically based on desired comfort levels.
- Weather stations utilize it to record humidity and ambient temperature for weather forecasting.
- Growers use this module to optimize plant growth by checking and adjusting humidity and temperature levels.
- Data logging incorporates this module to record environmental conditions for analysis.
Please refer to this link for the KY-015 Sensor Module Datasheet.
Thus, this is an overview of the KY-015 sensor module, pin-out, features, specifications, interfacing, and its applications. This module is combined with a temperature & humidity sensor that is used commonly in hobbyist electronics projects. So it measures both ecological temperature & relative humidity with a DHT11 sensor chip. This is an affordable and compact combination of humidity & temperature sensors that supplies digital readings throughout a single data pin. Thus it outputs digital data through a single pin which makes it simple to incorporate with microcontrollers. Here is a question for you, what is the KY-028 module?