MAX6675 Temp Module Arduino Manual and Tutorial

Introducing the MAX6675 for your Arduino.

MAX6675 K TC ModuleThermocouples have been around forever and are a great way to measure temperature.  They have a very large range, are robust and come in all kinds of lengths, varying tip configurations and a variety sheaths.

The challenge with using thermocouples is with the need for what is known as cold junction compensation and the need to detect a very small voltage change for every degree in change of temperature.

Fortunately there are chips like the MAX6675 that make connecting a thermocouple to your Arduino an affordable breeze.  The device measures the output of a K Thermocouple and provides the result to the Arduino via a SPI interface.

Shop for a MAX6675


Bang Good


Basic Specifications

As you can see in the table below, the fundamental requirements and capabilities jive nicely with the abilities of your Arduino micro-controller.

A word of warning –  There are some that sell this module that think it’s measurement range is from -200 to 1300 degrees F.  They’re wrong.  The MAX6675 chip measurement range is limited to what is detailed below:

Supply Voltage3.3. to 5 VDC
Operating Currentabout 50mA
Measurement Range0 to 1024 deg C
(32 deg F to 1875 F)
Measurement Resolution+/- 0.25 Deg C
(+/- 0.45 Deg F)
OutputUses a SPI Interface
Required SENSORK Thermocouple

TEMPERATURE RANGE NOTE:  It is true that MAXIM 6675 will read from zero to 1024 degrees C.  However, there is another limiting factor.   The K thermocouple will come with insulated wires and cable sheathing.   These too have temperature limits associated with them.  It is not unusual to have a sheathing on your thermocouple that fall below the range of the maxim chip.  Be careful here.

 MAX6675 Module Pin Outs

The pin-outs for this module are shown in the illustration below. Click on the image to make it larger.

MAX6675 K Thermocouple Module Pin OutsThese pins function as follows:

SO: The module’s serial output.   Your Arduino will read this output.

CS:  Chip Select.   Setting low, selects the Module and tells it to supply an output that is synchronize with a clock

SCK : The Serial Clock… an input from your Arduino.

VCC: 5V supply

GND:  Ground.

– (or Minus):   The K thermocouple minus input.

+ ( or Plus):  The K Thermocouple plus input.

IMPORTANT NOTE– Most K thermocouples come with a red lead and a yellow lead.  The red lead is normally your negative connection and the yellow lead is your positive.  That is industry standard.

That said, some of the suppliers for the module will in fact jack this up  and provide you a thermocouple with red indicating positive.

The way to know is if you increase the temperature at the thermocouple tip and the indication goes lower.

MAX6675 Arduino Thermocouple Module Schematic

This module is a duplicate of the what is offered in the datasheet as a sample circuit.  In fact, if you were so inclined, you could simply buy the MAX6675  and build your own thermocouple measuring circuit for a few bucks less.  (click to enlarge)

MAX6675 K Thermocouple Module Schematic

MAX6675 Arduino Tutorial

Get the MAX6675 Arduino Library

The Maxim 6675 library for your Arduino if freely available at GitHub.   You can get it here.

If you are unfamiliar with installing Arduino libraries, you can read this page.

Connect your Arduino to the Thermocouple Module

Pretty simple stuff.   Keep the note about the thermocouple polarity in mind as you make these connections. (click image to enlarge)

MAX6675 Arduino Connections

Copy and Paste the Arduino MAX6675 Sketch


// Sample Arduino MAX6675 Arduino Sketch

#include "max6675.h"

int ktcSO = 8;
int ktcCS = 9;
int ktcCLK = 10;

MAX6675 ktc(ktcCLK, ktcCS, ktcSO);

void setup() {
  // give the MAX a little time to settle

void loop() {
  // basic readout test
   Serial.print("Deg C = "); 
   Serial.print("\t Deg F = ");

Related Documents

The MAX6675 Data Sheet

MAX6675 Datasheet


  1. Just_Chris October 27, 2016
  2. Miguel Rodmen September 21, 2016
  3. Emanuel August 22, 2016
  4. Fedri August 18, 2016
  5. Grant June 6, 2016
  6. Brendan June 4, 2016
  7. uriel April 25, 2016

Leave a Reply

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