ESP8266/IoT B.Tech/Diploma Beginner

IoT Industrial Temperature Monitor with MAX6675 & ESP8266

Interface Thermocouple Temperature Sensor MAX6675 with NodeMCU ESP8266 & display temperature on OLED Display & IoT Blynk Application. Code

  • Suitable forB.Tech/Diploma ESP8266/IoT students
  • Build time1-2 weeks
  • LevelBeginner
  • Available atAjvika Labs, Kakinada

About this project

Overview
In this IoT Based Project, we will interface
Thermocouple Temperature Sensor MAX6675 with NodeMCU ESP8266
Board and display the
temperature
data on a
0.96″ OLED Display
. Since the project is IoT based, we will send the temperature data to the
IoT Application
called
Blynk
. The temperature data can be monitored online on the Blynk Application from any part of the world.
The device is capable of measuring the temperature from
0°C
to
1024°C
. Hence, it can be used in industrial applications. In industry due to the hot temperature or the heat radiation emitted by the body, it’s difficult to go near to the hot object and check the temperature manually using the
Industrial Thermometer
. Hence the solution is monitoring the temperature remotely using some
IoT devices
and Thermocouple Temperature Sensor.
Here we will implement a simple project using
Thermocouple MAX6675 & ESP8266 Wifi Module
. The ESP8266 will connect to the wifi router and using the
internet connectivity
it will send the temperature data regularly to some
online servers
. The best & free online server is the Blynk. We will learn more about the
Blynk application
later on but if you want to learn more about MAX6675, you can check this project:
Arduino & MAX6675 Project
Bill of Materials
Following are the list of components required for making this project. All the components can be easily purchased from Amazon. The component purchase link is given below.
S.N.
Components Name
Quantity
Purchase Links

Nodemcu ESP8266 Board

Amazon
AliExpress

0.96" I2C OLED Display

Amazon
AliExpress

MAX6675 Thermocouple Sensor

Amazon
AliExpress

Connecting Wires

Amazon
AliExpress

Breadboard

Amazon
AliExpress
MAX7765 K-Type Thermocouple Temperature Sensor
This
MAX6675 Module
+
K Type Thermocouple Sensor
makes use of the Maxim MAX6675 K-Thermocouple to digital converter IC. It provides a microcontroller compatible digital serial interface (SPI compatible) for giving an accurate
temperature-compensated
measurement of the temperature.
It has a
12-bit resolution
. This converter resolves temperatures to
0.25°C
, allows readings as high as
+1024°C
, and exhibits thermocouple accuracy of
8 LSBs
for temperatures ranging from
0°C to +700°C
. Screw terminals allow for connection to the thermocouples spade connectors and a 5 pin standard 0.1″ header provides an interface to a microcontroller.
Circuit Diagram: MAX6675 & ESP8266
The circuit diagram for interfacing MAX6675 Thermocouple with NodeMCU ESP8266 is given below.
The SCK, CS & SO Pin of MAX6675 Board is connected to D5, D6 & D7 of NodeMCU Board. The SDA & SCL pin of 0.96″ I2C OLED Display is connected to D2 & D1 of Nodemcu. The OLED Display & MAX6675 Both operates between 3.3V to 5V. So connect the VCC Pin to 3.3V & GND to GND.
Setting Up Blynk Application
Blynk
is an application that runs over
Android
and
IOS
devices to
control any IoT based application
using Smartphones. It allows you to create your Graphical user interface for IoT application. Here we will display the MAX6675 Temperature Data on Blynk Application.
So download and install the
Blynk Application
from
Google Play Store
. IOS users can download from the
App Store
. Once the installation is completed, open the app & sign-up using your Email id and Password.
From the dashboard create a new project and select Nodemcu Board & Wifi Connection.
Then drag & drop or add 2 widgets and assign the variable as per code and then email the authentication code.
You will get the authentication code in the mail. Copy this authentication code. This will be used in your code.
Source Code/Program
The source Code or program for Industrial Thermometer using MAX6675 & ESP8266 is given below. The code requires some libraries. So first install the following libraries.
MAX6675 Library
:
Download
Blynk Library
:
Download
Adafruit SSD1306 Library
:
Download
Adafruit GFX Library
:
Download
From the code change the SSID & Password as well as the Blynk Authentication Code.

