Last year, I wrote a blog post titled The Raspberry Pi 4 needs a fan.
And in a video to go along with that post, I detailed the process of drilling out a hole in the top of the official Pi 4 case and installing a 5v fan inside.
But that solution wasn't great. The fan was a little loud and annoying, and would stay on constantly. And who wants to damage the nice-looking Pi Case by putting a hole right in the top?
Well, the folks over at Raspberry Pi Trading—in this particular case, engineer Gordon Hollingworth, as detailed in his post about Designing the Case Fan—must agree with me that the Pi 4 case needs a fan, because they just started selling the five dollar Pi Case Fan.
The fact that the Pi 400 I tore down last month has a massive heat sink built in means the Pi engineers know how important it is to dissipate heat from the Pi's main processor.
Video: Check out the video that goes along with this blog post:
Fan Specs
Some people are interested in knowing exactly what fan is used, and how big it is, so here's an up-close picture:
It looks like this is the AD0205MX-K50 2.5cm 2506 25x25x6mm DC5V 0.13A fan, and from AliExpress, at least, it costs ~$4. It is the 7000 rpm, which according to the spec sheet is the quietest version of that fan model.
Installing the fan
I love how the box has the installation instructions right on the outside. Regardless of how well the fan works, the box designer deserves a shout-out:
To install the fan, pop off the top of the Pi case, line up the Case fan inside the top of the case, and push it in until the tabs click into place. Plug the red, black, and blue wires into the Pi's GPIO header like it shows on the side of the box.
The Case Fan also includes a little heatsink you can stick on top of the system on a chip. If you don't, the Case Fan alone still keeps the Pi from throttling, but spreading the heat using this heat sink makes the fan's job a little easier, so I stuck mine on.
Pop the top cover on the case, and the Pi is good to go!
The fan intake and exhaust are the gaps around the USB and network jacks, and the gap around the microSD card slot and the other ports on the side of the Pi 4, respectively. Read Gordon Hollingworth's explanation about why this was ultimately chosen. It would definitely be better to have actual vents, but the airflow is adequate using this technique to keep the Pi cool using the fan.
Here's a preview of what it looks like on a thermal camera. You can see it still gets slightly warm on top, even with the fan going:
Fan software controls
To support the hardware, a new Pi OS update released on December 2 that made it easy to configure options for the Fan, like which GPIO port the blue wire is plugged into, or what temperature the Pi should reach before the fan is powered up.
I enabled the fan in the Pi Configuration utility, and left the defaults, which are pin 14 and 80 degrees celsius:
If you want to configure the fan settings in the boot config.txt file, the settings are:
dtoverlay=gpio-fan,gpiopin=14,temp=80000
Testing the fan
Here's a graph of the Pi running with the fan set to run at 80 degrees during a 20 minute stress test using the Pi CPU stress script I maintain on GitHub.
And wouldn't you know, the fan works!
You can see the point where the fan kicked in and kept the Pi from throttling before it reached 80°C. At no point when I had the fan installed did the Pi throttle its CPU.
I ran the same test without the case fan installed, and the Pi started throttling around 9 minutes into the CPU stress test:
In both cases, the Pi will behave similarly until the set temperature is reached when the Case Fan turns on.
I could compare the Case Fan to other Pi cooling solutions I tested before, but I don't think that's too important here. The Case Fan is built to do one thing: keep the Pi 4 from throttling when it's inside the official Pi 4 case. And it does that.
So it's a good improvement, but the most important thing for me, especially since I'm used to the blissful silence of my fanless Flirc cases, is how loud the fan is when it runs, and how often it runs.
How loud is the fan?
To test how loud it is, I used the dB Meter app on my iPhone, and put the iPhone a few inches to the left of the Pi in the case:
For those wondering... this is what the Pi 4 Case Fan sounds like. #RaspberryPi #CaseFan pic.twitter.com/0seeAhkL9q
— Jeff Geerling (@geerlingguy) December 5, 2020
A little unpleasant, and it has a high pitched whine that reminds of of the sound you get in an unbalanced audio system with a bit of electrical interference.
In the video Raspberry Pi Case Fan - How Loud is it?!, I also compare that sound to the sound of my 5v 'PiFan' and the blissful silence of a passively-cooled Flirc case.
When you're dealing with fans that cost less than five dollars, you're not going to get some silent noctua-quality fan—you're more worried about controlling the temperature than the noise. But it is something to consider. The smaller the fan, the more likely it has some annoying pitch.
But there is good news. If you set the fan to only come on at 80°C, then it seems to only have to run for 30 to 60 seconds every three to five minutes if the Pi is under constant one hundred percent load.
It cools it down to around 70 degrees, then shuts off until the Pi hits 80 degrees again.
It's a reliable enough compromise that I'd recommend it to anyone using the official case. But if the Pi Foundation plans on making a similar case for the next Raspberry Pi, I hope they consider the thermals in the case design itself, and either build a passive heat sink into the case like the Flirc, or build a fan into the design of the case itself, instead of as an addon.
Conclusion
If you already use the official Pi 4 case, then for five bucks, the Case Fan isn't a bad deal. It keeps the Pi from throttling, and only kicks in under the heaviest loads.
But it does sound a little annoying and makes its presence known.
I'd still recommend using a different case, like my favorite, the Flirc case, or finding other creative ways to mount your Pi 4 so it keeps its cool without a noisy little fan.
Comments
I'm starting to suspect that I'm the only person using HATs on Pis. None of these pretty cases and fans are any use on a Pi with a HAT.
I have a fan HAT, so I'm on both teams.
this has always irked me as well. i wound up soldering my leads onto the bottom of the pins, which would be even better if i'd used a fan with a third wire for a gpio connection.
however i have to be careful about the hats i use, on the off chance drawing a current with the fan affects a particular hat's operation
You are not alone. I have several pi's with DAC's... had to roll my own solution. Seems like there would be some out there to help folks who do more with pi's.
It would be nice if the header wasn't soldered from the factory, as in the Zero. That way Hats could be installed underneath.
I aggree with it. See my answer aboput the same issue. I connect the fan onto the USB-ports so that the GPIO is free for use of a hat
What are the dimensions of the fan? I can't seem to find it anywhere, not even on the official page.
I just updated the post above with all the details (and an up-close picture of the fan and a ruler), and it is 2.5cm square.
I got a fan packed with my canakit rpi 4b 8gig model months ago......
Be careful the correct one is a K59 not a K50 that has only two wires.
I bought the fan pi fan kit for $5, and am looking to purchase more of the fans for my other pi's that are not in the official pi case. So I've been trying to find this exact model with the 3rd wire and been able to find it on even Ali-Express when I search for the exact part number: AD0205DX-K59. Though searching on AD0205MX-K50 on Ali-Express does bring back the search result for the 2 wire fan.
I'm thinking it might have been a custom model for the Pi?
Has anyone else found a source for just the fan? I might just have to buy the whole package and pull out the fan otherwise.
-- Greg
Hi Greg,
did you manage to find any? Exactly my need as well. I also need a bit bigger in size, i.e. 40mm. The cases I have are using 40mm fans with no GPIO control (like the one Jeff has installed in the pi case manually).
Best Regards,
Panos
The firmware control option for this fan just turns it on at 80C and then off again at 70C. I wrote a C program using the pigpio library to demonstrate PWM control of the fan. It's quieter, more efficient, should extend fan and CPU life through less cycling, but still prevents throttling under full load in 25C environments. Testing, comments, and improvements are welcome. Maybe it could become an option in a future firmware version. Please comment on Github.
https://gist.github.com/alwynallan/68b6a9405de3ea493bbf53d2b0e9d52b
Thanks, Jeff!
And just to give another update, here's a new version that doesn't use much CPU at all! Much more efficient and ready to install as a service: https://gist.github.com/alwynallan/1c13096c4cd675f38405702e89e0c536
How much power does it use? I just started with rpi, and found this pages, very informative, thank you!
Would you be able to update https://www.pidramble.com/wiki/benchmarks/power-consumption for rpi4, please.
My observation with rpi4 that it draws 300 mA when turned OFF(os shutdown), and that is contradicting what you have measured with rpi3 (10 mA). I wonder if it is a design defect with rpi4 or something else.
New to all of this but can the fan be swapped out with a noctura, I've found so much help on the Internet, you guys are great. In two weeks I've got my pi booting of a ssd drive, connected my printer, connected to my nas, and enjoying each hurdle when its overcome. Thank you all.
I made some holes on top cover, for air in (closer to usb ports) and air out (right after the cpu oposite to the fan), and it does reduce the fan noise a little because the fan makes less effort to move air arround. It cools down from 75ºC to 65ºC (yes, I changed to start at 75) in less 9 seconds compared to the original cover with 100% cpu stress 4 cores at 1750 overvoltage=2 and room temp of 23ºC. The noise it makes is still a bit to much, fortunaly for me the fan rarely fires up, because my pi rarely goes over 65ºC.
Keep up the good work Jeff (sorry my english)
I am using my pi to run a full eth2 node and the cpu is pinned 24/7 but the fan noise is killing me. Nay way to get the fan to run at a lower rpm?
thanks
Hello Jeff, to all,
thank you for your post. Interestingly, this fan has a GPIO control embedded. I am trying to find similar fans (having GPIO control), without the official case, and also bigger in size (40mm). Does anybody know if there are any 40mm fans for the pi with GPIO control?
Thanks and BR,
Panos
Hi everybody,
I'm using my Pi 4 in a very distant place and I want to find out how often the fan turns on in its current configuration. Does anyone know, if the fan control daemon writes a log about its measurement and decissions?
I am genuinely surprised that the PI fan is connected to the GPIO pins. This makes the use of PI hats impossible. With a little creativity it is also possible to connect the fan to one of the USB ports. You may not be able to control the fan, but you do save the GPIO pins
If using the PoE+ hat, that one also has a fan. And with some fiddling (adapting fan plug to fit what PoE+ board has, ZH 3-pin connector), you can use any other one, including Noctua fans, instead of the hat stock fan.