Guide: How to set up a fan curve in the BIOS

citay

Pro
SERGEANT
Joined
Oct 12, 2016
Messages
22,173
Setting up a fan curve involves a balance between airflow and noise. But it is not that difficult when you know a good way to do it, and you only have to do it once.

First, a word about the fans. I'll try not to make it too difficult, there is just some precise terminology i have to use, but in the end it's not that hard to understand, i promise.

If you want to skip this part and go right to the information about setting up fan curves, scroll down to FAN CURVES.


There are two different types of fans, which you can tell apart by their plug. Let's look at this picture:

noctua_pin_configuration_12v_fans.png


A three-pin plug means the fan is DC (= direct current) voltage-controlled. A 4-pin plug means it's PWM (pulse width modulation) controlled.
With a DC-controlled fan, the fan speed is regulated by the board powering it with lower or higher voltages (say, between 3V and 12V) instead of steady 12V.
With a PWM-controlled fan, the board powers it with a steady 12V, and the fan speed is controlled through the fourth pin via a PWM signal.

Note: The "RPM Speed Signal" pin (rotations per minute) in the picture is telling the motherboard at which speed the fan is spinning, it is not controlling the fan.

So for each fan, you have to select the right fan control method: DC for a 3-pin fan or PWM for a 4-pin fan.

Some motherboard models may only allow DC control for some of the fan headers, even though they can all be 4-pin headers. So pay extra attention to that.
But that's easy to notice in the BIOS - when you just can't control a certain 4-pin fan with a PWM signal and instead only have DC (voltage) control available.

Here is an example of such a board:

PWM DC.png


The CPUFAN headers can control the fan speed via PWM signal or DC voltage (depending on the fan and which control method you select in the BIOS).
The SYSFAN headers can only control the fan speed via DC voltage, despite having a 4-pin fan header.
"NC" means Not Connected, so the manufacturer didn't implement PWM control on those headers, presumably for cost-saving. On more expensive board models, all the fan headers should be able to control fans with both methods. But in this example, you'd want your 4-pin PWM fans on the two CPUFAN headers, if possible.

Note: Every PWM fan can also be DC-controlled, it's just a slightly worse method of controlling it. One advantage of PWM control is that the fan will always turn on, even at a very low setting (unless it's purposely configured to stay off below 5% or 20% PWM signal for example). But when you go too low with the voltage on DC control, the fan might not turn on reliably, as the voltage is not enough to overcome the fan motor's resistance, so you'd have to add a bit of extra margin on the voltage.

The general target for the fan curves is:
- Nice low RPM (fan speed) at low temperatures
- Let the RPM ramp up gently with rising temperatures
- Only ramping up the RPM faster when the temperature approaches a quite high level.


Now, before setting the fan curves: Since we're doing this in the BIOS, this is a good time to first update the BIOS to the newest version. Because if you decide to update the BIOS later, it will reset all settings (on a lot of boards, that includes the fan curves), and you have to enter everything again. But since we'll start from scratch now anyway, updating the BIOS beforehand is a good idea.

A quick how-to on BIOS updates:
1) Get the latest BIOS. It's always the topmost one when you click on "BIOS" on the MSI support page for the mainboard.
2) Extract the file and you will get a text file and the BIOS file. Put the BIOS file into the root folder of a USB stick/drive.
3) Enter the BIOS by pressing DEL during boot, go to "M-FLASH" in the BIOS.
4) Once M-Flash (the updater) is loaded, it will show a list of your drives. Select the USB stick and select the previously extracted BIOS file on there.
5) It will ask for confirmation and then update the BIOS. It's fully automatic from there, takes about two minutes.


Now, before we come to the topic of how to set good fan curves, let's first look at a proper way to create an airflow through the case. Normally there should be at least one intake fan (usually at the front) and at least one exhaust fan (usually at the rear, in line with the CPU cooler). This will ensure a defined airflow through the case which can extract the heat from the components.

