How do I get fan control working?











up vote
33
down vote

favorite
14












I know there something called fancontrol, that enables you to control the speed of your system's ventilation. I'd like to let my fans spin a bit faster as my laptop is heating up very easilly. All tutorials and stuff I've found are for old versions of Ubuntu and don't seem to be working anymore.



Can anyone explain to me or give me a good link on how I can get it working on Ubuntu? Something different with the same effect is also fine.










share|improve this question
























  • Abit more information about the hardware would probably help, like brand of laptop, model name/number, and bios type/version.
    – filescraps
    Sep 29 '11 at 20:22










  • @filescraps Dell Latitude D620: paste.ubuntu.com/699801
    – RobinJ
    Sep 30 '11 at 14:16






  • 5




    @RobinJ - have you done the usual checks for overheating issues - check for dust/blockages - look at your processor heatsink as well. Update your bios to the latest available. Have you tried adding "acpi_osi=Linux" to your grub? Are you using any extra boot options? Basically my point is - overheating issues are dust/acpi type stuff - you shouldnt ever need to manually control your fan.
    – fossfreedom
    Oct 2 '11 at 10:05










  • Well, the fan only starts running faster when it's at about 65°C, and it seems that it's too late then because once it starts rising it doesn't go under 75°C too quickly anymore. It's a laptop and I'm not confident enough with hardware to take it appart. What does acpi_osi=Linux do? No extra boot options, just the default GRUB.
    – RobinJ
    Oct 2 '11 at 12:16






  • 1




    @RobinJ - dont forget the style of the website is to add relevant information back into your question rather than bury it in comments.
    – fossfreedom
    Oct 3 '11 at 9:14















up vote
33
down vote

favorite
14












I know there something called fancontrol, that enables you to control the speed of your system's ventilation. I'd like to let my fans spin a bit faster as my laptop is heating up very easilly. All tutorials and stuff I've found are for old versions of Ubuntu and don't seem to be working anymore.



Can anyone explain to me or give me a good link on how I can get it working on Ubuntu? Something different with the same effect is also fine.










share|improve this question
























  • Abit more information about the hardware would probably help, like brand of laptop, model name/number, and bios type/version.
    – filescraps
    Sep 29 '11 at 20:22










  • @filescraps Dell Latitude D620: paste.ubuntu.com/699801
    – RobinJ
    Sep 30 '11 at 14:16






  • 5




    @RobinJ - have you done the usual checks for overheating issues - check for dust/blockages - look at your processor heatsink as well. Update your bios to the latest available. Have you tried adding "acpi_osi=Linux" to your grub? Are you using any extra boot options? Basically my point is - overheating issues are dust/acpi type stuff - you shouldnt ever need to manually control your fan.
    – fossfreedom
    Oct 2 '11 at 10:05










  • Well, the fan only starts running faster when it's at about 65°C, and it seems that it's too late then because once it starts rising it doesn't go under 75°C too quickly anymore. It's a laptop and I'm not confident enough with hardware to take it appart. What does acpi_osi=Linux do? No extra boot options, just the default GRUB.
    – RobinJ
    Oct 2 '11 at 12:16






  • 1




    @RobinJ - dont forget the style of the website is to add relevant information back into your question rather than bury it in comments.
    – fossfreedom
    Oct 3 '11 at 9:14













up vote
33
down vote

favorite
14









up vote
33
down vote

favorite
14






14





I know there something called fancontrol, that enables you to control the speed of your system's ventilation. I'd like to let my fans spin a bit faster as my laptop is heating up very easilly. All tutorials and stuff I've found are for old versions of Ubuntu and don't seem to be working anymore.



Can anyone explain to me or give me a good link on how I can get it working on Ubuntu? Something different with the same effect is also fine.










share|improve this question















I know there something called fancontrol, that enables you to control the speed of your system's ventilation. I'd like to let my fans spin a bit faster as my laptop is heating up very easilly. All tutorials and stuff I've found are for old versions of Ubuntu and don't seem to be working anymore.



Can anyone explain to me or give me a good link on how I can get it working on Ubuntu? Something different with the same effect is also fine.







fan overheating fancontrol






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 4 '12 at 15:35









Jorge Castro

35.3k105422617




35.3k105422617










asked Sep 29 '11 at 16:27









RobinJ

6,39253864




6,39253864












  • Abit more information about the hardware would probably help, like brand of laptop, model name/number, and bios type/version.
    – filescraps
    Sep 29 '11 at 20:22










  • @filescraps Dell Latitude D620: paste.ubuntu.com/699801
    – RobinJ
    Sep 30 '11 at 14:16






  • 5




    @RobinJ - have you done the usual checks for overheating issues - check for dust/blockages - look at your processor heatsink as well. Update your bios to the latest available. Have you tried adding "acpi_osi=Linux" to your grub? Are you using any extra boot options? Basically my point is - overheating issues are dust/acpi type stuff - you shouldnt ever need to manually control your fan.
    – fossfreedom
    Oct 2 '11 at 10:05










  • Well, the fan only starts running faster when it's at about 65°C, and it seems that it's too late then because once it starts rising it doesn't go under 75°C too quickly anymore. It's a laptop and I'm not confident enough with hardware to take it appart. What does acpi_osi=Linux do? No extra boot options, just the default GRUB.
    – RobinJ
    Oct 2 '11 at 12:16






  • 1




    @RobinJ - dont forget the style of the website is to add relevant information back into your question rather than bury it in comments.
    – fossfreedom
    Oct 3 '11 at 9:14


















  • Abit more information about the hardware would probably help, like brand of laptop, model name/number, and bios type/version.
    – filescraps
    Sep 29 '11 at 20:22










  • @filescraps Dell Latitude D620: paste.ubuntu.com/699801
    – RobinJ
    Sep 30 '11 at 14:16






  • 5




    @RobinJ - have you done the usual checks for overheating issues - check for dust/blockages - look at your processor heatsink as well. Update your bios to the latest available. Have you tried adding "acpi_osi=Linux" to your grub? Are you using any extra boot options? Basically my point is - overheating issues are dust/acpi type stuff - you shouldnt ever need to manually control your fan.
    – fossfreedom
    Oct 2 '11 at 10:05










  • Well, the fan only starts running faster when it's at about 65°C, and it seems that it's too late then because once it starts rising it doesn't go under 75°C too quickly anymore. It's a laptop and I'm not confident enough with hardware to take it appart. What does acpi_osi=Linux do? No extra boot options, just the default GRUB.
    – RobinJ
    Oct 2 '11 at 12:16






  • 1




    @RobinJ - dont forget the style of the website is to add relevant information back into your question rather than bury it in comments.
    – fossfreedom
    Oct 3 '11 at 9:14
















Abit more information about the hardware would probably help, like brand of laptop, model name/number, and bios type/version.
– filescraps
Sep 29 '11 at 20:22




Abit more information about the hardware would probably help, like brand of laptop, model name/number, and bios type/version.
– filescraps
Sep 29 '11 at 20:22












@filescraps Dell Latitude D620: paste.ubuntu.com/699801
– RobinJ
Sep 30 '11 at 14:16




@filescraps Dell Latitude D620: paste.ubuntu.com/699801
– RobinJ
Sep 30 '11 at 14:16




5




5




@RobinJ - have you done the usual checks for overheating issues - check for dust/blockages - look at your processor heatsink as well. Update your bios to the latest available. Have you tried adding "acpi_osi=Linux" to your grub? Are you using any extra boot options? Basically my point is - overheating issues are dust/acpi type stuff - you shouldnt ever need to manually control your fan.
– fossfreedom
Oct 2 '11 at 10:05




@RobinJ - have you done the usual checks for overheating issues - check for dust/blockages - look at your processor heatsink as well. Update your bios to the latest available. Have you tried adding "acpi_osi=Linux" to your grub? Are you using any extra boot options? Basically my point is - overheating issues are dust/acpi type stuff - you shouldnt ever need to manually control your fan.
– fossfreedom
Oct 2 '11 at 10:05