#define BLYNK_PRINT Serial
#include <Blynk.h>
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <max6675.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
Adafruit_SSD1306
display
(
SCREEN_WIDTH
SCREEN_HEIGHT
&
Wire
OLED_RESET
)
;
char
auth
[
]
=
"I-oKdQZnlok3qGlLdZTcCJsYcTTpbUiH"
;
// You should get Auth Token in the Blynk App.
char
ssid
[
]
=
"Alexahome"
;
// Your WiFi credentials.
char
pass
[
]
=
"loranthus"
;
int
ktcSO
=

;
int
ktcCS
=

;
int
ktcCLK
=

;
MAX6675
ktc
(
ktcCLK
ktcCS
ktcSO
)
;
void
setup
(
)
{
Serial
begin
(
115200
)
;
Blynk
begin
(
auth
ssid
pass
)
;
Serial
println
(
"Max6675 test"
)
;
display
begin
(
SSD1306_SWITCHCAPVCC
0x3C
)
;
//initialize with the I2C addr 0x3C (128x64)
delay
(

)
;
display
clearDisplay
(
)
;
display
setCursor
(

)
;
display
setTextSize
(

)
;
display
setTextColor
(
WHITE
)
;
display
println
(
" Thermometer"
)
;
display
setCursor
(

)
;
display
setTextSize
(

)
;
display
(
"Initializing"
)
;
display
display
(
)
;
delay
(
3000
)
;
}
void
loop
(
)
{
Blynk
run
(
)
;
float
DC
=
ktc
readCelsius
(
)
;
// Read temperature as Celsius
float
DF
=
ktc
readFahrenheit
(
)
;
Serial
(
"C = "
)
;
Serial
(
ktc
readCelsius
(
)
)
;
Serial
(
"\t F = "
)
;
Serial
println
(
ktc
readFahrenheit
(
)
)
;
display
clearDisplay
(
)
;
display
setTextSize
(

)
;
display
setTextColor
(
WHITE
)
;
display
setCursor
(

)
;
display
(
"Temperature"
)
;
display
setTextSize
(

)
;
display
setCursor
(

)
;
display
(
ktc
readCelsius
(
)
)
;
display
(
(
char
)

)
;
display
(
"C"
)
;
display
setTextSize
(

)
;
display
setCursor
(

)
;
display
(
ktc
readFahrenheit
(
)
)
;
display
(
(
char
)

)
;
display
(
"F"
)
;
display
display
(
)
;
Blynk
virtualWrite
(
V1
ktc
readCelsius
(
)
)
;
Blynk
virtualWrite
(
V2
ktc
readFahrenheit
(
)
)
;
delay
(
1000
)
;
}
IoT Industrial Temperature Monitor with MAX6675 & ESP8266
Upload the code to the Nodemcu Board. After uploading the code, the Nodemcu will try connecting to the network using the assigned Wifi SSID & Password.
The temperature Data can be observed in OLED Display both in Fahrenheit & in degree Celcius.
You can heat the temperature sensor, i.e. Thermocouple with the Gas Lighter. The OLED will display the rise in temperature.
Similalry you can check the Blynk Application. The Blynk application will receive the data from
Blynk Server
& Display it on Blynk
Application Dashboard

Technologies used

ESP8266ArduinoLoRaBlynkWiFiBLESSD1306OLEDAndroidI2CSPIADC

Hardware components

  • ESP8266
  • Arduino
  • SSD1306
  • OLED

Software & tools

  • Blynk

What you get

  • Working project / hardware kit, tested before delivery
  • Complete source code with explanation
  • Project demo and guidance for your viva
  • Project report, PPT and IEEE paper support (on request)
Delivery & Payment
Delivery takes a minimum of two weeks from the date your inquiry is confirmed. Payment is in two parts: • 50% advance to start the project • Remaining 50% before delivery Note: • Documentation and PPT are not included by default • If you need documentation/PPT, it can be arranged for extra time and cost We'll confirm the exact timeline and cost with you after reviewing your requirements.