Description
KY-028 Thermistor Temperature Sensor Module
The KY-028 uses an NTC thermistor to respond to temperature changes. Its LM393 comparator compares the thermistor signal with an adjustable reference set by the onboard 3296W potentiometer and provides a digital output for microcontrollers such as Arduino.
Specifications
- Temperature range: −55 °C to +125 °C (as stated in the source listing)
- Accuracy: ±0.5 °C (as stated in the source listing)
- Operating voltage: 3.3–5.5 V
- Output: digital D0
- Dimensions: 36 × 15 mm
- Main components: NTC thermistor, LM393 comparator and 3296W potentiometer
How it works
The NTC thermistor’s resistance decreases as temperature rises. The LM393 compares the sensor level with the potentiometer-adjusted reference and switches the digital output HIGH or LOW. The potentiometer sets the switching threshold; this module’s digital output indicates a threshold crossing rather than providing a calibrated temperature reading.
Applications
- Temperature-threshold indicators
- Climate-control projects
- Educational electronics
- Home-automation projects
Pinout
- VCC: 3.3–5 V supply
- GND: ground
- D0: digital output
Using it with Arduino Uno
Basic Arduino example
const int ledPin = 13; // LED sur la carte Arduino
const int digitalPin = 2; // Sortie numérique du capteur KY-028
int digitalVal; // valeurs numériques
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(digitalPin, INPUT);
Serial.begin(9600);
}
void loop() {
digitalVal = digitalRead(digitalPin);
if(digitalVal == HIGH) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
Serial.println(digitalVal);
delay(100);
}
The basic example reads D0, turns the Arduino’s built-in LED on when the module’s digital threshold is triggered, and reports the reading in the serial monitor.
Advanced example with I2C LCD
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
const int ledPin = 13;
const int digitalPin = 2;
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(digitalPin, INPUT);
Serial.begin(9600);
lcd.begin();
lcd.backlight();
}
void loop() {
int digitalVal = digitalRead(digitalPin);
if(digitalVal == HIGH) {
digitalWrite(ledPin, HIGH);
lcd.setCursor(0, 0);
lcd.print("Temperature High");
} else {
digitalWrite(ledPin, LOW);
lcd.setCursor(0, 0);
lcd.print("Temperature Low ");
}
Serial.println(digitalVal);
delay(1000);
}
Advanced-example wiring
- KY-028 VCC: Arduino 5 V
- KY-028 GND: Arduino GND
- KY-028 D0: Arduino digital pin 2
- LCD VCC/GND: Arduino 5 V/GND
- LCD SCL/SDA: Arduino A5/A4
Library installation
- In the Arduino IDE, open Sketch → Include Library → Manage Libraries.
- Search for and install
LiquidCrystal_I2Cfor the LCD example.
Keywords: KY-028 thermistor module, NTC temperature sensor, LM393 temperature switch, Arduino temperature threshold sensor.