Well, the fan only starts running faster when it's at about 65°C, and it seems that it's too late then because once it starts rising it doesn't go under 75°C too quickly anymore. It's a laptop and I'm not confident enough with hardware to take it appart. What does acpi_osi=Linux do? No extra boot options, just the default GRUB.
– RobinJ
Oct 2 '11 at 12:16




Well, the fan only starts running faster when it's at about 65°C, and it seems that it's too late then because once it starts rising it doesn't go under 75°C too quickly anymore. It's a laptop and I'm not confident enough with hardware to take it appart. What does acpi_osi=Linux do? No extra boot options, just the default GRUB.
– RobinJ
Oct 2 '11 at 12:16




1




1




@RobinJ - dont forget the style of the website is to add relevant information back into your question rather than bury it in comments.
– fossfreedom
Oct 3 '11 at 9:14




@RobinJ - dont forget the style of the website is to add relevant information back into your question rather than bury it in comments.
– fossfreedom
Oct 3 '11 at 9:14










5 Answers
5






active

oldest

votes

















up vote
8
down vote



accepted










i8kutils works for controlling the fan of my Dell Vostro 3350 laptop.




# For Dell laptop only:
$ sudo apt-get install i8kutils
$ i8kfan 1 2 # Set the left-fan at low speed(1); the right one at high speed(2).





share|improve this answer





















  • Only it seems something in the BIOS always sets it back to its previous value after a few seconds :P Anyway, even though it's a bit late, it's still the most helpful answer.
    – RobinJ
    Mar 4 '13 at 14:03










  • it works on my Alienware m14x. But, it's still can't set the cooler to its max speed and that's still causing the laptop to run on higher temps. That is significantly hotter than it was on Windows...
    – iLemming
    Jul 24 '13 at 19:19










  • BIOS sets it back so I added a cronjob runs in every 2 min: crontab -e and */2 * * * * /usr/bin/i8kfan 1 1 . works perfectly for now
    – goksel
    Nov 15 at 22:10




















up vote
14
down vote













You'll most likely be able to solve your problem with something else overriding your i8kctl fan commands by the method given in this answer. For completeness, I'll include some general notes on fan control on Dell laptops, and full instructions for i8kutils.



What probably won't work



Two common and straight-forward means of controlling the fan on laptops are through ACPI and through PWM pins, however, unfortunately:





  • Dell laptops lacks ACPI fan control capability (*1)




    • as a consequence, trying with ACPI boot parameters and the like will fail




  • Dell Latitude laptops, as far as I know, lack pwm controllable fans (*2)




    • as a consequence, the fancontrol/pwmconfig program won't work




Use i8kutils



However, there's a package called i8kutils that is written to control the fan on Dell Inspiron laptops through SMM BIOS. Several users report success on their Dell Laitude laptops as well (I'm one of them, on a Dell Latitude E7440) - however, a trick is often needed to get rid of interfering BIOS fan control. You suffer from that as well according to a previous comment.



Install i8kutils:



$ sudo apt-get install i8kutils


Try it:



$ i8kfan 2 2     # set to max speed
$ i8kfan 0 0 # set to 0 speed


...and listen to see if it works.



Disable BIOS fan control



If it works, but somewthing else is fighting back on the setted speed (reported by many users on Dell Latitude laptops), this is due to scheduled SMM sessions setting the fan speed back. Luckily there is a way to disable BIOS fan control by writing to SMM registers.



Warning: see the warning in top of smm.c. This method will write to SMM registers. However, I've seen no user reports on this causing trouble. Also, all reports on trying this have indicated success in disabling the BIOS fan control.



i8kutils includes the source of a program smm but the i8kutils package does not include the compiled binary. What we'll do is to download the source code of i8kutils, compile the program smm, and run it with an apropriate argument to disable BIOS fan control by writing to SMM registers.



Download packages needed for building:



$ sudo apt-get build-dep i8kutils


Download i8kutils source code, extract and enter directory (exact names depending on i8k version):



$ apt-get source i8kutils
$ tar xvf i8kutils_1.33.tar.gz
$ cd i8kutils-1.33/


Compile smm:





  • If on a 32-bit system:



    $ make


    (Above will execute gcc -g -O2 -Wall -I. -o smm smm.c.)




  • If on a 64-bit system:



    $ gcc -g -O2 -Wall -I. -o smm -m32 smm.c



Run smm with argument 30a3 to disable SMM fan control:



$ sudo ./smm 30a3


Now, BIOS fan control should be disabled. Try by setting speeds with i8kctl, listen for the fan and make sure the speed persists.



Note: This is a setting that will persist reboots and power-off's. BIOS fan control can be enabled again with $ sudo ./smm 31a3.





*1: I've seen an official source on this, can't find it right now. If you want to verify that your hardware lacks it, follow instructions here: https://wiki.ubuntu.com/DebuggingACPI



*2: for verifying this, run pwmconfig: sudo apt-get install fancontrol, sudo pwm-config will tell if a pwm-capable fan is present or not






share|improve this answer























  • I actually used the ACPI parameter, acpi_osi='!Windows 2012', to get my Dell Inspiron 15R 5520's fans under control, as they would always spin at max speed regardless of temperature.
    – user311982
    Mar 22 '15 at 3:48










  • OK, thanks for sharing that!
    – Carl
    Mar 25 '15 at 13:07










  • This should be the correct answer. It's well informed and very relevant !
    – ppr
    Aug 21 '15 at 14:46










  • Great answer. Also found here
    – malat
    Nov 28 '16 at 20:43








  • 1




    Thank you so much, this worked for me after trying everything else to no avail. When I tried to compile smm I was missing sys/cdefs.h but sudo apt-get install g++-multilib brought it in (as referenced at askubuntu.com/questions/470796/… )
    – Philip Daniels
    Dec 27 '16 at 16:36




















up vote
14
down vote



+100










The package lm-sensors Install lm-sensors might be what you are looking for.



And as you suggested fancontrol Install fancontrol.



Be sure that all the fans that you are trying to control via software have the 4 pin connector.



"A PWM capable fan is usally connected to a 4-pin connector (pinout: Ground, +12V, sense, control)."source



When I run pwmconfig which is a part of fancontrol I get



/usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed
It will guide you if you have compatible hardware.



Here are some scripts to use in conjunction with that generated config file.
I assume that you could set a higher value here.



label fan1 "Side Fan"
set fan1_min 1000
label fan2 "PSU Fan"
set fan2_min 1000
label fan5 "CPU Fan"
set fan5_min 1000


But as I said, I can't test this myself, since my hardware don't support it, I can control my fans from the bios, but it's a grade of 3. I use it for keeping my fan's slow and silent.






share|improve this answer



















  • 1




    /usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed Any other ways?
    – RobinJ
    Sep 29 '11 at 19:39










  • You usually need to run sensors-detect first, and load a module it says to get temperature and fan speed readout, and then pwmconfig can manipulate it.
    – psusi
    Sep 30 '11 at 0:58










  • @RobinJ, it appears that you do not have a recognized/supported chip.
    – psusi
    Oct 7 '11 at 2:15










  • I'm going to award the bounty to you as this was the most informative answer wich could help most other people.
    – RobinJ
    Oct 8 '11 at 9:56


















up vote
5
down vote













Ok, this might not be the answer you are looking for, but my overheating problems were solved, when removed the dust by putting a vacuum cleaner on the ventilation inlets. If you experience overheating at low cpu-frequencies, this might be worth a try. Be aware that maybe small parts may get sucked in. If you are lucky this method might solve you overheating problems.






