Electrical – Controlling a 3-pin 12V 3A fan using a Raspberry Pi

dc motorfanraspberry pi

I have a Highfine FFC1212DE 120mm fan that operates at DC 12V 3.0A max and want to control it variably using a RPi. The third pin on the fan is a tach reading, not pwm control.

I'm looking to change the speed of the fan based on temperature input so using a relay isn't a good solution.

What is the best way to do this? Can I use a higher rated digital potentiometer?

Best Answer

You can simply use a MOSFET:

schematic

simulate this circuit – Schematic created using CircuitLab

Based on the temperature, you have to generate a PWM wave at the digital out pin. The MOSFET chosen should be able to withstand the current requirement of the fan and switch on at 3.3 V input.