Controls
A control is one thing that spins: a fan header on the motherboard, a GPU's fans, a pump. Each control gets a card on the Home screen. Everything below is set on that card.
Curves and manual control
A control is driven either by a fan curve or by hand. To use a curve, pick it from the Curve menu on the control's card. To set a fixed value instead, tick Manual control and type the percentage you want.
Manual control is handy for testing: set 100 % to hear a fan at full speed, or 0 % to find out whether it can stop at all.
Speed sensor pairing
Pairing tells a control which speed sensor belongs to it, so the app knows what the fan is really doing. It is the first step for every control, and calibration needs it.
Pick the sensor yourself, or press Auto pair: FanControl Pro nudges each control in turn and watches which sensor answers. Assisted setup pairs every control this way on first launch.
Calibration
Calibration learns how one particular fan behaves. It finds the point where the fan starts, where it stops, and its lowest and highest speed, then records how many RPM each percentage gives. It takes about a minute per fan; keep the PC idle while it runs.
A calibrated control can use RPM mode and RPM avoid zones, and its curve values mean the same thing on every fan.
Control parameters
- Step up
- The fastest the control may rise, in percent per second.
- Step down
- The fastest the control may fall, in percent per second.
- Start
- The value used to kick a stopped fan back into motion.
- Stop
- Below this value the control drops straight to 0 %.
- Offset
- Added to whatever the curve or manual value asks for.
- Minimum
- A hard floor the control never goes under, even in manual mode.
- RPM avoid zone
- A speed band the fan passes through but never settles in. Needs calibration.
Graphics cards
GPU makers keep part of the fan logic inside the driver. FanControl Pro works with those rules rather than against them; knowing them makes a good GPU curve easy.
NVIDIA
Recent GeForce RTX cards set three limits for any third-party app:
- A 30 % floor. Below that, the card ignores the command, and 0 RPM can't be forced by hand.
- A zero-RPM temperature, usually around 45 °C, set by the card itself.
- A power limit for zero RPM. Several monitors can push idle power past it and keep the fans turning.
When a curve asks for 0 %, FanControl Pro hands the fans back to the driver, which stops them if the card allows it. So a GPU graph should sit at 0 % up to the card's zero-RPM temperature, step up to 30 %, and do whatever you like after that.
AMD
Radeon cards are read and controlled through the same interface Adrenalin uses. That brings a few rules of its own:
- Tuning resets. Applying a fan setting returns Adrenalin's overclocking values to their defaults.
- A zero-RPM temperature, shown as a dotted line on Adrenalin's fan graph. Plan your curve around it.
- A minimum command, usually 30 %. Lower values, except 0 %, are refused.
The shape is the same as for NVIDIA: 0 % up to the zero-RPM temperature, a step to the minimum, your curve from there.
Fan curves
A fan curve turns a temperature into a speed. Curves live on their own cards and can drive any number of controls. Every curve except Flat and Sync shares two settings:
- Hysteresis
- How far the temperature must move before the output changes, set separately for rising and falling.
- Response time
- How long a change must last before the curve reacts.
- Ignore hysteresis at the ends
- Reach the curve's lowest or highest point straight away; hysteresis applies again once back inside the range.
RPM mode
Any curve can output target RPM instead of percent: switch it from the curve's menu. The control then aims for that real speed, whatever the fan. Only calibrated controls can follow a curve in RPM mode.
Linear
Two temperatures and two speeds, joined by a straight line. Below the low temperature the curve holds the low speed; above the high temperature, the high speed.
- Temperature source
- The sensor the curve reads.
- Min. and max. temperature
- Where the line starts and ends.
- Min. and max. speed
- The speeds at those two temperatures.
Graph
A curve you draw. Press Edit on the card to open the editor: left-click adds a point, right-click removes one, and the Selected point fields place a point exactly. The editor below works the same way with the mouse or the arrow keys.
Mix
Combines existing curves with one function. Bind each curve to a different sensor, mix them, and one group of fans answers to the whole system.
- Function
- Max, Min, Average, Sum or Subtract.
- Fan curves
- Any existing curves, as many as you like.
Trigger
Two states with a gap between them. The fan runs at the idle speed until the temperature reaches the load point, then holds the load speed until it falls all the way back to the idle point. Nothing changes in between, so the fan never hunts.
- Idle and load temperature
- The two switching points.
- Idle and load speed
- The speed held in each state.
- Response time
- How long a crossing must last before the state changes.
Flat
A fixed percentage. Point several controls at one Flat curve and change all of them from one place.
- Fan speed
- The value, in percent.
Sync
Outputs whatever another control is doing. Change the curve on that control and every synced fan follows.
- Selected control
- The control to follow.
- Offset
- Added to the followed value, in percent.
- Proportional offset
- When ticked, the offset scales with the value instead of being added as is.
Auto
Searches for the lowest speed that holds a load temperature you choose. Below the idle temperature it runs at the minimum; around the load temperature it nudges the speed up or down, one step at a time, until the temperature settles. It suits steady loads such as rendering better than everyday use.
- Idle temperature
- Below this, minimum speed.
- Load temperature
- The temperature to hold.
- Min. and max. speed
- The range the search stays inside.
- Step
- How much the speed moves per response time; half as much while cooling down.
- Deadband
- The band under the load temperature that counts as on target.
- Response time
- Time between steps; doubled while cooling down.
Custom sensors
Custom sensors are built from other sensors and appear in every Temperature source menu, like the hardware ones.
Time average
Averages a sensor over a period you set. A 30-second average of the CPU package ignores the spikes a browser tab causes.
- Temperature source
- The sensor to average.
- Time
- The averaging period.
Mix sensor
Applies one function to several temperature sensors, for example the hottest of three drives.
- Function
- Max, Min, Average, Sum or Subtract.
- Sensors
- Any existing temperature sensors.
File
Reads a temperature from a text file: the first line of the .sensor file, in °C. Any script or device that can write a file becomes a sensor.
C:\Sensors\room.sensor
24.5
- Path
- Where the sensor file is.
Offset
Shifts an existing sensor by a fixed amount.
- Offset
- In degrees, or in percent when proportional.
- Proportional offset
- When ticked, the offset is a percentage of the reading.
Plugins
Plugins add sensors and controls the app doesn't know about: a fan hub, a USB thermometer, a value from another program. A plugin is a .NET library. To install one, close FanControl Pro, put the .dll in the Plugins folder next to the program, and start it again. Its sensors appear in the menus with the rest.
C:\Program Files\FanControl Pro\Plugins\HubSensors.dll
Command line
Start FanControl Pro with these switches from a shortcut, a script or Task Scheduler. Sent to a copy that is already running, they act on that copy.
FanControlPro.msi -c quiet.json
| Switch | What it does |
|---|---|
-c, --config | Start with the given configuration file, or switch to it if the app is already running. |
-w, --window | Open the window, even if the app is set to start minimised. |
-m, --minimized | Start minimised to the tray, even after a startup error. |
-r, --refresh | Re-detect all sensors. |
-e, --exit | Close the running copy. |
-sc, --service-client | Run as a client of the FanControl Pro service. |