Question Pwm Vs DC Vs Auto

Jaydeesus

Prominent
Jun 16, 2019
186
0
580
I went into my bios looking for a fan curved setting,I encountered auto,pwm and dc,it was set to auto but I tried the other 2 and saw no difference,should I keep my cpu fan at auto or change it to something else.Also my 3 pin in take fans were set to dc,I tried pwm and they were very loud,is it ok if I have them set to DC?Pc fans:DC cpu fan:Auto,is that ok?
 
3Pin fans are controlled by DC voltage

4pin fans are PWM

Auto just usually detects what sort of fan is connected, however sometime you do need to set it manually. Long story short unless you can control the fans leave them on auto, if you cant control them select either DC or PWM for the appropriate type of fan.
 

Paperdoc

Polypheme
Ambassador
Post above is correct. However, let me point out an important distinction in configuring a fan header.

What you have been working on is called the "Mode" of control. That is, it is the particular method, or TYPE of electrical signals, the header sends to the fan. This is NOT the same as how the fan speed is controlled with respect to system temperatures. That often is called something similar like "Profile". The Profile choices include "Automatic" often, causing confusion with Mode choices. The typical "Automatic" or "Standard" profile means that the mobo maker has pre-programmed a system in which the fan speed is adjusted continuously according to an actual temperature measurement (inside the CPU for the CPU_FAN, or on the mobo for the SYS_FAN headers). This means they have set up a "Curve" of what fan speed should be used for what temperaure measured by the sensor, plus a couple of items for response time and minimum speed, etc. Whatever decision this system makes for the correct current setting of fan speed, the system then uses the Mode setting to send out that signal in appropriate form. Within the Profile item, you usually also have four other options. You can set up your own fan "Curve" of speed versus temp if you wish, or you can set the fan speed to some fixed value of your choice, or to full speed always, or to a fixed (quiet) speed. These Profile options are separate from the Mode options.

Important point you need to take into account. The ONLY way to control the speed of a 3-pin fan is the older Voltage Control Mode (aka DC Mode). If you plug a 3-pin fan into a header that uses PWM Mode, that fan will always run full speed. So any fan header used for 3-pin fans should be configured to use the DC Mode. Ideally, IF you can, arrange all 3-pin fans together on one or more headers, and all 4-pin fans on different headers so you can set them to PWM Mode. BUT if you have to mix fan types on a single header, use DC Mode and it WILL control the speed of all its fans.
 
Last edited:

Jaydeesus

Prominent
Jun 16, 2019
186
0
580
Post above is correct. However, let me point out an important distinction in configuring a fan header.

What you have been working on is called the "Mode" of control. That is, it is the particular method, or TYPE of electrical signals, the header sends to the fan. This is NOT the same as how the fan speed is controlled with respect to system temperatures. That often is called something similar like "Profile". The Profile choices include "Automatic" often, causing confusion with Mode choices. The typical "Automatic" or "Standard" profile means that the mobo maker has pre-programmed a system in which the fan speed is adjusted continuously according to an actual temperature measurement (inside the CPU for the CPU_FAN, or on the mobo for the SYS_FAN headers). This means they have set up a "Curve" of what fan speed should be used for what temperaure measured by the sensor, plus a couple of items for response time and minimum speed, etc. Whatever decision this system makes for the correct current setting of fan speed, the system then uses the Mode setting to send out that signal in appropriate form. Within the Profile item, you usually also have four other options. You can set up your own fan "Curve" of speed versus temp if you wish, or you can set the fan speed to some fixed value of your choice, or to full speed always, or to a fixed (quiet) speed. These Profile options are separate from the Mode options.

Important point you need to take into account. The ONLY way to control the speed of a 3-pin fan is the older Voltage Control Mode (aka DC Mode). If you plug a 3-pin fan into a header that uses PWM Mode, that fan will always run full speed. So any fan header used for 3-pin fans should be configured to use the DC Mode. Ideally, IF you can, arrange all 3-pin fans together on one or more headers, and all 4-pin fans on different headers so you can set them to PWM Mode. BUT if you have to mix fan types on a single header, use DC Mode and it WILL control the speed of all its fans.
So I went into my settings and saw that my cpu fan was set to auto and my case fans were set to dc,I tried to set my cpu fans to dc and pwm but saw no difference so I set it back to auto,my case fans when set to pwm was very loud so I put it back to dc.Is it ok if my cpu fan is set to auto and case fans set to dc?Im using stock cooler and I believe my fans are 3 pin
 