share|improve this answer





















  • I awarded the bounty to th eanswer above because it was the most informative one, but my issue seems to be hardware-related, so your answer came closest to the solution. But as I'm not confident enough to mess aroudn with my laptop's hardware I just brought it to the shop as it was still under guarantee.
    – RobinJ
    Oct 8 '11 at 9:57










  • I just tried this and it worked. Thanks! My fan had started to get louder and I did have one or two shutdowns due to overheating. Hopefully this has fixed it. The fan is now cycling on and off with normal CPU utilization which is great (before it stayed on all the time).
    – Cymen
    Apr 14 '12 at 21:08










  • @Cymen Just be sure the vacuum is an anti-static vacuum, to be safe. I use a can of compressed air to clean the vents, which you may also do as an alternative.
    – user311982
    Mar 22 '15 at 3:51


















up vote
3
down vote













I have a Dell Latitude e4200 and the following worked for me because the BIOS was overriding i8kfan setting. My computer's initial temperature was 105F degrees and about 10 mins after using these steps (fan setting = 2) the CPU/Core temps dropped to 96F degrees. This procedure had already been posted by someone:



Step 1. Download and install i8ktutils:



# sudo apt-get install i8kutils


Step 2. Override the BIOS to keep it from interrupting custom fan settings. Download the source code and compile a program (SMM) to do this:



# sudo apt-get build-dep i8kutils


then:



# apt-get source i8kutils


Step 3. Extract the source code and cd into the directory:



# tar xvf i8kutils_1.33.tar.gz


then:



# cd i8kutils-1.33/


Step 4. Compile SMM



For 32-bit systems:

# make SMM

(Output: # gcc -g -O2 -Wall -I. -o smm smm.c.)

For 64-bit systems

# make SMM:

(Output: # gcc -g -O2 -Wall -I. -o smm -m32 smm.c)


Step 5. Execute SMM with parameters:



# sudo ./smm 30a3


Step 6. Set the fan speeds:



# i8kfan 2 2 (Listen as this will set fans to maximum speed)

# i8kfan 1 1 (This will set fans to slow speed)


Now BIOS fan control should not override fan settings. This setting will remain even if the system is rebooted. To give control back to BIOS for some reason do the following procedure:



# sudo ./smm 31a3.


There is also a way to check the temp by using lm_sensors:



http://www.cyberciti.biz/faq/howto-linux-get-sensors-information/





share|improve this answer



















  • 1




    Tried this for the most recent version of i8kutils-1.41 on Ubuntu 14.04 and got "In file included from /usr/include/stdio.h:27:0, from smm.c:27: /usr/include/features.h:374:25: fatal error: sys/cdefs.h: No such file or directory " However this fixes that problem askubuntu.com/questions/470796/…
    – k-den
    Mar 10 '15 at 18:01













Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "89"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














 

draft saved


draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f63588%2fhow-do-i-get-fan-control-working%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























5 Answers
5






active

oldest

votes








5 Answers
5






active

oldest

votes









active

oldest

votes






active

oldest

votes








up vote
8
down vote



accepted










i8kutils works for controlling the fan of my Dell Vostro 3350 laptop.




# For Dell laptop only:
$ sudo apt-get install i8kutils
$ i8kfan 1 2 # Set the left-fan at low speed(1); the right one at high speed(2).





share|improve this answer





















  • Only it seems something in the BIOS always sets it back to its previous value after a few seconds :P Anyway, even though it's a bit late, it's still the most helpful answer.
    – RobinJ
    Mar 4 '13 at 14:03










  • it works on my Alienware m14x. But, it's still can't set the cooler to its max speed and that's still causing the laptop to run on higher temps. That is significantly hotter than it was on Windows...
    – iLemming
    Jul 24 '13 at 19:19










  • BIOS sets it back so I added a cronjob runs in every 2 min: crontab -e and */2 * * * * /usr/bin/i8kfan 1 1 . works perfectly for now
    – goksel
    Nov 15 at 22:10

















up vote
8
down vote



accepted










i8kutils works for controlling the fan of my Dell Vostro 3350 laptop.




# For Dell laptop only:
$ sudo apt-get install i8kutils
$ i8kfan 1 2 # Set the left-fan at low speed(1); the right one at high speed(2).





share|improve this answer





















  • Only it seems something in the BIOS always sets it back to its previous value after a few seconds :P Anyway, even though it's a bit late, it's still the most helpful answer.
    – RobinJ
    Mar 4 '13 at 14:03










  • it works on my Alienware m14x. But, it's still can't set the cooler to its max speed and that's still causing the laptop to run on higher temps. That is significantly hotter than it was on Windows...
    – iLemming
    Jul 24 '13 at 19:19










  • BIOS sets it back so I added a cronjob runs in every 2 min: crontab -e and */2 * * * * /usr/bin/i8kfan 1 1 . works perfectly for now
    – goksel
    Nov 15 at 22:10















up vote
8
down vote



accepted







up vote
8
down vote



accepted






i8kutils works for controlling the fan of my Dell Vostro 3350 laptop.




# For Dell laptop only:
$ sudo apt-get install i8kutils
$ i8kfan 1 2 # Set the left-fan at low speed(1); the right one at high speed(2).





share|improve this answer












i8kutils works for controlling the fan of my Dell Vostro 3350 laptop.




# For Dell laptop only:
$ sudo apt-get install i8kutils
$ i8kfan 1 2 # Set the left-fan at low speed(1); the right one at high speed(2).






share|improve this answer












share|improve this answer



share|improve this answer










answered Mar 3 '13 at 3:59









user1902715

10412




10412












  • Only it seems something in the BIOS always sets it back to its previous value after a few seconds :P Anyway, even though it's a bit late, it's still the most helpful answer.
    – RobinJ
    Mar 4 '13 at 14:03










  • it works on my Alienware m14x. But, it's still can't set the cooler to its max speed and that's still causing the laptop to run on higher temps. That is significantly hotter than it was on Windows...
    – iLemming
    Jul 24 '13 at 19:19










  • BIOS sets it back so I added a cronjob runs in every 2 min: crontab -e and */2 * * * * /usr/bin/i8kfan 1 1 . works perfectly for now
    – goksel
    Nov 15 at 22:10




















  • Only it seems something in the BIOS always sets it back to its previous value after a few seconds :P Anyway, even though it's a bit late, it's still the most helpful answer.
    – RobinJ
    Mar 4 '13 at 14:03










  • it works on my Alienware m14x. But, it's still can't set the cooler to its max speed and that's still causing the laptop to run on higher temps. That is significantly hotter than it was on Windows...
    – iLemming
    Jul 24 '13 at 19:19










  • BIOS sets it back so I added a cronjob runs in every 2 min: crontab -e and */2 * * * * /usr/bin/i8kfan 1 1 . works perfectly for now
    – goksel
    Nov 15 at 22:10


















Only it seems something in the BIOS always sets it back to its previous value after a few seconds :P Anyway, even though it's a bit late, it's still the most helpful answer.
– RobinJ
Mar 4 '13 at 14:03




Only it seems something in the BIOS always sets it back to its previous value after a few seconds :P Anyway, even though it's a bit late, it's still the most helpful answer.
– RobinJ
Mar 4 '13 at 14:03












it works on my Alienware m14x. But, it's still can't set the cooler to its max speed and that's still causing the laptop to run on higher temps. That is significantly hotter than it was on Windows...
– iLemming
Jul 24 '13 at 19:19




it works on my Alienware m14x. But, it's still can't set the cooler to its max speed and that's still causing the laptop to run on higher temps. That is significantly hotter than it was on Windows...
– iLemming
Jul 24 '13 at 19:19












BIOS sets it back so I added a cronjob runs in every 2 min: crontab -e and */2 * * * * /usr/bin/i8kfan 1 1 . works perfectly for now
– goksel
Nov 15 at 22:10






BIOS sets it back so I added a cronjob runs in every 2 min: crontab -e and */2 * * * * /usr/bin/i8kfan 1 1 . works perfectly for now
– goksel
Nov 15 at 22:10














up vote
14
down vote













You'll most likely be able to solve your problem with something else overriding your i8kctl fan commands by the method given in this answer. For completeness, I'll include some general notes on fan control on Dell laptops, and full instructions for i8kutils.



What probably won't work



Two common and straight-forward means of controlling the fan on laptops are through ACPI and through PWM pins, however, unfortunately:





  • Dell laptops lacks ACPI fan control capability (*1)




    • as a consequence, trying with ACPI boot parameters and the like will fail




  • Dell Latitude laptops, as far as I know, lack pwm controllable fans (*2)




    • as a consequence, the fancontrol/pwmconfig program won't work




Use i8kutils



However, there's a package called i8kutils that is written to control the fan on Dell Inspiron laptops through SMM BIOS. Several users report success on their Dell Laitude laptops as well (I'm one of them, on a Dell Latitude E7440) - however, a trick is often needed to get rid of interfering BIOS fan control. You suffer from that as well according to a previous comment.



Install i8kutils:



$ sudo apt-get install i8kutils


Try it:



$ i8kfan 2 2     # set to max speed
$ i8kfan 0 0 # set to 0 speed


...and listen to see if it works.



Disable BIOS fan control



If it works, but somewthing else is fighting back on the setted speed (reported by many users on Dell Latitude laptops), this is due to scheduled SMM sessions setting the fan speed back. Luckily there is a way to disable BIOS fan control by writing to SMM registers.



Warning: see the warning in top of smm.c. This method will write to SMM registers. However, I've seen no user reports on this causing trouble. Also, all reports on trying this have indicated success in disabling the BIOS fan control.



i8kutils includes the source of a program smm but the i8kutils package does not include the compiled binary. What we'll do is to download the source code of i8kutils, compile the program smm, and run it with an apropriate argument to disable BIOS fan control by writing to SMM registers.



Download packages needed for building:



$ sudo apt-get build-dep i8kutils


Download i8kutils source code, extract and enter directory (exact names depending on i8k version):



$ apt-get source i8kutils
$ tar xvf i8kutils_1.33.tar.gz
$ cd i8kutils-1.33/


Compile smm:





  • If on a 32-bit system:



    $ make


    (Above will execute gcc -g -O2 -Wall -I. -o smm smm.c.)




  • If on a 64-bit system:



    $ gcc -g -O2 -Wall -I. -o smm -m32 smm.c



Run smm with argument 30a3 to disable SMM fan control:



$ sudo ./smm 30a3


Now, BIOS fan control should be disabled. Try by setting speeds with i8kctl, listen for the fan and make sure the speed persists.



Note: This is a setting that will persist reboots and power-off's. BIOS fan control can be enabled again with $ sudo ./smm 31a3.





*1: I've seen an official source on this, can't find it right now. If you want to verify that your hardware lacks it, follow instructions here: https://wiki.ubuntu.com/DebuggingACPI



*2: for verifying this, run pwmconfig: sudo apt-get install fancontrol, sudo pwm-config will tell if a pwm-capable fan is present or not






share|improve this answer























  • I actually used the ACPI parameter, acpi_osi='!Windows 2012', to get my Dell Inspiron 15R 5520's fans under control, as they would always spin at max speed regardless of temperature.
    – user311982
    Mar 22 '15 at 3:48










  • OK, thanks for sharing that!
    – Carl
    Mar 25 '15 at 13:07










  • This should be the correct answer. It's well informed and very relevant !
    – ppr
    Aug 21 '15 at 14:46










  • Great answer. Also found here
    – malat
    Nov 28 '16 at 20:43








  • 1




    Thank you so much, this worked for me after trying everything else to no avail. When I tried to compile smm I was missing sys/cdefs.h but sudo apt-get install g++-multilib brought it in (as referenced at askubuntu.com/questions/470796/… )
    – Philip Daniels
    Dec 27 '16 at 16:36

















up vote
14
down vote













You'll most likely be able to solve your problem with something else overriding your i8kctl fan commands by the method given in this answer. For completeness, I'll include some general notes on fan control on Dell laptops, and full instructions for i8kutils.



What probably won't work



Two common and straight-forward means of controlling the fan on laptops are through ACPI and through PWM pins, however, unfortunately:





  • Dell laptops lacks ACPI fan control capability (*1)




    • as a consequence, trying with ACPI boot parameters and the like will fail




  • Dell Latitude laptops, as far as I know, lack pwm controllable fans (*2)




    • as a consequence, the fancontrol/pwmconfig program won't work




Use i8kutils



However, there's a package called i8kutils that is written to control the fan on Dell Inspiron laptops through SMM BIOS. Several users report success on their Dell Laitude laptops as well (I'm one of them, on a Dell Latitude E7440) - however, a trick is often needed to get rid of interfering BIOS fan control. You suffer from that as well according to a previous comment.



