KY-001 Temperature Sensor Module

KY-001 Temperature Sensor Module allows ambient temperature measurement using digital serial bus. It is possible to connect more than one module on the same bus.

Compatible with popular electronics platforms like Arduino, Raspberry Pi and ESP32.

KY-001 Fritzing custom part image
KEYES ky-001 Temperature sensor module for arduino

KY-001 Specifications

This module consists of a DS18B20 single-bus digital temperature sensor, an LED, a resistor and 3 male header pins.

Operating Voltage3.0V to 5.5V
Temperature Measurement Range-55°C to 125°C [-57°F to 257°F]
Measurement Accuracy Range±0.5°C
Board Dimensions18.5mm x 15mm [0.728in x 0.591in]

Connection Diagram

Connect the power line (middle) and ground (-) on the module to +5V and GND on the Arduino respectively. Connect the signal pin (S) to pin 2 on the Arduino.

KY-001Arduino
SPin 2
middle+5V
GND
Arduino KY-001 connection diagram

KY-001 Arduino Code

The following Arduino sketch will use the OneWire library to communicate serially with the module and it’ll output the temperature read by the device. 

Links to the required libraries can be found on the Downloads section below.

#include <OneWire.h>
#include <DallasTemperature.h>

// Data wire is plugged into pin 2 on the Arduino
#define ONE_WIRE_BUS 2

// Setup a oneWire instance to communicate with any OneWire devices (not just Maxim/Dallas temperature ICs)
OneWire oneWire(ONE_WIRE_BUS);
// Pass our oneWire reference to Dallas Temperature. 
DallasTemperature sensors(&oneWire);

void setup(void)
{
  // start serial port
  Serial.begin(9600);
  Serial.println("Dallas Temperature IC Control Library Demo");
  // Start up the library
  sensors.begin(); // IC Default 9 bit. If you have troubles consider upping it 12. Ups the delay giving the IC more time to process the temperature measurement
}

void loop(void)
{ 
  // call sensors.requestTemperatures() to issue a global temperature 
  // request to all devices on the bus
  Serial.print("Requesting temperatures...");
  sensors.requestTemperatures(); // Send the command to get temperatures
  Serial.println("DONE");

  Serial.print("Temperature for Device 1 is: ");
  Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? You can have more than one IC on the same bus. 0 refers to the first IC on the wire
}

Downloads

Leave a Comment


3 thoughts on “KY-001 Temperature Sensor Module”

  1. How long does the battery last can you make it so the green light come on/off like the red light

    Reply
    • Seems to work for me Aaron. I did need to add some delay after the request to get the readings.

      Reply