Here we will make project with LM35 TM1637 ESP8266. We all use weather applications to know the current temperature. This requires the Internet. So if I say you can know your area temperature without the Internet.

In this post, I will share how to get local area temperature using LM35 Temperature Sensor with LM35 TM1637 ESP8266 4 Digit 7 segment Display in ESP8266 NodeMCU Board.

LM35 Sensor with TM1637 Display in Arduino UNO

Components Used:(Click to Buy)

What is LM35 Temperature Sensor?

LM35 is an integrated analog temperature sensor whose electrical output is proportional to Degree Centigrade. LM35 Sensor does not require any external calibration or trimming to provide typical accuracies.

LM35 Sensor with TM1637 Display in ESP8266 NodeMCU

It has 3 pins – two pins are 5V and Ground. The middle pin is Voltage out. We use the reading of this pin to determine the temperature using some arithmetic calculation.
Because this is a single sensor, it does not give an accurate temperature. If you want accurate temperature, you can you DHT22 Sensor.

Connect LM35 TM1637 ESP8266

If you do not know how to connect LM35 with ESP8266 NodeMCU, then follow this post.

LM35 Temperature Sensor with ESP8266 NodeMCU

How to Connect TM1637 Display?

Following Connection Diagram you can see how to connect TM1637 Display & LM35 Sensor with ESP8266 NodeMCU.

LM35 Sensor with TM1637 Display in ESP8266 NodeMCU

Here we connected D1 & D2 pins of ESP8266 to SCL & SDA pin of TM1637.

LM35 Sensor with TM1637 Display in ESP8266 NodeMCU

Code Explain of LM35 TM1637 ESP8266

As discussed in the previous post, we calculated Temperature in Celcius.
After that, we are displaying it in the 4 Digit Display using TM1637Display library functions.
We will show the temperature in the first two digits of the display, and the rest two digits will show Degree Centrigrade icon using setsegments function.

Arduino Sketch of LM35 TM1637 ESP8266

#include <TM1637Display.h>
// Module connection pins (Digital Pins)
#define CLK 5 //D1
#define DIO 4  //D2
TM1637Display display(CLK, DIO);

const int sensor=A0;
float tempc;
float vout;
const uint8_t C[] = {
  SEG_B | SEG_A | SEG_F | SEG_G,
  SEG_A | SEG_D | SEG_E | SEG_F
  };

void setup()
{
  pinMode(sensor,INPUT);
}

void loop()
{

  display.setBrightness(0xff);
  vout=analogRead(sensor);
  vout=(vout*500)/1024;
  tempc=vout;
  display.showNumberDecEx(tempc, (0x80 >> 0), false,2,0);
  display.setSegments(C,2,2);
  delay(1000);

    
}

Output LM35 TM1637 ESP8266

LM35 Sensor with TM1637 Display in ESP8266 NodeMCU

You can also watch this tutorial video in Hindi.

Comment Box