Install i8kutils:



$ sudo apt-get install i8kutils


Try it:



$ i8kfan 2 2     # set to max speed
$ i8kfan 0 0 # set to 0 speed


...and listen to see if it works.



Disable BIOS fan control



If it works, but somewthing else is fighting back on the setted speed (reported by many users on Dell Latitude laptops), this is due to scheduled SMM sessions setting the fan speed back. Luckily there is a way to disable BIOS fan control by writing to SMM registers.



Warning: see the warning in top of smm.c. This method will write to SMM registers. However, I've seen no user reports on this causing trouble. Also, all reports on trying this have indicated success in disabling the BIOS fan control.



i8kutils includes the source of a program smm but the i8kutils package does not include the compiled binary. What we'll do is to download the source code of i8kutils, compile the program smm, and run it with an apropriate argument to disable BIOS fan control by writing to SMM registers.



Download packages needed for building:



$ sudo apt-get build-dep i8kutils


Download i8kutils source code, extract and enter directory (exact names depending on i8k version):



$ apt-get source i8kutils
$ tar xvf i8kutils_1.33.tar.gz
$ cd i8kutils-1.33/


Compile smm:





  • If on a 32-bit system:



    $ make


    (Above will execute gcc -g -O2 -Wall -I. -o smm smm.c.)




  • If on a 64-bit system:



    $ gcc -g -O2 -Wall -I. -o smm -m32 smm.c



Run smm with argument 30a3 to disable SMM fan control:



$ sudo ./smm 30a3


Now, BIOS fan control should be disabled. Try by setting speeds with i8kctl, listen for the fan and make sure the speed persists.



Note: This is a setting that will persist reboots and power-off's. BIOS fan control can be enabled again with $ sudo ./smm 31a3.





*1: I've seen an official source on this, can't find it right now. If you want to verify that your hardware lacks it, follow instructions here: https://wiki.ubuntu.com/DebuggingACPI



*2: for verifying this, run pwmconfig: sudo apt-get install fancontrol, sudo pwm-config will tell if a pwm-capable fan is present or not






share|improve this answer























  • I actually used the ACPI parameter, acpi_osi='!Windows 2012', to get my Dell Inspiron 15R 5520's fans under control, as they would always spin at max speed regardless of temperature.
    – user311982
    Mar 22 '15 at 3:48










  • OK, thanks for sharing that!
    – Carl
    Mar 25 '15 at 13:07










  • This should be the correct answer. It's well informed and very relevant !
    – ppr
    Aug 21 '15 at 14:46










  • Great answer. Also found here
    – malat
    Nov 28 '16 at 20:43








  • 1




    Thank you so much, this worked for me after trying everything else to no avail. When I tried to compile smm I was missing sys/cdefs.h but sudo apt-get install g++-multilib brought it in (as referenced at askubuntu.com/questions/470796/… )
    – Philip Daniels
    Dec 27 '16 at 16:36















up vote
14
down vote










up vote
14
down vote









You'll most likely be able to solve your problem with something else overriding your i8kctl fan commands by the method given in this answer. For completeness, I'll include some general notes on fan control on Dell laptops, and full instructions for i8kutils.



What probably won't work



Two common and straight-forward means of controlling the fan on laptops are through ACPI and through PWM pins, however, unfortunately:





  • Dell laptops lacks ACPI fan control capability (*1)




    • as a consequence, trying with ACPI boot parameters and the like will fail




  • Dell Latitude laptops, as far as I know, lack pwm controllable fans (*2)




    • as a consequence, the fancontrol/pwmconfig program won't work




