TempTune
Auto-adjusting laptop cooler for efficient cooling and energy savings.
Author: Bilciurescu Gabriel-Cosmin | Pica Eduard-Ionut
GitHub Project Link: https://github.com/UPB-FILS-MA/project-Gabriel-x-1
Description
This versatile laptop cooler works with any laptop and offers dual power options: USB interface or its built-in rechargeable battery. It features multiple temperature sensors that adjust fan speed to maintain optimal cooling, with asynchronous fans activating only when needed to save energy.
The smart cooling system prevents overheating, extending your laptop's life and conserving battery. Its robust, advanced 3D-printed design is durable and well-suited for heavy use, whether for gaming, work, or streaming.
The cooler includes a desktop application for advanced monitoring, providing real-time heat mapping and tracking your laptop's internal hardware activity. It also identifies patterns in laptop activity based on task intensity, allowing you to optimize cooling for different scenarios. With this cooler, you can maintain ideal laptop conditions while gaining insights into its performance over time.
Motivation
While searching for a reliable laptop cooler, I found that existing options were either too noisy, lacked intelligent cooling, or weren't portable. I needed a cooler that could automatically adjust fan speeds based on temperature, providing effective cooling without wasting energy. A built-in rechargeable battery was essential for portability, allowing the cooler to work independently of a power outlet.
I also wanted advanced monitoring through a companion app, providing real-time heat mapping and insights into my laptop's internal hardware activity. This would help optimize cooling based on task intensity. These unmet needs drove me to create a smart laptop cooler with adaptive cooling, power flexibility, advanced monitoring, and a robust design. My goal was to offer a solution that could efficiently keep laptops cool while providing valuable insights into their performance.
Architecture
The USB interface connects to the charging module, which is responsible for recharging the battery that powers the entire system. The battery provides power to the Raspberry Pi Pico W and supplies current to the collector terminals of the transistors.
Temperature sensors are used to measure the ambient temperature, and they send their readings to the Pico W microcontroller. When the temperature recorded by a sensor exceeds a predetermined threshold, the Pico W activates the corresponding transistors by sending current to their base terminals.
To operate a 12V cooling fan, a voltage amplifier is employed to boost the output voltage from the Pico W to approximately 12 volts. This elevated voltage drives the fan, enabling it to cool the laptop. The fan continues to operate until the temperature detected by the sensor falls below the set threshold.
The circuit features an on/off button that allows users to power the system up or down, and an LED indicator that signals whether the cooling system is currently active or inactive.
Log
Week 6 - 12 May
The hardware components arrived.
Week 7 - 19 May
Changed the power supply method, and came up with a new solution to power up the pico w. Continued to develop the software part, with focus on the onewire communication protocol with the temperature sensor. Changed the aproach for thermal readings and switched to analog sensors.
Week 20 - 26 May
Implemented the cross platform desktop aplication witch connects with the device via WIFI to send relevant data and analitics and customize the user experience of the device. Successfully completed the final testing phase of the product, ensuring all components function harmoniously. Conducted a comprehensive review and debugging session, resulting in a robust, fully operational device.
Hardware
MT3608 28V 2A - is a voltage regulator that we use to amplify the current given by the battery to power the fans DS18B20 (TO-92) - is a digital temperature sensor with adjustable accuracy from 9 bit to 12 bit readings 2n2222 NPN BJT - are cheap bipolar transistor that we use as a switch to power the fans TP4056 - is a module we use for charging the battery
This is the final product simulation made in Fusion:
This is the current internal circuit of the project( not mounted with the frame and coolers for easy code debuging)
This is the 3D printed frame with mounted fans :
Schematics
Bill of Materials
Device | Usage | Price |
---|---|---|
Rapspberry Pi Pico W | The microcontroller | 35 RON |
Fans | For cooling | 40 RON |
MT3608 28V 2A | Voltage regulator | 23 RON |
DS18B20 (TO-92) | Ultra thin thermistor | 20 RON |
Switch | On/off button | 3 RON |
Resistors | The resistors | 15 RON |
Wires | The wires | 7 RON |
Red LED | LED | 0.5 RON |
Breadboard | for prototyping | 10 RON |
2n2222 NPN BJT | NPN BJT Transistors for current amplification | 2 RON |
TP4056 | Charging module for the battery | 6 RON |
18650 LI-ION Battery 3200mA 10A Panasonic | Battery | 23 RON |
Kit Powerbank 1S, 18650, 5V | Power Supply | 13 RON |
Software
Library | Description | Usage |
---|---|---|
embassy_rp | Embassy Hardware Abstraction Layer (HAL) for the Raspberry Pi RP2040 microcontroller | Used to program the Pico |
embassy_sync | Synchronization primitives and data structures with async support | Used for communicating through different tasks |
embassy-executor | An async/await executor designed for embedded usage | Used for task execution |
embassy-time | Instant and Duration for embedded no-std systems, with async timer support | Timekeeping, delays and timeouts. |
embassy-net | Async TCP/IP network stack for embedded systems | To send data to the computer through wifi |
Kalman Filter | A filter for smoothing readings from sensors | To correct the temperature value sent by the sensors |
Links
- Kalman Filter
- MT3608 DC-DC Vol
- Transistor Interfacing to Pico W
- Temperature sensor tutorial
- Beginners Guide to 3D Printing
- TP4056 Charging Module ...
Final Project