
The MAX6675 Module is a compact and efficient solution for temperature measurement applications. It interfaces with a K-type thermocouple and provides a digital output corresponding to the measured temperature. This module is widely used in systems requiring temperature control and monitoring, such as 3D printers, HVAC systems, and various industrial processes.








| Pin Number | Pin Name | Description |
|---|---|---|
| 1 | VCC | Power supply (3.0 to 5.5V) |
| 2 | GND | Ground |
| 3 | SCK | Serial Clock Input |
| 4 | CS | Chip Select (active low) |
| 5 | SO | Serial Data Output |
| 6 | T+ | Thermocouple positive input |
| 7 | T- | Thermocouple negative input |
#include <SPI.h>
// Define MAX6675 SPI pins
const int thermoDO = 4;
const int thermoCS = 5;
const int thermoCLK = 6;
void setup() {
// Initialize serial communication
Serial.begin(9600);
// Set SPI pins to output
pinMode(thermoCS, OUTPUT);
pinMode(thermoCLK, OUTPUT);
pinMode(thermoDO, INPUT);
// Disable device to start with
digitalWrite(thermoCS, HIGH);
// Initialize SPI
SPI.begin();
}
double readTemperature() {
// Ensure CS is low to enable the module
digitalWrite(thermoCS, LOW);
delay(1);
// Read temperature data
uint16_t v = SPI.transfer16(0x0000);
// Disable the module
digitalWrite(thermoCS, HIGH);
// Process the raw data
if (v & 0x4) {
// Detect if thermocouple is disconnected
return NAN; // Return Not-A-Number
}
// Remove unused bits
v >>= 3;
// Convert to Celsius
return v*0.25;
}
void loop() {
// Read and print temperature
double temperature = readTemperature();
if (!isnan(temperature)) {
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" C");
} else {
Serial.println("Error: Thermocouple disconnected!");
}
// Wait for a bit before reading again
delay(2000);
}
Q: Can the MAX6675 Module be used with other types of thermocouples?
A: No, the MAX6675 is specifically designed for K-type thermocouples.
Q: How long can the thermocouple wires be?
A: The length can vary, but it's recommended to keep the wires as short as possible to prevent signal degradation. If longer wires are necessary, use shielded cables.
Q: What is the maximum temperature the MAX6675 can measure?
A: The MAX6675 can measure temperatures up to +1024°C.
Q: Can I use multiple MAX6675 modules with one microcontroller?
A: Yes, you can use multiple modules by connecting each CS pin to a separate digital output on the microcontroller and selecting the appropriate device before communication.