DellFanCmd – Tool to enable manual/custom control of the laptop fans

Discussion in 'Dell' started by Aaron44126, Jan 21, 2019.

  1. DoctorRzepa

    DoctorRzepa Notebook Guru

    Reputations:
    0
    Messages:
    71
    Likes Received:
    13
    Trophy Points:
    16
    I guess you could have air vents cluttered with dust. If you do not want to open your machine, turn it off and put running vacuum cleaner hose on the air INTAKES. Try to slide it around intake holes, one at a time, making "o" patern. If some dust "strings" will start coming out of those holes, continue doing that until it's gone. You can help yourself with tweezers to pull them out.

    If there's no dust, you may try clean installation of Windows. If that won't help, you should repaste your laptop. Eventually call Dell Customer Service and tell them that your laptop heats so much that it shuts down itself. They should send technician to do the job for you.
     
  2. Aaron44126

    Aaron44126 Notebook Virtuoso

    Reputations:
    718
    Messages:
    3,925
    Likes Received:
    1,079
    Trophy Points:
    231
    New release of DellFanCmd: 1.0.1
    You can now set a specific fan to a specific level/speed manually using the tool.
    Other than the new commands added to handle this, there are no additional changes.

    Example use case: If I'm doing light/office work, I want to just let the fans run at 50% speed for consistency and let the CPU thermal throttle if necessary; and, if I know that I'm going to need CPU power, I will just turn EC fan control on and let the system manage it.

    https://github.com/AaronKelley/DellFanCmd/releases/tag/1.0.1

    Code:
    Available commands:
      ec-disable              Turn EC fan control off (fan goes to manual control)
      ec-disable-nofanchg     Turn EC fan control off and don't change the fan speed
      ec-enable               Turn EC fan control on (fan goes to automatic control)
    
    After EC fan control is off, you may use:
      fan1-level0             Set fan 1 to level 0 (0%)
      fan1-level1             Set fan 1 to level 1 (50%)
      fan1-level2             Set fan 1 to level 2 (100%)
      fan2-level0             Set fan 2 to level 0 (0%)
      fan2-level1             Set fan 2 to level 1 (50%)
      fan2-level2             Set fan 2 to level 2 (100%)
    
    Append "-alt" to any command to attempt alternate fan control method.
    (Example: ec-disable-alt)
     
    Last edited: Aug 13, 2019
    powerslave12r and t456 like this.
  3. Corelatis

    Corelatis Newbie

    Reputations:
    0
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    5
    First of all i wanna say "TNANK YOU VERY MUCH" to Aaaron for this great app. Gotta old but mint M4700. Original EC fan control schematics is most terrible i ever seen before. Actually i was very sceptic from the very start. As I am a noob, I did not find original .SYS file to replace with if it exists, so i just put both package files in one dir. And it worked for me like a charm from Cmd prompt.

    As M4700 has only three fan power states, i decided to use app with HWINFO64. The only problem was that with autostart minimised it did not run Custom Fan window to take over control on fans. I added a string to the end of HWINFO.ini - OpenFanCtrlMin=1
    Now, once DellFanCmd is engaged, i can run HWINFO64 minimised and it works just fine.
    I set CPU fan to 0% (0-75 deg), 50% (75-92), 100% (92+). Same to GPU, but 10 degrees lower.
    10 Seconds Spindown is enough to cool CPU enough for Zero state again.

    For me, Original EC state not coming back itself neither on Log Out, Sleep, Hibernate, nor on Restart.
    Well, actually i don't care, why. I made three tasks in task scheduler:

    DellFanCmd ec-enable - (Triggers at system Startup) - Reenables original EC on early Startup.
    DellFanCmd ec-disable - (Triggers at Logon Of Any User) - Disables original EC Before Logon Screen.
    HWINFO64.exe - (Triggers at Logon Of Any User) - runs simultaneously and takes over fan control.

    Now it Works As I Always Wanted: - Smooth And Silent !

    THANK YOU VERY MUCH, AGAIN ! ;););)
     
  4. Aaron44126

    Aaron44126 Notebook Virtuoso

    Reputations:
    718
    Messages:
    3,925
    Likes Received:
    1,079
    Trophy Points:
    231
    So, I gave up on using SpeedFan to manage the fans. My main goal from this project was to keep the fan noise consistent since the default behavior of the fans cycling on and off on a regular basis is annoying to me. I had SpeedFan set up to keep the fans from going below "50%", which was fine, but the fact that there is no other setting available aside from "100%" means that if any background process churns on the CPU for a while, the fans rev up to max speed... And then you have to choose between having them alternate between medium and high speed regularly, or having a high hysteresis value so it takes a long time for the fans to slow back down, neither of which is ideal.

    I decided that there are really two modes that I want to run the laptop in.
    1. "Quiet mode" which has the fans running at "50%" all of the time, no matter what. I run most of the time in this mode — doing regular computer work, browsing the Internet, coding, watching videos, etc..
    2. "Performance mode" when I know that I am going to be placing demands on the system. In this case, I just hand fan control back to the EC, which allows for more granular speeds based on the load. I can switch to this mode when gaming or doing video encoding or anything else that is going to stress the CPU and, when I actually care about the absolute best performance.

    I set this up for both my home system (Precision M6700) and work system (Precision 7530) and was satisfied. On the Precision 7530, the fans are just about inaudible when running at "50%" (about 2000 RPM), it is a lower speed than they normally operate at when the system is mostly idle for me (which was more like 2500 RPM).

    I figured that in "quiet mode", with the fans running at 50% all of the time, I figured that it would be fine to let the CPU thermal throttle if it got too hot. In practice, this was no good. My Precision 7530 got very hot to the touch on the back side if I let it run like this — I would have to adjust my grip to carry it around. My Precision M6700 didn't get too hot, but I discovered that if I let the CPU run wild without the fan kicking in, the built-in keyboard would stop working until things cooled down. To address this, I am also capping the CPU speed in "quiet mode". This solved my complaints on both systems.

    To handle the speed cap, I am utilizing Windows's power plans. I have the "Balanced" power plan set to "99%" max CPU utilization. This setting actually totally prevents the CPU from entering turbo speeds, so it caps at around 2.6/2.7 GHz in both of my systems. This is totally fine for the type of work that I am doing in this mode, and it solved both of the temperature issues that I mentioned. ("High Performance" plan gets "100%" max CPU utilization, which allows for turbo speeds.)

    Switching modes is done with a pair of batch scripts.

    Quiet mode:
    Code:
    REM Set power plan to Balanced.
    powercfg -s 381b4222-f694-41f0-9685-ff5bb260df2e
    
    DellFanCmd.exe ec-disable-nofanchg
    DellFanCmd.exe fan1-level1
    DellFanCmd.exe fan2-level1
    Performance mode:
    Code:
    REM Set power plan to High Performance.
    powercfg -s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
    
    DellFanCmd.exe ec-enable
    I created shortcuts to these scripts and pinned them to the Start Menu for easy access. I also set up scheduled tasks to run appropriate scripts at login, at shutdown, after hibernate, etc. as described way up in the first post.

    Actually, I'm working on another project which sets process priority based on user defined rules when new processes are started in Windows. I extended it to also support calling my scripts when certain programs are run. So I don't even have to hit a button to manually switch power modes, it happens automatically if I run certain apps. This project is still pretty early on though so I'm not ready to lay out how to use it.

    Notes:

    * Scripts to switch modes must be run elevated / "as Administrator" or the DellFanCmd commands will not work. (You can right-click on a shortcut to a batch file and selected "Properties" and there is an option in there to run as administrator. Go to the "Shortcut" tab and press the "Advanced" button to see it.)
    * Even with the CPU speed capped at 99% in Windows power options, if the power mode slider (that you see when clicking on the battery icon on the taskbar) is set all the way to the right, "Best performance", it will ignore this and allow the CPU to enter turbo speeds. To avoid this, move it one notch to the left.
     
    Last edited: Sep 23, 2019
  5. ja14000

    ja14000 Notebook Enthusiast

    Reputations:
    5
    Messages:
    15
    Likes Received:
    5
    Trophy Points:
    6
    I just wanted to let you know that this version is working perfectly for me on my 9560. I hate fan noise with a passion, I especially hate the pitch of the fans Dell chose to use in these laptops so my goal is to ensure only turn on when they absolutely need to. I understand that this is likely shortening the lifespan of certain components but I can live with that.

    What I've done:

    - Set up throttle stop profiles that launch a batch script that either enables or disables EC control. (So I can enable/disable fans with a simple double click)

    - Set up task scheduler to bypass UAC on these scripts to get rid of the pop-up.

    - Using the 'Alarm' feature in throttle stop, when the laptop temperature exceeds a certain threshold a batch script is launched that enables EC and disables turbo to allow the laptop to cool off.

    - When I switch to my gaming profile in throttle stop (Keyboard shortcut CTRL+ALT+G) a batch script is launched which enables EC control.

    So now I can disable the fans at any time by switching throttlestop profiles using a keyboard shortcut, I also don't have to worry about forgetting to enable it again when gaming / compiling code since it will be automatically enabled again by throttlestop once the laptop's temp gets high enough

    Anyway enough of my rambling, I can't find the PM button and I'd like to donate part of the cost of the certificate, PM me your PayPal address :)
     
    ha1o2surfer and Aaron44126 like this.
  6. ha1o2surfer

    ha1o2surfer Notebook Evangelist

    Reputations:
    71
    Messages:
    515
    Likes Received:
    103
    Trophy Points:
    56
    wow that is smart.
     
Loading...

Share This Page