I want to use a 4-pin PWM PC fan to cool a computer's CPU because the motherboard is no longer able to control the liquid cooled CPU's radiator fan, and I can't afford a replacement motherboard, right now. I'm working with a high output fan that runs at 5300 RPM. It's very loud at that speed.
I want to set up something that will work similarly to the motherboard's BIOS - fan speed increases, increases/decreases based on the current temperature. My thought is to use the radiator output air temperature to control the variable speed fan. Unfortunately, all the examples I've found involve either maintaining a single temperature (using a PID controller), and/or changing the speed of a three-speed fan (based on time of day, or three specific temperatures, etcetera). I want to be able to set a minimum and maximum temperature to control the fan speed, proportionally.
I've been able to use ESPhome with an ESP8266 (Wemos D1 Mini clone) to set up temperature measurement (using a DHT22), and manual fan speed control (using ESPhome's "Speed Fan" - slider control via the GUI), so I know the electronic circuitry is working. I need help to get the PWM output to change based on a set temperature range (fan speed proportional to a temperature range). Any suggestions as to how to get this working would be much appreciated.