Jaydeesus

Prominent
Jun 16, 2019
186
0
580
3Pin fans are controlled by DC voltage

4pin fans are PWM

Auto just usually detects what sort of fan is connected, however sometime you do need to set it manually. Long story short unless you can control the fans leave them on auto, if you cant control them select either DC or PWM for the appropriate type of fan.
So I went into my settings and saw that my cpu fan was set to auto and my case fans were set to dc,I tried to set my cpu fans to dc and pwm but saw no difference so I set it back to auto,my case fans when set to pwm was very loud so I put it back to dc.Is it ok if my cpu fan is set to auto and case fans set to dc?Im using stock cooler and I believe my fans are 3 pin
 
So I went into my settings and saw that my cpu fan was set to auto and my case fans were set to dc,I tried to set my cpu fans to dc and pwm but saw no difference so I set it back to auto,my case fans when set to pwm was very loud so I put it back to dc.Is it ok if my cpu fan is set to auto and case fans set to dc?Im using stock cooler and I believe my fans are 3 pin

Yes that's fine. All your changing it how the motherboard regulates the various fans speed, with DC it just changes the voltage on the fans, more for faster less for slower. A PWM fan works by pulsing voltage to the fans, more pulses faster the fan, less slower.

Saying that again select the type that is correct for the fan, 3 pins are DC/Voltage and 4 pin are PWM controlled. In most circumstances you can just leave it on AUTO which automatically sets it to the correct mode. The only time you might need to change it is if the mobo is incorrectly choosing, which does happen.
 

Jaydeesus

Prominent
Jun 16, 2019
186
0
580
Yes that's fine. All your changing it how the motherboard regulates the various fans speed, with DC it just changes the voltage on the fans, more for faster less for slower. A PWM fan works by pulsing voltage to the fans, more pulses faster the fan, less slower.

Saying that again select the type that is correct for the fan, 3 pins are DC/Voltage and 4 pin are PWM controlled. In most circumstances you can just leave it on AUTO which automatically sets it to the correct mode. The only time you might need to change it is if the mobo is incorrectly choosing, which does happen.
So if I’m using stock Ryzen cooler then auto should be fine? And if my fans are 3 pin then I should use dc?
 
I went into my bios looking for a fan curved setting,I encountered auto,pwm and dc,it was set to auto but I tried the other 2 and saw no difference,should I keep my cpu fan at auto or change it to something else.Also my 3 pin in take fans were set to dc,I tried pwm and they were very loud,is it ok if I have them set to DC?Pc fans:DC cpu fan:Auto,is that ok?

auto detects the type of fan it is.

If the fan has a 4th wire, its pwm. 4 pin pwm fans are backwards compatible with dc control.
If its 3 wire thern it's dc

PWM is superior to DC at low speeds and has a finer grain of control.
 

Jaydeesus

Prominent
Jun 16, 2019
186
0
580
auto detects the type of fan it is.

If the fan has a 4th wire, its pwm. 4 pin pwm fans are backwards compatible with dc control.
If its 3 wire thern it's dc

PWM is superior to DC at low speeds and has a finer grain of control.
So is it ok if I have my cpu fan set to auto and my case fan set to dc?thats what the bios had it at
 

Lucretia19

Reputable
Feb 5, 2020
192
14
5,245
I'm not a fan expert but I have an observation that I think is worth mentioning here, since it conflicts with the assertion above that the PWM setting is always better than the DC setting if the fan is a PWM fan. My fairly new ARCTIC fans, which are PWM, can be made to run at 0 rpm only if the header is set to DC... if the header is set to PWM then the fan can't be stopped and the slowest it will spin is about 240 rpm. I assume the ARCTIC fans aren't special, and that this behavior will be generally the same for other brands of PWM fans.

My external hard drive is cooled by a PWM fan that's cabled to a motherboard fan header. I prefer 0 rpm when the hard drive temperature is low (32C or less). If my understanding is correct, this is a scenario where the DC setting is better.

If I've misunderstood the cause of the 240 rpm minimum, I hope someone will explain it.

Here's some context. My pc runs a .bat file that periodically uses the smartctl.exe utility (bundled with Smartmontools) to read the S.M.A.R.T. temperature attribute of the external hard drive, and the .bat writes the temperature to a file that's periodically read by Rem0o's FanControl software, which regulates the fan speed according to a custom curve. The motherboard is MSI X470 Gaming Plus.
 