Use i8kutils



However, there's a package called i8kutils that is written to control the fan on Dell Inspiron laptops through SMM BIOS. Several users report success on their Dell Laitude laptops as well (I'm one of them, on a Dell Latitude E7440) - however, a trick is often needed to get rid of interfering BIOS fan control. You suffer from that as well according to a previous comment.



Install i8kutils:



$ sudo apt-get install i8kutils


Try it:



$ i8kfan 2 2     # set to max speed
$ i8kfan 0 0 # set to 0 speed


...and listen to see if it works.



Disable BIOS fan control



If it works, but somewthing else is fighting back on the setted speed (reported by many users on Dell Latitude laptops), this is due to scheduled SMM sessions setting the fan speed back. Luckily there is a way to disable BIOS fan control by writing to SMM registers.



Warning: see the warning in top of smm.c. This method will write to SMM registers. However, I've seen no user reports on this causing trouble. Also, all reports on trying this have indicated success in disabling the BIOS fan control.



i8kutils includes the source of a program smm but the i8kutils package does not include the compiled binary. What we'll do is to download the source code of i8kutils, compile the program smm, and run it with an apropriate argument to disable BIOS fan control by writing to SMM registers.



Download packages needed for building:



$ sudo apt-get build-dep i8kutils


Download i8kutils source code, extract and enter directory (exact names depending on i8k version):



$ apt-get source i8kutils
$ tar xvf i8kutils_1.33.tar.gz
$ cd i8kutils-1.33/


Compile smm:





  • If on a 32-bit system:



    $ make


    (Above will execute gcc -g -O2 -Wall -I. -o smm smm.c.)




  • If on a 64-bit system:



    $ gcc -g -O2 -Wall -I. -o smm -m32 smm.c



Run smm with argument 30a3 to disable SMM fan control:



$ sudo ./smm 30a3


Now, BIOS fan control should be disabled. Try by setting speeds with i8kctl, listen for the fan and make sure the speed persists.



Note: This is a setting that will persist reboots and power-off's. BIOS fan control can be enabled again with $ sudo ./smm 31a3.





*1: I've seen an official source on this, can't find it right now. If you want to verify that your hardware lacks it, follow instructions here: https://wiki.ubuntu.com/DebuggingACPI



*2: for verifying this, run pwmconfig: sudo apt-get install fancontrol, sudo pwm-config will tell if a pwm-capable fan is present or not






share|improve this answer














You'll most likely be able to solve your problem with something else overriding your i8kctl fan commands by the method given in this answer. For completeness, I'll include some general notes on fan control on Dell laptops, and full instructions for i8kutils.



What probably won't work



Two common and straight-forward means of controlling the fan on laptops are through ACPI and through PWM pins, however, unfortunately:





  • Dell laptops lacks ACPI fan control capability (*1)




    • as a consequence, trying with ACPI boot parameters and the like will fail




  • Dell Latitude laptops, as far as I know, lack pwm controllable fans (*2)




    • as a consequence, the fancontrol/pwmconfig program won't work




Use i8kutils



However, there's a package called i8kutils that is written to control the fan on Dell Inspiron laptops through SMM BIOS. Several users report success on their Dell Laitude laptops as well (I'm one of them, on a Dell Latitude E7440) - however, a trick is often needed to get rid of interfering BIOS fan control. You suffer from that as well according to a previous comment.



Install i8kutils:



$ sudo apt-get install i8kutils


Try it:



$ i8kfan 2 2     # set to max speed
$ i8kfan 0 0 # set to 0 speed


...and listen to see if it works.



Disable BIOS fan control



If it works, but somewthing else is fighting back on the setted speed (reported by many users on Dell Latitude laptops), this is due to scheduled SMM sessions setting the fan speed back. Luckily there is a way to disable BIOS fan control by writing to SMM registers.



Warning: see the warning in top of smm.c. This method will write to SMM registers. However, I've seen no user reports on this causing trouble. Also, all reports on trying this have indicated success in disabling the BIOS fan control.



i8kutils includes the source of a program smm but the i8kutils package does not include the compiled binary. What we'll do is to download the source code of i8kutils, compile the program smm, and run it with an apropriate argument to disable BIOS fan control by writing to SMM registers.



Download packages needed for building:



$ sudo apt-get build-dep i8kutils


Download i8kutils source code, extract and enter directory (exact names depending on i8k version):



$ apt-get source i8kutils
$ tar xvf i8kutils_1.33.tar.gz
$ cd i8kutils-1.33/


Compile smm:





  • If on a 32-bit system:



    $ make


    (Above will execute gcc -g -O2 -Wall -I. -o smm smm.c.)




  • If on a 64-bit system:



    $ gcc -g -O2 -Wall -I. -o smm -m32 smm.c



Run smm with argument 30a3 to disable SMM fan control:



$ sudo ./smm 30a3


Now, BIOS fan control should be disabled. Try by setting speeds with i8kctl, listen for the fan and make sure the speed persists.



Note: This is a setting that will persist reboots and power-off's. BIOS fan control can be enabled again with $ sudo ./smm 31a3.





*1: I've seen an official source on this, can't find it right now. If you want to verify that your hardware lacks it, follow instructions here: https://wiki.ubuntu.com/DebuggingACPI



*2: for verifying this, run pwmconfig: sudo apt-get install fancontrol, sudo pwm-config will tell if a pwm-capable fan is present or not







share|improve this answer














share|improve this answer



share|improve this answer








edited Jan 1 '14 at 23:44

























answered Jan 1 '14 at 18:54









Carl

519169




519169












  • I actually used the ACPI parameter, acpi_osi='!Windows 2012', to get my Dell Inspiron 15R 5520's fans under control, as they would always spin at max speed regardless of temperature.
    – user311982
    Mar 22 '15 at 3:48










  • OK, thanks for sharing that!
    – Carl
    Mar 25 '15 at 13:07










  • This should be the correct answer. It's well informed and very relevant !
    – ppr
    Aug 21 '15 at 14:46










  • Great answer. Also found here
    – malat
    Nov 28 '16 at 20:43








  • 1




    Thank you so much, this worked for me after trying everything else to no avail. When I tried to compile smm I was missing sys/cdefs.h but sudo apt-get install g++-multilib brought it in (as referenced at askubuntu.com/questions/470796/… )
    – Philip Daniels
    Dec 27 '16 at 16:36




















  • I actually used the ACPI parameter, acpi_osi='!Windows 2012', to get my Dell Inspiron 15R 5520's fans under control, as they would always spin at max speed regardless of temperature.
    – user311982
    Mar 22 '15 at 3:48










  • OK, thanks for sharing that!
    – Carl
    Mar 25 '15 at 13:07










  • This should be the correct answer. It's well informed and very relevant !
    – ppr
    Aug 21 '15 at 14:46










  • Great answer. Also found here
    – malat
    Nov 28 '16 at 20:43








  • 1




    Thank you so much, this worked for me after trying everything else to no avail. When I tried to compile smm I was missing sys/cdefs.h but sudo apt-get install g++-multilib brought it in (as referenced at askubuntu.com/questions/470796/… )
    – Philip Daniels
    Dec 27 '16 at 16:36


















I actually used the ACPI parameter, acpi_osi='!Windows 2012', to get my Dell Inspiron 15R 5520's fans under control, as they would always spin at max speed regardless of temperature.
– user311982
Mar 22 '15 at 3:48




I actually used the ACPI parameter, acpi_osi='!Windows 2012', to get my Dell Inspiron 15R 5520's fans under control, as they would always spin at max speed regardless of temperature.
– user311982
Mar 22 '15 at 3:48












OK, thanks for sharing that!
– Carl
Mar 25 '15 at 13:07




OK, thanks for sharing that!
– Carl
Mar 25 '15 at 13:07












