I needed a cheap heatsink for my Raspberry Pi 3 that I use as a music player/server. To maximize performance, I wanted to overclock the computer for faster searching and handling of all my music. I’ve managed to overclock my central Stratum-1 NTP server to 1350MHz without any problems, but the dinky little aluminium heatsink was way to anaemic, so I found a very cheap DIY solution to my question. With this heatsink, I can run the Raspberry Pi 3 at 1.5GHz all day at full tilt without any issues!

DIY Heatsink

When it comes to heat dissipation, there’s no substitute for size and the right material. Copper is massive and has excellent heat transfer abilities, so I searched and found cheap GPU heatsink shims that were 15x15 mm for under $8 including shipping. All I needed to do was to stack a lot of them on top of each other while having them protrude on each side for heat dissipation as you can see in the picture. A pleasant side effect is that the heat sink isn’t high, so I can have my DAC-card mounted without a clearance problem. So I got some cheap heatsink compound and regular super glue and just put the heatsink compound on each copper plate, leaving space in the middle for a small dab of glue. Yes, I super glued the copper plates directly on the CPU, because, hey, a Raspberry Pi is cheap!

And the results are excellent!

Overclock settings

Here are the settings in the setup file /boot/config.txt for the overclocking part.

# Overclocking
arm_freq=1500
sdram_freq=550
over_voltage=6
temp_limit=85   #Will throttle to default clock speed if hit.

Running the command

sysbench --num-threads=4 --test=cpu --cpu-max-prime=2000000 run

For over an hour, the temperature never exceeds 65 C° and this while at the same time playing 24-bit 192KHz audio. Raspberry Pi 3 mounted inside a box with a DAC card added on top! Not exactly optimal, thermal wise. I’ve waited two months before writing this up because I wanted to make sure it would work in the long run. It’s now been running continuously now without any glitches. So the next step is to try the same thing on my NTP server. It’s going to be interesting to find out if I can go higher than 1350MHz that it’s currently running when installing in my 3D printed case with a fan on top. Hoping for 1.5GHz on this one as well naturally.

Doing More Useful Stuff

A commenter mentioned that doing a kernel compile would simulate the hard use of the Raspberry Pi 3 better, so I downloaded the source code and did two compiles after each other of the entire kernel source. Highest temperature? 66.6 C° or 150.8F. Must be working with a daemon that made it come up with that number.

Screenshot 2016-12-27 14.07.34

“The Number of the Beast!”

Power

I was just a bit curious how much current the Raspberry Pi 3 would draw because I have a 5 Volt, 1 Ampere power supply and there’s a lot of talk about needing 2 Ampere. I used my beloved YZXstudio USB Power Meter to check how much current it uses and to my surprise it only used around 560 milliAmpere, using up about 2.8 watts. The Raspberry Pi 3 running with 100% load on all four cores. The DAC wasn’t running when testing though. I had to double-check that number because I thought it would be much higher, but it’s correct. Nothing connected to the USB ports and no screen attached. But pretty good!

Raspberry-Pi-3-power-usage

Maybe I just got lucky with this card, and it’s a fluke because there are differences between cards. But I think this is an excellent alternative to the cheap aluminium heat sinks that everyone is selling anyway.