Paperdoc

Polypheme
Ambassador
Luctretia19, your thinking is correct, but I'll add some considerations. Your situation is quite unusual, with a system to use a mobo fan header to power and control an external HDD case fan, based on temperature feedback from the HDD case. Obviously the utility supplied with that system takes over that mobo fan header and directs its fan operation.

Most mobo fan control strategies do not allow any fan to stop. If they are operating in Voltage Control Mode, they will not send out a voltage less than 5 VDC; if in PWM Mode, they will never send a PWM signal for less than about 20% On. This is because, once a fan stalls, it can NOT re-start until the voltage (or PWM signal) is raised significantly, and that is what many mobo fan headers will do automatically if they detect a fan stall. BUT if the header then returns to its normal control strategy and that allows the fan to be slowed down too much, the fan will stall again and the whole cycle just repeats.

From your description, it appears that, with the fan header under external control by the utility software of your HDD cooling system, when it calls for very slow (or zero) speed under PWM Mode, what the header really does is send out its minimum PWM signal, NOT a zero-speed signal. But in Voltage Control Mode, for whatever reason, that protection against fan stalling is not working - maybe the minimum voltage it can send out really is low enough to allow it to stall. That does not necessarily mean it is sent 0 V, so the stalled fan may have a current running through it but stalled.

Your own preference to have the fan in the HDD case stop at low HDD temperatures runs counter to the thinking of how case fans usually are managed. But if you do want to continue this way, what you are doing works. You might want to verify, though, whether the fan really is receiving NO power (voltage) when stopped, or just a low voltage that lets current flow though the stalled motor. Then also consider whether the control utility is really giving the stalled fan a voltage boost to start it when needed, or is simply slowly raising the voltage as the HDD internal temperature increases, until finally the stalled fan motor starts up.
 

Lucretia19

Reputable
Feb 5, 2020
192
14
5,245
@Paperdoc: I don't know whether the fan header in DC mode supplies 0 volts to the fan when FanControl sets the speed to 0%. I assumed that if it's nonzero volts at 0 rpm, it would be small enough that the current will not overheat the wiring of the non-spinning fan. But if you think a nonzero current could cause damage at 0 rpm, then someday I'll try to measure the in-circuit 0 rpm voltage. Was it your intention to warn me about possible damage from a nonzero current? If so, your words didn't make that clear.

Minimizing electricity consumption by reducing the fan current to zero -- which you say might not be possible -- isn't the only reason to prefer 0 rpm. As long as damage won't result, there are still two or three other reasons to prefer 0 rpm:
  1. Quietest.
  2. Less wear-and-tear on the fan bearing.
  3. The drive may last longer if it's not too cool.
The theory behind #3 is an old study of thousands of Seagate hard drives in Google server farms, that kept track of temperatures and drive failures for several years. If memory serves, the study concluded that the sweet spot was for temperatures in the mid-30s (Celsius). Drives with average temperatures cooler than (or warmer than) the sweet spot failed earlier. So I prefer 0 rpm when the drive is 32C or cooler.

I don't recall whether the study determined whether it was really the drives' average temperature that mattered, or the number of temperature swings (which cause materials to expand and contract, not good for longevity). A low average temperature might have been associated with swings down from normal loads to light loads... drives that stored unpopular Google data. A high average temperature might have been associated with swings up from normal loads to heavy loads... drives that stored popular data. Minimizing temperature swings by preventing "overcooling" -- in other words eliminating unnecessary thermal contraction and expansion -- would be consistent with #3.

I think another possible use case for 0 rpm would be in a pc that has many case fans, where one or more fans could be shut off when the pc isn't under heavy load. For instance, if the case has more than one intake fan, perhaps not all of them need to be spinning at all times. Similarly, exhaust fans might not need to be spinning; the intake fan(s) might suffice to keep the system cool when the pc is idle or near-idle, and spinning exhaust fans have the unwanted side-effect of reducing the internal air pressure, letting in more dust through gaps in the case.

Some clarifications:

