max6675 with thermocouple type K

How to use Thermocouple type K (MAX6675) with arduino

Thermocouple is powerful temperature sensor. In this case, using thermocouple type K and MAX6675 can read temperature in range 0ºC to 1024ºC,  this sensos also waterproof. So it’s okay if you want place this sensor in water for measure water temperature. Beside that, thermocouple has tons of module that you can get easily, not like RTD which usually we have to make signal conditioning by ourselves. Sometimes it is really annoying.

max6675 with thermocouple type K
max6675 with thermocouple type K

And, let’s get dirty!

First wire your max6675 to arduino. In this example I use arduino UNO.

Pin SCK -> 6

Pin CS -> 5

Pin SO -> 4

Pin VCC-> 5V

Pin GND -> GND


Gambar koneksi


Double check your wiring, make sure everythings is connected correctly.

Now, it’s time to code.

Before we start code, to make our life easier we can use a library. As example we can use a library from adafruit. You can download here.

After you download the library, copy the folder to your arduino directory/library. It is usually in C:\program files (x86)\arduino\library. If your arduino software is running when copying the library. Make sure you restart the software after add the library to let arduino recognized new library.

Hmmm now it’s real time to code. Haha

You can use code below, or you can find this code at library example.

 #include "max6675.h"

int thermoDO = 4;
int thermoCS = 5;
int thermoCLK = 6;
MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO);
int vccPin = 3;
int gndPin = 2;
void setup() {
 // use Arduino pins 
 pinMode(vccPin, OUTPUT); digitalWrite(vccPin, HIGH);
 pinMode(gndPin, OUTPUT); digitalWrite(gndPin, LOW);
 Serial.println("MAX6675 test");
 // wait for MAX chip to stabilize

void loop() {
 // basic readout test, just print the current temp 
 Serial.print("C = "); 
 Serial.print("F = ");


The result :

Gambar contoh hasil

Leave a Reply

Your email address will not be published. Required fields are marked *