The MAX6675 is a digital temperature converter designed for K-type thermocouples. Widely used in embedded systems because it can directly convert small thermocouple voltages into digital temperature data using a built-in 12-bit ADC and SPI interface.
This module develop by MAXIM and integrates signal conditioning, cold-junction compensation, and fault detection in a single chip. It removes the need for external amplifiers or analog conversion circuits, making it easy to connect with microcontrollers like Arduino or ESP32.
With a measurement range from 0°C to over 1000°C and stable cold-junction correction, the module is suitable for industrial monitoring, laboratory testing, and DIY high-temperature projects.
1. What is MAX6675 Temperature Sensor Module?
5. Arduino MAX6675 Example Program
8. Frequently Asked Questions [FAQ]

The MAX6675 is a 12-bit K-type thermocouple-to-digital converter developed by MAXIM Integrated. It includes cold-junction compensation, linear correction, and thermocouple open-circuit detection.
Internally, it uses a low-noise amplifier and a 12-bit ADC to convert the tiny thermocouple voltage into a digital temperature value. It also measures ambient temperature using an internal diode and applies cold-junction compensation for accurate readings.
The thermocouple measures the temperature difference between hot and cold junctions, and the MAX 6675 converts this into a stable digital output via SPI, with a measurement range of 0°C to about 1024°C.
Table
Parameter | Specification |
Sensor type | K-type thermocouple |
Resolution | 12-bit (0.25°C per bit) |
Temperature range | 0°C to 1024°C |
Cold junction compensation | Built-in |
Supply voltage | 3.0V – 5.5V DC |
Operating current | ~50mA |
Operating temperature | -20°C to 85°C |
Interface | SPI (Serial Peripheral Interface) |
ESD protection | Up to 2000V |
Module size | 15mm × 25mm |
Pins | GND, VCC, SCK, CS, SO |
SPI Interface Output
Simple SPI serial interface provides direct digital temperature output, making it easy to connect with microcontrollers like Arduino, ESP32, and PIC.
Wide Temperature Measurement Range
Supports a measurement range from 0°C to 1024°C with a high resolution of 0.25°C per step.
Built-in Cold Junction Compensation
Integrated cold-junction compensation ensures accurate temperature readings even when ambient temperature changes.
High Impedance Differential Input
High impedance input design improves measurement accuracy and reduces noise interference from long thermocouple wires.
Thermocouple Open-Circuit Detection
Built-in fault detection identifies broken or disconnected thermocouple conditions for system safety.
Wide Operating Voltage Range
Operates from 3.0V to 5.5V DC with a typical working current of around 50mA.
Operating Temperature Range
Stable performance in environments from -20°C to 85°C.
ESD Protection
Provides up to 2000V electrostatic discharge protection for improved reliability.
Module Interface & Size
Standard interface pins: GND, VCC, SCK, CS, SO. Supply voltage: 3–5V DC. Module size: 15mm × 25mm.
When connecting the board, ensure the thermocouple and MCU wiring are correct for accurate temperature readings.
Thermocouple Connection Note
When hooking up the thermocouple, the red lead should connect to the “+” terminal on the module.
Pinout Table

Pin Name | Description |
GND | Connect to system ground. Must share common ground with MCU. |
VCC | Power supply input (3.0V to 5.5V). Typically connected to MCU power. |
SCK | Serial Clock Input. Connect to any digital I/O pin on MCU. |
CS | Chip Select. Active low signal, connect to any digital I/O pin on MCU. |
SO | Serial Data Output. Sends temperature data to MCU. |
Below is a simple Arduino example using SPI-style reading:
#include <SPI.h>
int SO = 4;
int CS = 5;
int SCK = 6;
void setup() {
Serial.begin(9600);
pinMode(SO, INPUT);
pinMode(CS, OUTPUT);
pinMode(SCK, OUTPUT);
digitalWrite(CS, HIGH);
}
double readThermocouple() {
uint16_t value = 0;
digitalWrite(CS, LOW);
delay(2);
value = shiftIn(SO, SCK, MSBFIRST);
value <<= 8;
value |= shiftIn(SO, SCK, MSBFIRST);
digitalWrite(CS, HIGH);
value >>= 3; // remove fault bits
return value * 0.25;
}
void loop() {
double temperature = readThermocouple();
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" °C");
delay(1000);
}