My external hard drive is not in an hdd case. It's a bare drive that I mounted in a surplus hdd cage and connected to the pc via a sata-to-usb3 adapter. (Used for nightly backups.) The fan sits next to the drive and is connected to a motherboard fan header via a 4-wire extension cable that passes through an opening in the back of the pc case. The hard drive temperature is a S.M.A.R.T. attribute so it can be read by any software that can do S.M.A.R.T. usb pass-through. There's no special software utility supplied with the fan or the hard drive to control the external fan. The software I mentioned, FanControl by Rem0o, is freeware (donations appreciated) and is like the old SpeedFan software: it controls all the motherboard's fan headers according to user-created speed%-vs-temperature curves, given temperatures that the user can select from the available temperature sensors.

FanControl understands that fans have a minimum activation voltage. It has a setup function that detects each fan's activation percentage. When the control curve calls for a speed% less than the activation percentage, FanControl sets it to 0%, and if the BIOS is set to DC mode that results in 0 rpm.

FanControl isn't able to directly read the temperature of the external drive because the library that it uses, LibreHardwareMonitor, isn't (yet) capable of S.M.A.R.T. usb pass-through. But a feature recently added to FanControl causes it to treat files with extension ".sensor" as if they're temperature sensors, so I wrote a .bat script that periodically uses Smartmontools' smartctl.exe -- which can do usb pass-through -- to read the external drive's temperature, and the .bat writes the temperature to a .sensor file.
 

Paperdoc

Polypheme
Ambassador
Wow, so this was not a system you bought off-the-shelf. You created it yourself with other tools that had the right individual functions. That is impressive, so CONGRATS!
Yes, I was thinking about small current flow through a stalled motor fed with a non-zero voltage. The actual resistance of a simple DC motor is small, so a small voltage supplied can produce some significant current flow. In a running motor, most of the limit on current flow is the "back-EMF". A turning motor is moving wire coils though a magnetic field, so it actually generates a reverse force to "push" electrons "backwards" compared to their flow caused by the supplied voltage. One way to view this is that the turning motor creates its own reversed voltage that works against the supplied voltage, effectively reducing the net voltage and the net current flow. But in a stationary (stalled) motor there is no "back-EMF", and only the DC resistance of the windings limit the current.

Modern computer case fans are designed somewhat differently as brushless units, which means they have a small circuit to switch which coils are energized as the fan turns, simulating the switching action of an o;der commutator and brushes. What minimum voltage supply is needed by that little circuit for fan operation I do not know.

What you describe of Fan Control says it understands all of this and the need to recognize that no fan operation requires zero volts, and starting up requires a certain minimum. What we don't know is whether the mobo header that Fan Control sends signals to does what it is told. So it would be interesting to know just what voltage that fan is receiving at various times.
 

prophet51

Reputable
Jun 14, 2019
171
28
4,640
I plug my cpu fan into the chassis fan header on my mobo because that lets me use DC mode and the idle rpm is much lower using that for some reason(450rpm vs 700rpm for pwm). It also lets my cpu fan completely stop when the cpu's below 37c.
 

Lucretia19

Reputable
Feb 5, 2020
192
14
5,245
@prophet51: When you say "idle rpm" which component (fan? cpu?) do you mean is idling, and what do you mean by idling? I don't understand because "450 rpm at idle" and "0 rpm at low cpu temperature" seem contradictory.

Are those 450 rpm and 700 rpm speeds determined by a speed-vs-temperature curve that you could modify to your preferences by changing settings in the BIOS (or some other fan control software)?
 

Lucretia19

Reputable
Feb 5, 2020
192
14
5,245
@Paperdoc: If you were impressed by that effort, you should see the ridiculous system I used before FanControl provided the .sensor feature. I constructed a collection of Windows Task Scheduler tasks, each task would run a separate copy of FanControl that had a different constant speed for the external fan, and I wrote a .bat script to start and stop the tasks so that only one task at a time -- the FanControl copy with the appropriate speed -- would be running. (Actually, a second copy of FanControl was also kept running, to control the internal fans. Fortunately, FanControl allows two instances of itself to be running, as long as they're in separate folders, and are set to control different fans.)
 
Last edited:

prophet51

Reputable
Jun 14, 2019
171
28
4,640
@prophet51: When you say "idle rpm" which component (fan? cpu?) do you mean is idling, and what do you mean by idling? I don't understand because "450 rpm at idle" and "0 rpm at low cpu temperature" seem contradictory.

Are those 450 rpm and 700 rpm speeds determined by a speed-vs-temperature curve that you could modify to your preferences by changing settings in the BIOS (or some other fan control software)?

I mean the minimum rpm I can get on my cpu heatsink fan is much lower using DC mode instead of PWM for some reason.