Sarah Klockars-Clauser for openphoto.net |
One of the main problems I faced has been that of the incredibly loud fan noise which came from my new laptop, so I began my online quest until I found i8kutils, a (partial) solution to my problem. I'm saying "partial" because we shouldn't confuse the cause and the effect: i8kutils won't solve your overheating issues, but it will help you to configure your fans in order to overwrite their exasperated and irritating default behaviour. But be warned: if your fans are running it's probably because they're trying to manage your overheating problems for you, so don't set i8kutils just to make your fans definitively shut up (unless you know what you're doing).
The steps!
1) First of all, let's download and install i8kutils. Open your terminal and write:sudo apt-get install i8kutils2) Now you've got to add i8k to your modules. Open the modules file:
sudo gedit /etc/modulesand add the string "i8k" (without quotes) to the file. Save and exit.
3) Create an i8k.conf file
sudo vim /etc/modprobe.d/i8k.confand fill it with this code:
options i8k force=1
Note: Some older guides will tell you to create a /modprobe.d/options file. The "options" file isn't used anymore on Ubuntu. What does matter is that you create a file with a .conf extension (the filename isn't important, but I decided to name it i8k.conf for clarity). So beware of older i8kmon configuration guides.
4) Now restart your computer, or run this code to make i8k run:
sudo modprobe i8k force=15) We will now create a i8kmon.conf file which will tell the i8kmon utility how to behave.
sudo gedit /etc/i8kmon.confPaste the following code in it:
# Run as daemon, override with --daemon option set config(daemon) 0 # Automatic fan control, override with --auto option set config(auto) 1 # Report status on stdout, override with --verbose option set config(verbose) 1 # Status check timeout (seconds), override with --timeout option set config(timeout) 20 # Temperature thresholds: {fan_speeds low_ac high_ac low_batt high_batt} set config(0) {{-1 0} -1 40 -1 40} set config(1) {{-1 1} 30 60 30 60} set config(2) {{-1 2} 53 128 53 128} # For computer with 2 fans, use a variant of this instead: # Temperature thresholds: {fan_speeds low_ac high_ac low_batt high_batt} # set config(0) {{-1 0} -1 52 -1 65} # set config(1) {{-1 1} 41 66 55 75} # set config(2) {{-1 1} 55 80 65 85} # set config(3) {{-1 2} 70 128 75 128} # end of file
This has been edited to match my Dell Inspiron 15r 5521 fan configuration (and I hope I did it well). If you want more informations take a look at the documentation on Ubuntu Manuals: http://manpages.ubuntu.com/manpages/gutsy/man1/i8kmon.1.html
6) Now you should be able to run i8kmon from your terminal and see if (and how) it's working. Simply run:
i8kmon
Finished!
But wait...what if you want i8kmon to automatically start at boot? I'll simply copy-paste what's been written in the official documentation:
Under Debian GNU/Linux it is possible to start the daemon automatically by creating an /etc/default/i8kmon configfile containing the line "set config(daemon) 1". Note the the /etc/default/i8kmon configfile is not installed by the i8kutils package because the program is designed to be run by normal users. If you want to use it as daemon you must create the config file yourself. In this case, the --nouserconfig option can sometimes also help by limiting it to sourcing /etc/i8kmon (and not ~/.i8kmon).
If you take a look in your /usr/bin/i8k you'll find that ~/.i8kmon is considered as a user configuration, while /etc/i8kmon.conf (the file we edited before) is treated as a system configuration.
If something in your configuration goes wrong (e.g. if you can't make your temperature limits work) it would be worthwhile checking if you've got this ~/.i8kmon file on your system and try to edit it, because it could be perfidiously overwriting your system configuration. If you discover something about it, please let me know.
I hope this article has been useful to you. If so, please click here and there on social buttons to make it more visible. If not, I'm waiting for your constructive comments ;)
Hello. I post this comment just to say that i8kutils is being updated in the site below.
ReplyDeletehttps://launchpad.net/i8kutils
Thank you very much!
DeleteThis comment has been removed by a blog administrator.
ReplyDeleteNo shopping spam allowed, sorry :)
DeleteHello
ReplyDeleteI have the same model of Dell, I will set and see if it work.
Thanks,
PS: Sorry my English isnt good
Thanks! Been really helpful. Now my laptop is quiet again >:D
ReplyDeleteI'm happy it worked! :)
DeleteThanks man, it works on Dell inspiron 5520 :)
ReplyDeleteYou're welcome! ;)
DeleteCan you please tell me the normal temperature that it's supposed to be appeared ?
DeleteThanks a lot!!! Wonderfull article, However, I got a little bit confused at the end. How we can make i8kmon run every time we turn on our computer?
ReplyDeleteIs this "/etc/default/i8kmon" or "/etc/default/i8kmon.conf"? Can you please clarify this.
ReplyDeleteI've followed your manual, but the fact, that the fan start spinning for approximately 3sec at high speed every 20sec is a little disturbing. Is it supposed to do that? (I'm really a beginner and I admit I have just a little idea about what I have done by following your instructions. But thanks anyway)
ReplyDeleteHi,
ReplyDeletesomething wrong is happened during i was trying to install the package:
seb@seb:~$ sudo apt-get install i8kutils
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
acpi tclx8.4
Suggested packages:
tclx8.4-doc
The following NEW packages will be installed:
acpi i8kutils tclx8.4
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 134 kB of archives.
After this operation, 440 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://de.archive.ubuntu.com/ubuntu/ trusty/universe acpi amd64 1.7-1 [13,8 kB]
Get:2 http://de.archive.ubuntu.com/ubuntu/ trusty/universe tclx8.4 amd64 8.4.0-3.1 [94,2 kB]
Get:3 http://de.archive.ubuntu.com/ubuntu/ trusty/universe i8kutils amd64 1.41 [25,9 kB]
Fetched 134 kB in 0s (326 kB/s)
Selecting previously unselected package acpi.
(Reading database ... 200540 files and directories currently installed.)
Preparing to unpack .../archives/acpi_1.7-1_amd64.deb ...
Unpacking acpi (1.7-1) ...
Selecting previously unselected package tclx8.4.
Preparing to unpack .../tclx8.4_8.4.0-3.1_amd64.deb ...
Unpacking tclx8.4 (8.4.0-3.1) ...
Selecting previously unselected package i8kutils.
Preparing to unpack .../i8kutils_1.41_amd64.deb ...
Unpacking i8kutils (1.41) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
Processing triggers for ureadahead (0.100.0-16) ...
Setting up acpi (1.7-1) ...
Setting up tclx8.4 (8.4.0-3.1) ...
Setting up i8kutils (1.41) ...
* Starting Dell fan/cpu-temperature monitor i8kmon [fail]
invoke-rc.d: initscript i8kmon, action "start" failed.
dpkg: error processing package i8kutils (--configure):
subprocess installed post-installation script returned error exit status 1
Processing triggers for libc-bin (2.19-0ubuntu6.3) ...
Processing triggers for ureadahead (0.100.0-16) ...
Errors were encountered while processing:
i8kutils
E: Sub-process /usr/bin/dpkg returned an error code (1)
could anyone help me?
Before that installation I started sudo sensors-detect and added to /etc/modules the following lines
#----cut here----
# Chip drivers
coretemp
Thanks in advance for your support!
Sebastian
Hi all! Sebastian, I had similar problem as you describe, even to the point where Software Updater was broken - could not proceed. Now I have it all running sweetly on DELL Inspiron 15R (N5110) with Linux Mint 17.1 Cinnnamon.
ReplyDeleteFirst you need remove the broken package.
I was able to remove package completely, like so:
sudo rm /var/lib/dpkg/info/i8kutils.*
sudo dpkg --remove --force-remove-reinstreq i8kutils
sudo apt-get remove --purge i8kutils
sudo apt-get autoremove
Then follow the guide above to install i8kutils, making sure to avoid (or remove) Steps 2-4 above.
To have it start as daemon / auto on boot, add this entry to your Startup programs:
i8kmon -d -a
Thanks, this was the first fix I found for
DeleteErrors were encountered while processing:
i8kutils
E: Sub-process /usr/bin/dpkg returned an error code (1)
However no I'm stuck on a new problem:
reading system config file
i8kmon v1.30 11/16/2013 - Copyright (C) 2013 Vitor Augusto
config(0) = {-1 0} -1 40 -1 40
config(1) = {-1 1} 30 60 30 60
config(2) = {-1 2} 53 128 53 128
config(3) = {2 2} 70 128 75 128
config(acpi) = acpi
config(auto) = 1
config(daemon) = 0
config(geometry) =
config(i8kfan) = /usr/bin/i8kfan
config(min_speed) = 2000
config(sysconfig) = /etc/i8kmon.conf
config(t_high) = 80
config(timeout) = 20
config(unit) = C
config(use_conf) = 1
config(userconfig) = ~/.i8kmon
config(verbose) = 1
status(ac) = 0
status(acpi_timer) = 0
status(left) =
status(leftspeed) = 0 -1 -1 -1
status(lspeed) = 0
status(lstate) = 0
status(lstuck) = 0
status(nfans) = 2
status(right) =
status(rightspeed) = 0 -1 -1 -1
status(rspeed) = 0
status(rstate) = 0
status(rstuck) = 0
status(state) = 0
status(t_high) = 0
status(t_low) = 0
status(temp) = 0
status(timer) =
status(ui) = 0
No support for device type: power_supply
while executing
"exec {*}$config(acpi)"
(procedure "read_ac_status" line 12)
invoked from within
"read_ac_status"
(procedure "read_i8k_status" line 27)
invoked from within
"read_i8k_status"
(procedure "make_ui" line 51)
invoked from within
"make_ui"
(procedure "main" line 6)
invoked from within
"main"
invoked from within
"if {$tcl_interactive == 0} {
main
vwait forever
}"
(file "/usr/bin/i8kmon" line 616)
Your help is much appreciated.
Regards
Richard
Hi
DeleteCould you maybe give me a hint on adding the service during boot, I a noob :(
Regards
If you're like me and on a Dell inspiron 3251, then UPDATE the BIOS. Doing so I swear actually let me adjust my fan control, either that or it was stopping the i8kmon.. with "sudo service i8kmon stop" and then setting my fans with "i8kfan -1 2" or 1
ReplyDeleteI followed your guide ( I also have an Inspiron 15R 5521 ) and it seems to work well. One question: Is there a way to start the monitor without doing it in a terminal window? If you start it from a terminal and then try to close the terminal it messes up i8kmon and you start getting all kinds of program error messages. The little temperature indicator is nice but I would rather not have the terminal open all the time. Thanks
ReplyDeleteThanks for the post! In my case, the first step was sufficient. I have a Dell Inspiron 5737 17R; since two or three days was really noisy, for no reason. Just installing i8kutils resolved immediately the problem. It was amazing! The fan stopped running crazy immediately after the installation completed.
ReplyDeleteTHANK YOU VERY.... MUCH FOR YOUR HELP
ReplyDeleteOne thing to note is that for some reason i8kutils loses control of the fan when resuming from sleep. Having "i8kfan 0 0" run when waking up fixes the issue.
ReplyDeleteI also face the same issue, After waking up from sleep i8kutil loses control. How to fix it, I can't understand what you meant by "Having "i8kfan 0 0" "
DeleteMaybe you can steps from the below link
Deletehttp://omglulz.wtf/posts/linux-mint-18-dell-inspiron-5521-fan-issue-fix
Hi this might help you out
ReplyDeletehttp://omglulz.wtf/posts/linux-mint-18-dell-inspiron-5521-fan-issue-fix
http://delltechnicalsupportfromtechbuddies.blogspot.in/2016/11/dell-laptop-screen-complete-white.html
ReplyDeleteneed more services for dell
thanks, God bless you man!
ReplyDeletehello and thank you! has there been an update to i8kutils, so it comes with a default config? in the very second i installed it, i8kutils took control of the fan and manages it perfectly smooth (inspiron 7520/15r se)
ReplyDeleteThis is the only guide that worked for me so far (An old Alienware 13 R1). I've been looking for one the whole night. Thank you so much!
ReplyDeleteFor those willing to go to the root of the problem ...
ReplyDeleteThe solution may be to upgrade the BIOS to A16
https://www.dell.com/community/Laptops-General-Read-Only/Fan-is-working-on-max-speed-when-WiFi-and-bluetooth-switched-on/td-p/4097719
I have the A14 and when I use Bluetooth and wifi it uses the fan more than usual.
# sudo dmidecode | grep -i BIOS -A 5
BIOS Information
Vendor: Dell Inc.
Version: A14
Release Date: 07/31/2015
For latest versions ofBIOS you'll need to install with
ReplyDeletesnap install dell-bios-fan-control
sudo snap connect dell-bios-fan-control:io-ports-control
this utility that disables BIOS fan control to let i8kmon do it (or i8kctl if you are adventurous)