All the fans should work in unison within that airflow, to get one stream of cold air coming in from the front, picking up some heat (mostly from the CPU and GPU), and the warmed-up air being exhausted out of the rear. So in modern cases, the airflow usually looks something like this:

airflow.png
master.png



Perhaps minus the fans on top of the case. But there often will be at least one, if not two fans in the front, and one exhaust fan in the rear behind the CPU cooler. Each fan will have one or two arrow markings on one of the sides, showing the rotational direction as well as the airflow direction, and all the "airflow arrows" should be pointing towards the rear of the case. When the fans come pre-installed in the case, they will already be installed like that.

If the front intake fans outnumber the rear exhaust fan by 2:1 or 3:1, then the rear fan ideally runs on slightly higher RPM than the front fans, to create a more even airflow.



FAN CURVES

Now it's time to set the fan curves. Enter the BIOS (press DEL after power-on/reboot) and open the "Hardware Monitor" which offers the fan control.
For each fan, you can set four points of a curve, MSI calls this the "Smart Fan Mode".

This is how it might look:

MSI_SnapShot_21 Fan1.png


Note that each of the four points of a fan curve is restricted by the points next to it, it can't go lower than the previous point or higher than the following point.
So you may have to move a neighboring point if you hit a restriction on the point you want to adjust.


The goal for the first point of the curve is to find a setting with a bit of airflow, but where the fan is very quiet. This will be the setting when the CPU is doing nothing (idle).
You don't need a lot of airflow when the CPU temperature is low anyway. My fans spin only at around 400 RPM there, as you can see, just enough to keep some air moving through the case. Note that i have a high-end air cooler with two fans on there, as well as three 140mm case fans in a large case. So in a small case with fewer fans, you will need a bit higher RPM to keep it this cool inside. But there is no need to have the fans spin for example at 1000 RPM in idle.

For testing, it's good to open the case and put your hand behind the fan or behind the cooler (where the air gets blown through) to feel how much airflow the fan generates with different values. As long as you don't touch the motherboard or other components, there's no danger. And you can immediately feel the results of your adjustments.

For testing the airflow, turn off "Smart Fan Mode" for a while, so you can influence the fan speed directly. You can also turn off the other fans, so you can find the sweet spot for low temperatures with the particular fan you're checking. Remember, you only need a slight airflow for this starting point of the fan curve, the goal is not to have unnecessary noise when the temperature is low.

For this goal (a bit of airflow, but being very quiet), the resulting PWM % value (or DC voltage on 3-pin fans) is your starting point at 30°C or 40°C for this fan's curve. The temperature you select depends on where you want the fan to first start ramping up. It makes no sense to define a temperature below the ambient temperature, or below the minimum CPU temperature, you'd just be wasting the whole adjustment point. So anything below 30°C only makes sense with powerful cooling methods that can actually hold the CPU below 30°C.

Next, don't go to the second point, but the third one. Find a good level where the airflow is strong but the noise is still bearable, and use this as your "full CPU load" setting for higher temperature values like 65°C or 75°C. To fine-tune this point of the curve, you might have to go back and forth from the BIOS to Windows, where you monitor the fan speed with certain CPU load and fine-tune the setting afterwards. But it doesn't take that long to do, and you only have to do it once.

As for the second point of the curve, the inbetween point: Set it slightly below a straight line between the first and third point, to not make the fans ramp up too fast at medium temperatures.

For the final point, set it for 85°C or 90°C CPU temperature and 100% PWM value (or full 12V DC with a 3-pin fan). This is the "worst case" point for safety.
Now you should have all four points of the curve set to a sensible value, and most of the time, the fan should stay between the first and the third point. The highest last point is just a safety measure.

I would always create such an "ascending dominant" curve:

curve.png


A perfectly straight line makes no sense, you'd be wasting the two middle adjustment points.
A descending dominant curve makes no sense, as it will make more noise than necessary.

Here are examples. You might of course have to use different values, but just to see how it should rougly look like. The curve needs to be done for your particular fans.

This is for a PWM fan (4-pin), which is controlled by a PWM % signal:

