Friday, July 17, 2026

DIY Cooling Box Using Arduino and TEC1-12706 Peltier Module

Looking for an interesting Arduino project? In this project, we built a DIY Cooling Box using an Arduino Uno and TEC1-12706 Peltier module. The system monitors the temperature inside the box and controls the cooling system while displaying the current temperature on a 16x2 LCD. During testing, the temperature dropped from approximately 34°C to 30°C within several minutes.

Building a DIY Arduino-Powered Cooling Box

How the Cooling Box Works

The main cooling component is the TEC1-12706 Peltier module. When powered, one side becomes cold while the other side becomes hot. The cold side faces inside the cooling box, while the hot side transfers heat to a heatsink and cooling fan.

The Arduino Uno acts as the main controller. A DHT11 sensor measures the temperature inside the box, while a 16x2 LCD with I2C displays the current temperature and cooling status. A 2-channel relay module is used to switch the cooling system.


Components Used

Components Required for the DIY Cooling Box

The components used for this project include an Arduino Uno R3, 2-channel relay module, TEC1-12706 Peltier module, 12V DC cooling fan with heatsink, 16x2 LCD I2C display, DHT11 sensor, breadboard, DC barrel jack adapter, jumper wires, 12V power supply, and thermal paste.

Wiring and Arduino Programming

Connecting the Components According to the Wiring Diagram

Before installing the components inside the box, we connected everything according to the wiring diagram. Carefully checking the wiring before applying power helps prevent incorrect connections and makes troubleshooting easier.

Uploading the Arduino Code

Next, the Arduino program was uploaded to the Arduino Uno. The program reads the temperature from the DHT11 sensor, displays the information on the LCD, and controls the cooling system. Click HERE to download.


Mock Testing

Testing the Circuit Before Final Installation

Before installing everything into the cooling box, we performed a mock test. We checked that the LCD displayed correctly and that the relay, cooling fan, Peltier module, and temperature sensor were operating properly.


Installing the Cooling Fan and Heatsink

Preparing the Box for the Cooling System

An opening was made in the cooling box to install the cooling fan and heatsink. Proper positioning of the heatsink and fan is important to effectively remove heat generated by the Peltier module.


Installing the Peltier Module

Installing the TEC1-12706 Peltier Module

A thin layer of thermal paste was applied between the TEC1-12706 Peltier module and the heatsink to improve heat transfer. The hot side faces the heatsink, while the cold side faces inside the cooling box.


Installing the LCD Display

Mounting the 16x2 LCD I2C Display

The 16x2 LCD I2C display was mounted on the outside of the cooling box using double-sided tape. This allows the temperature and cooling status to be monitored without opening the box.


Installing the DHT11 Sensor

Placing the DHT11 Sensor Inside the Cooling Box

The DHT11 temperature and humidity sensor was placed inside the box to monitor the internal temperature. Its readings are sent to the Arduino and displayed on the LCD.


Final Wiring

Reconnecting and Organizing All Components

After installing the components, everything was reconnected according to the wiring diagram. The wires were arranged neatly to keep the project organized and make future maintenance easier.


Testing the Cooling Box

Powering Up the Completed Cooling Box

After completing the assembly, the system was powered on. We checked that the LCD turned on, the cooling fan was running, and the cooling system was operating correctly.

Temperature Drops from 34°C to 30°C

During our cooling test, the LCD showed the temperature gradually decreasing from approximately 34°C to 30°C within several minutes. Actual performance may vary depending on the box insulation, ambient temperature, heatsink, airflow, and power supply.


Conclusion

This DIY cooling box is a great project for learning about Arduino programming, thermoelectric cooling, temperature monitoring, sensors, and relay control. The design can be further improved with better insulation, a larger heatsink, improved airflow, or a more accurate temperature sensor.

Project Contributor: Nasiruddin Bin Nadzrin
Intern, Universiti Teknikal Malaysia Melaka (UTeM)