Close

Problem Statement

A project log for CM5 IO Board Fan Halt

Automatically stop the fan when shutting down you Compute Module 5. Finally some peace and quiet!

eontronicsEontronics 11 hours ago0 Comments

I like the Raspberry Pi Compute Modules. I like coming up with a million and one ways they could be put into projects where they don't necessarily belong. I like procrastinating so much that I never get round to doing anything with them! Following this trend, I liked the announcement of the Raspberry Pi Compute Module 5 so much that I had to ask to get one for Christmas. 

However, reading up on the Compute Module 5 and its accompanying IO board, there appeared to be a slight problem. THE FAN.

The Compute Module 5 uses an open collector output to drive the fan PWM signal to control its speed. After being shutdown, the fan remains powered while this output is disabled. As a result, the internal pullup resistor within the fan pulls the PWM line high (which is a common feature in 4-pin desktop fans that allows them to be driven from a 3-pin fan header), and then the fan starts whizzing up to full speed! A definite nuisance, when everything is supposed to be shut down, and the only way to stop the whirring is to unplug the power.

Having to fiddle with the USB-C connector whenever you want to turn the Pi on or off is annoying, especially if you want to have it tucked away in a corner running headless with a dozen other cables snaking around it.

This project will eradicate this especially minor inconvenience once and for all by fixing what should have always been in the first place, and STOP the fan when everything has been shutdown.

Fortunately, there is a more or less unused area right next to the fan header on the Compute Module 5 IO board, sandwiched between the Compute Module 5 itself and the M.2 NVME SSD. This appears to be the perfect place to squeeze in a little extra logic to finally put a stop to the tyranny of unwanted fan noise.

Discussions