BIOS_Fan1.png


Always use "Temperature source: CPU" for the CPU fan (and most other fans), not System or MOS.
The CPU temperature is more important and will influence the other temperatures.
Step down time 1.0s makes the fans spin down less audibly.

Now follows an example for a DC (voltage-controlled) 3-pin fan.
Note: The following picture is not how it should be set when using the CPU temperature as the source (which is the usual temperature source),
it's an example of a fan curve when using the System temperature as the source (if there is a good reason to do so).
When using CPU temperature as the source, the fan curve should not be this steep, it should be more like the pictures above.

MSI_SnapShot_24 Fan4.png


Of the five fans in my PC, this front bottom intake fan is the only one for which i use the "System" sensor as the Temperature Source. I want it to react to the system temperature with a steeper curve, since the system temperature will obviously increase much more slowly than the CPU temperature. The graphics card can be a major contributor to heating up the whole system, and since i can't use a graphics card sensor as the temperature source, this is sort of a roundabout way to handle that. Of course, you can also have the CPU as the temperature source for all the fans, then you should use a shallower curve like in the pictures before this one.

It all depends on your setup, what kind of fans you have, and noise/temperature preference.

Each fan model has a different RPM range and therefore needs different values or voltages to reach a certain airflow. Also, each different PWM-controlled fan model can interpret the PWM signal differently. This is because some mainboards don't allow a PWM signal lower than 20% for example, to never have the fan turn off. So to circumvent that, a fan maker might decide to let the fan interpret a 20% PWM signal from the mainboard as "still turned off", and turn on at 21% PWM. Another fan might interpret 0% PWM as the turn off signal and 1% as the lowest possible RPM, or may never turn off and just map the entire PWM signal range to the lowest and highest RPM. And all variations in between.

Here's an example of an Arctic fan which has implemented a semi-passive mode, it stays off with any PWM signal below 5%:

P12-PWM-PST-Argb-0dB-Mode-EN.jpg


Another example of a fan with a semi-passive mode is this Noiseblocker one, which has the following PWM-signal-to-fan-speed mapping (depending on the variant):

Screenshot 2023-06-27 at 21-58-11 TData_eloopX120_de_en.cdr - TData_eloopX120_de_en.pdf.png


So for each fan model, you will need different PWM values (and for 3-pin ones, different voltages), but just go by airflow and noise.
And the concept of the fan curve is always the same.

Once you're done, it's a good idea to write down your settings or make a screenshot/picture of them (in the BIOS, F12 saves a screenshot to a FAT32-formatted USB drive).
Because whenever the BIOS settings are reset (due to BIOS update, CMOS Clear or empty battery), you'll need your notes or pictures to know what fan curves you had before.
Although in BIOS updates for newer boards, the fan curves are actually kept between updates nowadays, which is good.

My other guides:
RAM explained: Why two modules are better than four / single- vs. dual-rank / stability testing

Guide: How to set good power limits in the BIOS and reduce the CPU power draw
Guide: How to find a good PSU

Someone asked me if they can thank me for my work by sending me something via Paypal: Yes, that's possible, just write me a message and i'll tell you my Paypal 😉
 
Last edited:
Hmm, what mobo do you have? I have slide the curve in to the upper right corner and it was still spinning. But I dit the same thing as you, when I just setup my mobo for the first time. And then it did work. So what am I doing wrong. 🤔 maybe you toke a fix point?
I've got the MPG B550 GAMING EDGE WIFI
 
Thanks for the great guide!

Now if only there was a way to type in the desired values instead of having to slide the thresholds with safe cracking precision.
1707929808379.png
 
does saving to oc profile in bios save the ram settings too ???
just saved it, but hesitant to restore defaults then load the saved OC profile
to see if it saved the ram over clocks.....
thanks ...
 
does saving to oc profile in bios save the ram settings too ???
just saved it, but hesitant to restore defaults then load the saved OC profile
to see if it saved the ram over clocks.....
thanks ...
Yes OC profile saves RAM settings too.
 
Back
Top