This should be the correct answer. It's well informed and very relevant !
– ppr
Aug 21 '15 at 14:46




This should be the correct answer. It's well informed and very relevant !
– ppr
Aug 21 '15 at 14:46












Great answer. Also found here
– malat
Nov 28 '16 at 20:43






Great answer. Also found here
– malat
Nov 28 '16 at 20:43






1




1




Thank you so much, this worked for me after trying everything else to no avail. When I tried to compile smm I was missing sys/cdefs.h but sudo apt-get install g++-multilib brought it in (as referenced at askubuntu.com/questions/470796/… )
– Philip Daniels
Dec 27 '16 at 16:36






Thank you so much, this worked for me after trying everything else to no avail. When I tried to compile smm I was missing sys/cdefs.h but sudo apt-get install g++-multilib brought it in (as referenced at askubuntu.com/questions/470796/… )
– Philip Daniels
Dec 27 '16 at 16:36












up vote
14
down vote



+100










The package lm-sensors Install lm-sensors might be what you are looking for.



And as you suggested fancontrol Install fancontrol.



Be sure that all the fans that you are trying to control via software have the 4 pin connector.



"A PWM capable fan is usally connected to a 4-pin connector (pinout: Ground, +12V, sense, control)."source



When I run pwmconfig which is a part of fancontrol I get



/usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed
It will guide you if you have compatible hardware.



Here are some scripts to use in conjunction with that generated config file.
I assume that you could set a higher value here.



label fan1 "Side Fan"
set fan1_min 1000
label fan2 "PSU Fan"
set fan2_min 1000
label fan5 "CPU Fan"
set fan5_min 1000


But as I said, I can't test this myself, since my hardware don't support it, I can control my fans from the bios, but it's a grade of 3. I use it for keeping my fan's slow and silent.






share|improve this answer



















  • 1




    /usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed Any other ways?
    – RobinJ
    Sep 29 '11 at 19:39










  • You usually need to run sensors-detect first, and load a module it says to get temperature and fan speed readout, and then pwmconfig can manipulate it.
    – psusi
    Sep 30 '11 at 0:58










  • @RobinJ, it appears that you do not have a recognized/supported chip.
    – psusi
    Oct 7 '11 at 2:15










  • I'm going to award the bounty to you as this was the most informative answer wich could help most other people.
    – RobinJ
    Oct 8 '11 at 9:56















up vote
14
down vote



+100










The package lm-sensors Install lm-sensors might be what you are looking for.



And as you suggested fancontrol Install fancontrol.



Be sure that all the fans that you are trying to control via software have the 4 pin connector.



"A PWM capable fan is usally connected to a 4-pin connector (pinout: Ground, +12V, sense, control)."source



When I run pwmconfig which is a part of fancontrol I get



/usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed
It will guide you if you have compatible hardware.



Here are some scripts to use in conjunction with that generated config file.
I assume that you could set a higher value here.



label fan1 "Side Fan"
set fan1_min 1000
label fan2 "PSU Fan"
set fan2_min 1000
label fan5 "CPU Fan"
set fan5_min 1000


But as I said, I can't test this myself, since my hardware don't support it, I can control my fans from the bios, but it's a grade of 3. I use it for keeping my fan's slow and silent.






share|improve this answer



















  • 1




    /usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed Any other ways?
    – RobinJ
    Sep 29 '11 at 19:39










  • You usually need to run sensors-detect first, and load a module it says to get temperature and fan speed readout, and then pwmconfig can manipulate it.
    – psusi
    Sep 30 '11 at 0:58










  • @RobinJ, it appears that you do not have a recognized/supported chip.
    – psusi
    Oct 7 '11 at 2:15










  • I'm going to award the bounty to you as this was the most informative answer wich could help most other people.
    – RobinJ
    Oct 8 '11 at 9:56













up vote
14
down vote



+100







up vote
14
down vote



+100




+100




The package lm-sensors Install lm-sensors might be what you are looking for.



And as you suggested fancontrol Install fancontrol.



Be sure that all the fans that you are trying to control via software have the 4 pin connector.



"A PWM capable fan is usally connected to a 4-pin connector (pinout: Ground, +12V, sense, control)."source



When I run pwmconfig which is a part of fancontrol I get



/usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed
It will guide you if you have compatible hardware.



Here are some scripts to use in conjunction with that generated config file.
I assume that you could set a higher value here.



label fan1 "Side Fan"
set fan1_min 1000
label fan2 "PSU Fan"
set fan2_min 1000
label fan5 "CPU Fan"
set fan5_min 1000


But as I said, I can't test this myself, since my hardware don't support it, I can control my fans from the bios, but it's a grade of 3. I use it for keeping my fan's slow and silent.






share|improve this answer














The package lm-sensors Install lm-sensors might be what you are looking for.



And as you suggested fancontrol Install fancontrol.



Be sure that all the fans that you are trying to control via software have the 4 pin connector.



"A PWM capable fan is usally connected to a 4-pin connector (pinout: Ground, +12V, sense, control)."source



When I run pwmconfig which is a part of fancontrol I get



/usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed
It will guide you if you have compatible hardware.



Here are some scripts to use in conjunction with that generated config file.
I assume that you could set a higher value here.



label fan1 "Side Fan"
set fan1_min 1000
label fan2 "PSU Fan"
set fan2_min 1000
label fan5 "CPU Fan"
set fan5_min 1000


But as I said, I can't test this myself, since my hardware don't support it, I can control my fans from the bios, but it's a grade of 3. I use it for keeping my fan's slow and silent.







share|improve this answer














share|improve this answer



share|improve this answer








edited Mar 11 '17 at 19:00









Community

1




1










answered Sep 29 '11 at 18:56









filescraps

54427




54427








  • 1




    /usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed Any other ways?
    – RobinJ
    Sep 29 '11 at 19:39










  • You usually need to run sensors-detect first, and load a module it says to get temperature and fan speed readout, and then pwmconfig can manipulate it.
    – psusi
    Sep 30 '11 at 0:58










  • @RobinJ, it appears that you do not have a recognized/supported chip.
    – psusi
    Oct 7 '11 at 2:15










  • I'm going to award the bounty to you as this was the most informative answer wich could help most other people.
    – RobinJ
    Oct 8 '11 at 9:56














  • 1




    /usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed Any other ways?
    – RobinJ
    Sep 29 '11 at 19:39










  • You usually need to run sensors-detect first, and load a module it says to get temperature and fan speed readout, and then pwmconfig can manipulate it.
    – psusi
    Sep 30 '11 at 0:58










  • @RobinJ, it appears that you do not have a recognized/supported chip.
    – psusi
    Oct 7 '11 at 2:15










  • I'm going to award the bounty to you as this was the most informative answer wich could help most other people.
    – RobinJ
    Oct 8 '11 at 9:56








1




1




/usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed Any other ways?
– RobinJ
Sep 29 '11 at 19:39




/usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed Any other ways?
– RobinJ
Sep 29 '11 at 19:39












You usually need to run sensors-detect first, and load a module it says to get temperature and fan speed readout, and then pwmconfig can manipulate it.
– psusi
Sep 30 '11 at 0:58




You usually need to run sensors-detect first, and load a module it says to get temperature and fan speed readout, and then pwmconfig can manipulate it.
– psusi
Sep 30 '11 at 0:58












@RobinJ, it appears that you do not have a recognized/supported chip.
– psusi
Oct 7 '11 at 2:15




@RobinJ, it appears that you do not have a recognized/supported chip.
– psusi
Oct 7 '11 at 2:15












I'm going to award the bounty to you as this was the most informative answer wich could help most other people.
– RobinJ
Oct 8 '11 at 9:56




I'm going to award the bounty to you as this was the most informative answer wich could help most other people.
– RobinJ
Oct 8 '11 at 9:56










up vote
5
down vote













