This project is about hacking a notebook cooling pad and adding a simple temperature sensor that control the fan. An OLED display is used to display temperature of the laptop (outside), along with a push button to allow adjustment of temperature set point.
Step 1: Materials Needed
1 DHT11 temperature sensor
2 10k ohms resistors
1 1k ohms resistor
1 momentary push button
1 2N2222 NPN transistor
1 Diodes 1N4001
1 LED (optional)
1 330 ohms resistor (optional)
1 Arduino Mini Microcontroller 5V board (you can use any other ones as long as it has enough memory)
1 OLED display SSD1306 5V compatible version (I bought mine from #Adafruit since their library works right away with the code)
1 5VDC Relay
1 PCB board to put all the components together
1 Notebook cooling pad (Look for one that will run on USB power)
Of course all your standard soldering gun, wires, some glue.
All of these materials can be purchased online or your local electronic stores.
Step 2: General Steps
This is how you put the components together. I will try to outline the main steps. The detail of the component wirings will be included in the Fritzing diagram.
1. Get our Notebook cooling pad and open it up. Sometime the screws are hidden below the rubber footings. Pry it off and you probably want to keep it as you want to put it back when you are done.
2. Pay attention on the location of the fan and decide where you want to put the DHT11 temperature sensor. I put mine in the middle of the board because that is where my laptop has some cooling slots for the memory.
3. Find where the power come in in your cooling pad.There is usually a standard DC Barell plug into it or a USB connector. You need to find out where the positive and negative of the power input is coming into the board because you will insert the relay normally open contact as part of that wiring/circuit.
4. Use the Fritzing diagram and solder away.
5. Preparing the case. Use a sharp utility knife or Dremel to make opening for your small push buttons and SSD display.
Step 3: Fritzing Schematic
Step 4: Upload the Code
Start your Arduino IDE and compile and upload.
This code is written for Arduino Mini Pro micro controller. I think most of them will work with other Arduino styles as I don't use anything unique to the Mini Pro. The one thing you may run into problem is not enough memory. I know you can not use something like a Trinket since the SSD library require lots of library.
Thanks always to #Adafruit for providing the library and tutorials on the multitasking code.
I use FT232RL programming board from Sparkfun.
Here are my connections :
FT232RL pin -> Arduino
Vcc ------> Vin Raw
RX -------> TX
TX -------> RX
Green ------> DTR
Step 5: Prepare the Case
You need to cut a few holes.
One for the OLED display.
One for the DHT11
One option for the LED. Usually this cooling pad has built in LED and you can use that as is. I included this in my design in case you want to have an indication if the power is going into the fan or not.
Step 6: Try It Out
Okay it is time to try it out.
Plug in the USB of the laptop cooling pad to your laptop.
The temperature is preset to 76 degree to begin, and if your room temperature or laptop temperature is above 76 degree, the laptop fan should turn on right away. If the laptop temperature is below 76 degree, it will not. All these information is displayed in your OLED display.
You can push the button to change the temperature set point. I make it so it increments from 76 up to 78 then start again at 72 with 0.5 degree F steps. All these parameters can be changed in the code.
Have fun and please vote on my project for Arduino.
Participated in the
Arduino All The Things! Contest