Microcontroller & Development Use
The module is especially suitable for microcontroller enthusiasts, students, laboratory experiments, and prototype development because its simple SPI interface and easy integration.
Household & Automotive Temperature Monitoring
Widely used for room temperature measurement, automotive modification projects, car air conditioning systems, refrigerators, freezers, and low-to-medium temperature drying ovens.
Industrial & Storage Environment Monitoring
Commonly apply in cold storage rooms, grain warehouses, liquid storage tanks, telecom equipment rooms, power distribution rooms, and cable duct temperature monitoring.
Compact Industrial Equipment Measurement
It is also suitable for measuring temperature in tight or confined industrial spaces such as bearings, engine cylinders, textile machinery, air conditioning systems, and other embedded mechanical equipment.
The MAX31855 is an upgraded version of the MAX6675, offering broader thermocouple support, higher resolution, and wider temperature measurement range.

The MAX31855 includes cold-junction compensation and converts K, J, N, T, or E type thermocouple signals into digital data. It outputs 14-bit signed data through an SPI-compatible interface in a read-only format.
It supports a resolution of 0.25°C and provides a wide measurement range, with readings from -270°C to +1800°C (depending on thermocouple type). For K-type thermocouples, the practical range is approximately -200°C to +700°C with about ±2°C accuracy.
Key Differences Summary
Feature | MAX31855 | MAX6675 |
Thermocouple types | K, J, N, T, E | K-type only |
Temperature range | -200°C to +1350°C (K-type) | 0°C to 1024°C |
Resolution | 14-bit, 0.25°C | 12-bit, 0.25°C |
Output format | Signed digital SPI | Digital SPI |
Cold-junction compensation | Yes | Yes |
ADC requirement | None | None |
Input voltage | 3V – 5V | 3V – 5.5V |
Summary
MAX31855 → More advanced, supports multiple thermocouples, wider range, better for industrial applications
MAX6675 → Simpler, lower cost, ideal for basic K-type temperature measurement projects
Download the data sheet for more details, including electrical characteristics, timing diagrams, pin descriptions, and application circuits.
The MAX6675 is a 12-bit K-type thermocouple-to-digital converter with SPI interface, cold-junction compensation, and built-in amplifier. It converts millivolt thermocouple signals into digital temperature readings from 0°C to 1024°C for microcontrollers easily.
It is a temperature measurement module that connects to Arduino via SPI. The MAX 6675 reads K-type thermocouple signals and sends digital temperature values, allowing Arduino to measure high temperatures without external ADC or signal amplification.
The MAX 6675 operates with a supply voltage range of 3.0V to 5.5V DC. It is commonly powered directly from Arduino 5V or 3.3V systems depending on the microcontroller used.
A thermocouple generates a small voltage based on temperature difference between hot and cold junctions. The MAX6675 measures this voltage, applies cold-junction compensation, and converts it into accurate digital temperature output.
The MAX6675 typically consumes around 50mA during operation. Designed for low-power embedded systems while still providing stable temperature conversion and SPI communication.
The MAX6675 conversion time is approximately 0.2 seconds per reading cycle. It updates temperature data at about 4–5 samples per second, suitable for most industrial and DIY monitoring applications.
MAX6675 is a simple yet powerful temperature measurement solution for high-temperature applications. With built-in cold-junction compensation, SPI interface, and 12-bit resolution, it provides reliable and stable readings for industrial and DIY electronics projects.
If you need a low-cost, easy-to-use thermocouple interface, MAX6675 remains one of the most popular choices for embedded systems and Arduino-based temperature monitoring.
1. MAX31855 Thermocouple Module Board Guide
2. AO3401 Transistor : Pinout, Specifications and Equivalents
3. LR41 Battery Guide: Specifications, Equivalents, and Uses
2025-05-29
2025-05-06
2025-09-04
2025-12-14
2025-06-05
2025-04-23
2026-01-23
2025-07-28
2025-05-12
2025-08-17