

A Thermoelectric Cooler (TEC) pad, also known as a Peltier device, is a semiconductor-based electronic component that utilizes the Peltier effect to transfer heat from one side of the device to the other. When a DC current is applied, one side of the TEC pad becomes cold while the opposite side becomes hot, allowing for precise temperature control in a variety of applications. TEC pads are commonly used in applications such as:








| Parameter | Specification | Notes |
|---|---|---|
| Operating Voltage | 3.0V - 15.6V | Depending on model |
| Maximum Current | 6A | Avoid exceeding to prevent damage |
| Power Rating | Up to 60W | Varies with operating conditions |
| Temperature Range | -40°C to 85°C | For standard TEC pads |
| Cooling Capacity | Up to 70W | Depending on model and conditions |
| Coefficient of Performance (COP) | Varies | Efficiency at given conditions |
TEC pads typically have two wires or leads for electrical connection. The polarity of these leads determines the direction of heat transfer when current is applied.
| Pin | Description |
|---|---|
| Red | Positive (+) Lead |
| Black | Negative (-) Lead |
Q: Can I reverse the heating and cooling sides of the TEC pad? A: Yes, by reversing the polarity of the current, the hot and cold sides will switch.
Q: How can I control the temperature of the TEC pad? A: Use a temperature controller with a feedback loop from a temperature sensor to regulate the current through the TEC pad.
Q: Is it possible to stack multiple TEC pads for greater temperature differences? A: Yes, but each TEC pad will need its own heat sink, and the efficiency will decrease with each additional stage.
Below is an example code snippet for controlling a TEC pad with an Arduino UNO. This example assumes the use of a digital temperature sensor and a MOSFET to control the current to the TEC pad.
#include <OneWire.h>
#include <DallasTemperature.h>
// Data wire for the temperature sensor is plugged into pin 2 on the Arduino
#define ONE_WIRE_BUS 2
// Setup a oneWire instance to communicate with any OneWire devices
OneWire oneWire(ONE_WIRE_BUS);
// Pass our oneWire reference to Dallas Temperature sensor
DallasTemperature sensors(&oneWire);
int tecPin = 3; // TEC pad control pin (connected through a MOSFET)
void setup(void)
{
// Start serial communication for debugging
Serial.begin(9600);
// Start up the library
sensors.begin();
// Set the TEC control pin as output
pinMode(tecPin, OUTPUT);
}
void loop(void)
{
// Call sensors.requestTemperatures() to issue a global temperature
// request to all devices on the bus
sensors.requestTemperatures();
Serial.print("Temperature is: ");
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"?
// You can have more than one DS18B20 on the same bus.
// 0 refers to the first IC on the wire
float temperature = sensors.getTempCByIndex(0);
// Simple control - turn on TEC pad if temperature is above 25 degrees Celsius
if(temperature > 25){
digitalWrite(tecPin, HIGH);
} else {
digitalWrite(tecPin, LOW);
}
delay(1000); // Wait 1 second before next measurement
}
This code is a basic example and does not include PID control for precise temperature regulation. For more advanced applications, consider implementing a PID controller library.