Ok, this might not be the answer you are looking for, but my overheating problems were solved, when removed the dust by putting a vacuum cleaner on the ventilation inlets. If you experience overheating at low cpu-frequencies, this might be worth a try. Be aware that maybe small parts may get sucked in. If you are lucky this method might solve you overheating problems.






share|improve this answer





















  • I awarded the bounty to th eanswer above because it was the most informative one, but my issue seems to be hardware-related, so your answer came closest to the solution. But as I'm not confident enough to mess aroudn with my laptop's hardware I just brought it to the shop as it was still under guarantee.
    – RobinJ
    Oct 8 '11 at 9:57










  • I just tried this and it worked. Thanks! My fan had started to get louder and I did have one or two shutdowns due to overheating. Hopefully this has fixed it. The fan is now cycling on and off with normal CPU utilization which is great (before it stayed on all the time).
    – Cymen
    Apr 14 '12 at 21:08










  • @Cymen Just be sure the vacuum is an anti-static vacuum, to be safe. I use a can of compressed air to clean the vents, which you may also do as an alternative.
    – user311982
    Mar 22 '15 at 3:51















up vote
5
down vote













Ok, this might not be the answer you are looking for, but my overheating problems were solved, when removed the dust by putting a vacuum cleaner on the ventilation inlets. If you experience overheating at low cpu-frequencies, this might be worth a try. Be aware that maybe small parts may get sucked in. If you are lucky this method might solve you overheating problems.






share|improve this answer





















  • I awarded the bounty to th eanswer above because it was the most informative one, but my issue seems to be hardware-related, so your answer came closest to the solution. But as I'm not confident enough to mess aroudn with my laptop's hardware I just brought it to the shop as it was still under guarantee.
    – RobinJ
    Oct 8 '11 at 9:57










  • I just tried this and it worked. Thanks! My fan had started to get louder and I did have one or two shutdowns due to overheating. Hopefully this has fixed it. The fan is now cycling on and off with normal CPU utilization which is great (before it stayed on all the time).
    – Cymen
    Apr 14 '12 at 21:08










  • @Cymen Just be sure the vacuum is an anti-static vacuum, to be safe. I use a can of compressed air to clean the vents, which you may also do as an alternative.
    – user311982
    Mar 22 '15 at 3:51













up vote
5
down vote










up vote
5
down vote









Ok, this might not be the answer you are looking for, but my overheating problems were solved, when removed the dust by putting a vacuum cleaner on the ventilation inlets. If you experience overheating at low cpu-frequencies, this might be worth a try. Be aware that maybe small parts may get sucked in. If you are lucky this method might solve you overheating problems.






share|improve this answer












Ok, this might not be the answer you are looking for, but my overheating problems were solved, when removed the dust by putting a vacuum cleaner on the ventilation inlets. If you experience overheating at low cpu-frequencies, this might be worth a try. Be aware that maybe small parts may get sucked in. If you are lucky this method might solve you overheating problems.







share|improve this answer












share|improve this answer



share|improve this answer










answered Oct 6 '11 at 16:39









Ewald

27927




27927












  • I awarded the bounty to th eanswer above because it was the most informative one, but my issue seems to be hardware-related, so your answer came closest to the solution. But as I'm not confident enough to mess aroudn with my laptop's hardware I just brought it to the shop as it was still under guarantee.
    – RobinJ
    Oct 8 '11 at 9:57










  • I just tried this and it worked. Thanks! My fan had started to get louder and I did have one or two shutdowns due to overheating. Hopefully this has fixed it. The fan is now cycling on and off with normal CPU utilization which is great (before it stayed on all the time).
    – Cymen
    Apr 14 '12 at 21:08










  • @Cymen Just be sure the vacuum is an anti-static vacuum, to be safe. I use a can of compressed air to clean the vents, which you may also do as an alternative.
    – user311982
    Mar 22 '15 at 3:51


















  • I awarded the bounty to th eanswer above because it was the most informative one, but my issue seems to be hardware-related, so your answer came closest to the solution. But as I'm not confident enough to mess aroudn with my laptop's hardware I just brought it to the shop as it was still under guarantee.
    – RobinJ
    Oct 8 '11 at 9:57










  • I just tried this and it worked. Thanks! My fan had started to get louder and I did have one or two shutdowns due to overheating. Hopefully this has fixed it. The fan is now cycling on and off with normal CPU utilization which is great (before it stayed on all the time).
    – Cymen
    Apr 14 '12 at 21:08










  • @Cymen Just be sure the vacuum is an anti-static vacuum, to be safe. I use a can of compressed air to clean the vents, which you may also do as an alternative.
    – user311982
    Mar 22 '15 at 3:51
















I awarded the bounty to th eanswer above because it was the most informative one, but my issue seems to be hardware-related, so your answer came closest to the solution. But as I'm not confident enough to mess aroudn with my laptop's hardware I just brought it to the shop as it was still under guarantee.
– RobinJ
Oct 8 '11 at 9:57




I awarded the bounty to th eanswer above because it was the most informative one, but my issue seems to be hardware-related, so your answer came closest to the solution. But as I'm not confident enough to mess aroudn with my laptop's hardware I just brought it to the shop as it was still under guarantee.
– RobinJ
Oct 8 '11 at 9:57












I just tried this and it worked. Thanks! My fan had started to get louder and I did have one or two shutdowns due to overheating. Hopefully this has fixed it. The fan is now cycling on and off with normal CPU utilization which is great (before it stayed on all the time).
– Cymen
Apr 14 '12 at 21:08




I just tried this and it worked. Thanks! My fan had started to get louder and I did have one or two shutdowns due to overheating. Hopefully this has fixed it. The fan is now cycling on and off with normal CPU utilization which is great (before it stayed on all the time).
– Cymen
Apr 14 '12 at 21:08












@Cymen Just be sure the vacuum is an anti-static vacuum, to be safe. I use a can of compressed air to clean the vents, which you may also do as an alternative.
– user311982
Mar 22 '15 at 3:51




@Cymen Just be sure the vacuum is an anti-static vacuum, to be safe. I use a can of compressed air to clean the vents, which you may also do as an alternative.
– user311982
Mar 22 '15 at 3:51










up vote
3
down vote













I have a Dell Latitude e4200 and the following worked for me because the BIOS was overriding i8kfan setting. My computer's initial temperature was 105F degrees and about 10 mins after using these steps (fan setting = 2) the CPU/Core temps dropped to 96F degrees. This procedure had already been posted by someone:



Step 1. Download and install i8ktutils:



# sudo apt-get install i8kutils


Step 2. Override the BIOS to keep it from interrupting custom fan settings. Download the source code and compile a program (SMM) to do this:



# sudo apt-get build-dep i8kutils


then:



# apt-get source i8kutils


Step 3. Extract the source code and cd into the directory:



# tar xvf i8kutils_1.33.tar.gz


then:



# cd i8kutils-1.33/


Step 4. Compile SMM



For 32-bit systems:

# make SMM

(Output: # gcc -g -O2 -Wall -I. -o smm smm.c.)

For 64-bit systems

# make SMM:

(Output: # gcc -g -O2 -Wall -I. -o smm -m32 smm.c)


Step 5. Execute SMM with parameters:



# sudo ./smm 30a3


Step 6. Set the fan speeds:



# i8kfan 2 2 (Listen as this will set fans to maximum speed)

# i8kfan 1 1 (This will set fans to slow speed)


Now BIOS fan control should not override fan settings. This setting will remain even if the system is rebooted. To give control back to BIOS for some reason do the following procedure:



# sudo ./smm 31a3.


There is also a way to check the temp by using lm_sensors:



http://www.cyberciti.biz/faq/howto-linux-get-sensors-information/





share|improve this answer



















  • 1




    Tried this for the most recent version of i8kutils-1.41 on Ubuntu 14.04 and got "In file included from /usr/include/stdio.h:27:0, from smm.c:27: /usr/include/features.h:374:25: fatal error: sys/cdefs.h: No such file or directory " However this fixes that problem askubuntu.com/questions/470796/…
    – k-den
    Mar 10 '15 at 18:01

















up vote
3
down vote













I have a Dell Latitude e4200 and the following worked for me because the BIOS was overriding i8kfan setting. My computer's initial temperature was 105F degrees and about 10 mins after using these steps (fan setting = 2) the CPU/Core temps dropped to 96F degrees. This procedure had already been posted by someone:



Step 1. Download and install i8ktutils:



# sudo apt-get install i8kutils


Step 2. Override the BIOS to keep it from interrupting custom fan settings. Download the source code and compile a program (SMM) to do this:



# sudo apt-get build-dep i8kutils


then:



# apt-get source i8kutils


Step 3. Extract the source code and cd into the directory:



# tar xvf i8kutils_1.33.tar.gz


then:



# cd i8kutils-1.33/


Step 4. Compile SMM



For 32-bit systems:

# make SMM

(Output: # gcc -g -O2 -Wall -I. -o smm smm.c.)

For 64-bit systems

# make SMM:

(Output: # gcc -g -O2 -Wall -I. -o smm -m32 smm.c)


Step 5. Execute SMM with parameters:



# sudo ./smm 30a3


Step 6. Set the fan speeds:



# i8kfan 2 2 (Listen as this will set fans to maximum speed)

# i8kfan 1 1 (This will set fans to slow speed)


Now BIOS fan control should not override fan settings. This setting will remain even if the system is rebooted. To give control back to BIOS for some reason do the following procedure:



# sudo ./smm 31a3.


There is also a way to check the temp by using lm_sensors:



http://www.cyberciti.biz/faq/howto-linux-get-sensors-information/





share|improve this answer



















  • 1




    Tried this for the most recent version of i8kutils-1.41 on Ubuntu 14.04 and got "In file included from /usr/include/stdio.h:27:0, from smm.c:27: /usr/include/features.h:374:25: fatal error: sys/cdefs.h: No such file or directory " However this fixes that problem askubuntu.com/questions/470796/…
    – k-den
    Mar 10 '15 at 18:01















up vote
3
down vote










up vote
3
down vote









I have a Dell Latitude e4200 and the following worked for me because the BIOS was overriding i8kfan setting. My computer's initial temperature was 105F degrees and about 10 mins after using these steps (fan setting = 2) the CPU/Core temps dropped to 96F degrees. This procedure had already been posted by someone:



Step 1. Download and install i8ktutils:



# sudo apt-get install i8kutils


Step 2. Override the BIOS to keep it from interrupting custom fan settings. Download the source code and compile a program (SMM) to do this:



# sudo apt-get build-dep i8kutils


then:



# apt-get source i8kutils


Step 3. Extract the source code and cd into the directory:



# tar xvf i8kutils_1.33.tar.gz


then:



# cd i8kutils-1.33/


Step 4. Compile SMM



For 32-bit systems:

# make SMM

(Output: # gcc -g -O2 -Wall -I. -o smm smm.c.)

For 64-bit systems

# make SMM:

(Output: # gcc -g -O2 -Wall -I. -o smm -m32 smm.c)


Step 5. Execute SMM with parameters:



# sudo ./smm 30a3


Step 6. Set the fan speeds:



# i8kfan 2 2 (Listen as this will set fans to maximum speed)

# i8kfan 1 1 (This will set fans to slow speed)


Now BIOS fan control should not override fan settings. This setting will remain even if the system is rebooted. To give control back to BIOS for some reason do the following procedure:



# sudo ./smm 31a3.


There is also a way to check the temp by using lm_sensors:



http://www.cyberciti.biz/faq/howto-linux-get-sensors-information/





share|improve this answer














I have a Dell Latitude e4200 and the following worked for me because the BIOS was overriding i8kfan setting. My computer's initial temperature was 105F degrees and about 10 mins after using these steps (fan setting = 2) the CPU/Core temps dropped to 96F degrees. This procedure had already been posted by someone:



Step 1. Download and install i8ktutils:



# sudo apt-get install i8kutils


Step 2. Override the BIOS to keep it from interrupting custom fan settings. Download the source code and compile a program (SMM) to do this:



# sudo apt-get build-dep i8kutils


then:



# apt-get source i8kutils


Step 3. Extract the source code and cd into the directory:



# tar xvf i8kutils_1.33.tar.gz


then:



# cd i8kutils-1.33/


Step 4. Compile SMM



For 32-bit systems:

# make SMM

(Output: # gcc -g -O2 -Wall -I. -o smm smm.c.)

For 64-bit systems

# make SMM:

(Output: # gcc -g -O2 -Wall -I. -o smm -m32 smm.c)


Step 5. Execute SMM with parameters:



# sudo ./smm 30a3


Step 6. Set the fan speeds:



# i8kfan 2 2 (Listen as this will set fans to maximum speed)

# i8kfan 1 1 (This will set fans to slow speed)


Now BIOS fan control should not override fan settings. This setting will remain even if the system is rebooted. To give control back to BIOS for some reason do the following procedure:



# sudo ./smm 31a3.


There is also a way to check the temp by using lm_sensors:



http://www.cyberciti.biz/faq/howto-linux-get-sensors-information/






share|improve this answer














share|improve this answer



share|improve this answer








edited Feb 8 '14 at 6:13

























answered Feb 8 '14 at 6:08









user245946

312




312








  • 1




    Tried this for the most recent version of i8kutils-1.41 on Ubuntu 14.04 and got "In file included from /usr/include/stdio.h:27:0, from smm.c:27: /usr/include/features.h:374:25: fatal error: sys/cdefs.h: No such file or directory " However this fixes that problem askubuntu.com/questions/470796/…
    – k-den
    Mar 10 '15 at 18:01
















  • 1




    Tried this for the most recent version of i8kutils-1.41 on Ubuntu 14.04 and got "In file included from /usr/include/stdio.h:27:0, from smm.c:27: /usr/include/features.h:374:25: fatal error: sys/cdefs.h: No such file or directory " However this fixes that problem askubuntu.com/questions/470796/…
    – k-den
    Mar 10 '15 at 18:01










1




1




Tried this for the most recent version of i8kutils-1.41 on Ubuntu 14.04 and got "In file included from /usr/include/stdio.h:27:0, from smm.c:27: /usr/include/features.h:374:25: fatal error: sys/cdefs.h: No such file or directory " However this fixes that problem askubuntu.com/questions/470796/…
– k-den
Mar 10 '15 at 18:01






Tried this for the most recent version of i8kutils-1.41 on Ubuntu 14.04 and got "In file included from /usr/include/stdio.h:27:0, from smm.c:27: /usr/include/features.h:374:25: fatal error: sys/cdefs.h: No such file or directory " However this fixes that problem askubuntu.com/questions/470796/…
– k-den
Mar 10 '15 at 18:01




















 

draft saved


draft discarded



















































 


draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f63588%2fhow-do-i-get-fan-control-working%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

flock() on closed filehandle LOCK_FILE at /usr/bin/apt-mirror

Mangá

 ⁒  ․,‪⁊‑⁙ ⁖, ⁇‒※‌, †,⁖‗‌⁝    ‾‸⁘,‖⁔⁣,⁂‾
”‑,‥–,‬ ,⁀‹⁋‴⁑ ‒ ,‴⁋”‼ ⁨,‷⁔„ ‰′,‐‚ ‥‡‎“‷⁃⁨⁅⁣,⁔
⁇‘⁔⁡⁏⁌⁡‿‶‏⁨ ⁣⁕⁖⁨⁩⁥‽⁀  ‴‬⁜‟ ⁃‣‧⁕‮ …‍⁨‴ ⁩,⁚⁖‫ ,‵ ⁀,‮⁝‣‣ ⁑  ⁂– ․, ‾‽ ‏⁁“⁗‸ ‾… ‹‡⁌⁎‸‘ ‡⁏⁌‪ ‵⁛ ‎⁨ ―⁦⁤⁄⁕