View Full Version : [ubuntu] HOWTO: Install and configure i8kmon for configurable automatic fan speed control
motin
June 27th, 2008, 04:39 PM
Here is how to install i8kmon and set it up with sane settings for a XPS M1330:
1. sudo apt-get install i8kutils
2. Add "i8k" on a new line in /etc/modules:
sudo gedit /etc/modules
3. Add "options i8k force=1" on a new line in /etc/modprobe.d/options
sudo gedit /etc/modprobe.d/options
4. Here, either restart your computer or run:
sudo modprobe i8k force=1
5. Open up a new file called /etc/i8kmon:
sudo gedit /etc/i8mon
And save the following to 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) 1
# Temperature thresholds: {fan_speeds low_ac high_ac low_batt high_batt}
set config(0) {{-1 0} -1 55 -1 55}
set config(1) {{-1 1} 55 70 55 70}
set config(3) {{-1 2} 70 128 70 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
(based on http://www.cvjb.de/comp/linux/debian/i8kmon but adapted for the one-fan-only XPS M1330)
Now you can run "i8kmon" from a terminal to see (and hear) how it adjusts your fan speed. Or you can add it to the gnome panel (for autostart upon login as well as easy monitoring) by the following instructions:
1. sudo apt-get install gnome-swallow-applet
2. Add the swallow applet to the gnome panel by right-clicking on the latter and choosing Add to panel
3. Enter "i8kmon" for Program name and leave the second field blank
Alternatively, you can have i8kmon autostart without the applet part by adding "i8kmon --daemon" as an entry to your sessions autostart list (in System -> Settings -> Sessions)
Note: Even though i8kmon seems to do it's job very well, erratic fan behavior can be experienced due to the built-in fan control methods of Dell's laptops. I am trying to get more advice on how to solve that matter in a parallell thread: http://ubuntuforums.org/showthread.php?p=5275392 Informative replies in that thread are very welcome!
sc00ter
June 29th, 2008, 04:51 AM
Unfortunately this doesn't work on the M1530, here's the dmesg output:
dmesg | grep i8k
[ 27.713816] i8k: not running on a supported Dell system.
[ 27.713819] i8k: vendor=Dell Inc., model=XPS M1530 , version=A08
[ 27.714137] i8k: unable to get SMM BIOS version
The sensors applet will pickup i8k when configured as a daemon, and successfully report the CPU Temp and FAN speed.
motin
June 30th, 2008, 12:39 PM
Unfortunately this doesn't work on the M1530, here's the dmesg output:
dmesg | grep i8k
[ 27.713816] i8k: not running on a supported Dell system.
[ 27.713819] i8k: vendor=Dell Inc., model=XPS M1530 , version=A08
[ 27.714137] i8k: unable to get SMM BIOS version
The sensors applet will pickup i8k when configured as a daemon, and successfully report the CPU Temp and FAN speed.
I get the same output - no worries!
And since sensors applet is picking up the scent everything seems ok.
mrynit
August 13th, 2008, 05:10 AM
I followed all the steps but for some reason doing this does not work. The fan will not behave according /etc/i8kmon. I am using a dell inspiron 1420 with 8.04 2.6.24-20-generic.
in my /etc/i8kmon i defined these settings. the rest of the file is the same as the above.
set config(0) {{-1 0} -1 50 -1 65}
set config(1) {{-1 1} 40 60 55 75}
set config(2) {{-1 2} 50 70 65 85}
set config(3) {{-1 2} 75 128 75 128}
I have two fans, one that is controllable and the other is on at a fix speed all the time (uncontrollable).
mrynit@dell-desktop:~$ i8kfan
-1 0
mrynit@dell-desktop:~$ i8kfan - 2
-1 2
mrynit@dell-desktop:~$ cat /proc/i8k
1.0 A09 HS12GF1 40 -22 2 27660 119940 -1 -22
mrynit@dell-desktop:~$ i8kctl
1.0 (null) HS12GF1 40 -1 2 27660 119940 0 -1
sensors-applet 2.2.1
http://arch.kimag.es/share/25143876.png (http://kimag.es/)
i took the screen shot at a different time so that is why the temps are different from the terminal output.
From the above I know that the right fan is the controllable fan. I configured the temp settings to work with it. I got the info from here http://people.debian.org/~dz/i8k/00-README, also the man page for i8kmon has the same info.
Ryan_macy
August 13th, 2008, 05:17 PM
how would I configure this to make my fan run at medium speed all the time?
mrynit
August 13th, 2008, 10:28 PM
how would I configure this to make my fan run at medium speed all the time?
I would assume just setting the fan to 1 in config(0)
set config(0) {{-1 1} -1 50 -1 65}
motin
August 14th, 2008, 05:01 AM
how would I configure this to make my fan run at medium speed all the time?
You do understand that this could cause overheating with possibly malfunctioning and broken hardware as a consequence?
Ryan_macy
August 14th, 2008, 01:18 PM
You do understand that this could cause overheating with possibly malfunctioning and broken hardware as a consequence?
I doubt it.
hotplainrice
September 15th, 2008, 08:39 PM
Thanks for saving me hours of figuring out how to silence this machine. You should edit this post to include the 1000->200 timer hack if not the machine whizzes almost every 2-3 seconds
Clockswork
October 18th, 2008, 11:07 AM
Hello! I'm running a xps 1530 and I did all the things u wrote and I think it had some effect on my computer. After I applied the settings it seems as the fans has a higher threshold than before.
And I have some questions..
1. What does the two blank buttons do in "i8kmon"?
2.What happens if I dont run i8kmon, are the fan settings still applied or are they now running "as Dell want them to"?
3. I would like to have a GPU threshold of 65 degress celsius, and a CPU threshold of 50 degrees how would I apply those settings?
Is there a way to remove these settings and get back to where I was to compare?
Thanks you guys!
jmjohn
November 3rd, 2008, 04:07 PM
Using 18kmon may be no longer necessary, it's best to update the bios first and see if this fixes the problem.
Here's info on the bios update: http://linux.dell.com/wiki/index.php/Tech/libsmbios_dellBiosUpdate
On my Dell XPS M1330, fan speeds seem normal after a bios update and switching to the nvidia 173 driver on Intrepid, though the fan seems to run more than normal after wakeup from sleep (anyone else have this problem?). It seems the fan can't shut down once revved up after wake up.
Does anybody have good information on whether or not this is necessary after upgrading to bios update a13 on an xps M1330? I'd be interested to hear anyone's thoughts.
-glass.dimly
Clockswork
November 3rd, 2008, 05:20 PM
I did a BIOS upgrade for my Dell XPS m1530 and the fans do seem to run better and with better thresholds.
Guide on how to do this can be found here: http://www.clockswork.org/?p=3
Clockswork
November 3rd, 2008, 05:24 PM
I did a BIOS upgrade for my Dell XPS m1530 and the fans do seem to run better and with better thresholds.
Guide on how to do this can be found here: http://www.clockswork.org/?p=3
chadeldridge
December 15th, 2008, 11:33 PM
The BIOS on the m1710 does not seem to do a good job at all .. everything is about 60+ right now and the Bios is barely running the fans. i8kmon seems to be my best option, but despite reading the man page i am still very confused about exactly what these levels mean. low_ac high_ac low_batt high_batt . can someone explain in lamens please?
LudaChr1s7
December 15th, 2008, 11:57 PM
Hi guys,
I am a fairly new Linux user. I have tried many different fan control programs now including nclock, dellfand and now gkrollm. While gkrollm seems to work, when set on automatic the fan goes on high (which is expected because my laptop is hot and over the degree) but every like 5 seconds or 10 seconds it pulses going to a lower speed and then back up, its not going completely off though just lower and starting up again. I worry this is wearing out the fan. I would also like to know how stop all these programs and just go back to the default Ubuntu fan settings as if I had never tweaked them.
Any help is greatly appreciated.
Thanks
chadeldridge
December 19th, 2008, 05:18 PM
The BIOS on the m1710 does not seem to do a good job at all .. everything is about 60+ right now and the Bios is barely running the fans. i8kmon seems to be my best option, but despite reading the man page i am still very confused about exactly what these levels mean. low_ac high_ac low_batt high_batt . can someone explain in lamens please?
OK .. maybe someone can just tell me how to do this then:
1. I want both fans to kick on mode 1 at 40 and then both switch to mode 2 at 60... stay at 60 until at 40 and then back to 1. If below 30 both off.
vwbeamer
January 9th, 2009, 08:42 PM
Thanks, I used this to increase the colling on my Inspriron B130, the fan was not running fast enough and the CPU temps were getting up to 50 C.
Running the fan on "1" drop the temp to 30 C
b.karthi-k-yan
February 13th, 2009, 02:48 AM
Hi,
im using dell 1420 & tried to installing "i8k"
finally i ended up with this kind of display http://arch.kimag.es/share/27814452.jpg (http://kimag.es/) without fans speed specifications.just with a box containing two numbers
instead of this kind of http://arch.kimag.es/share/87578189.png (http://kimag.es/) display
can some body help me in displaying it in a right form:(:confused::(:confused:
mihai007
March 1st, 2009, 09:29 AM
Hi,
im using dell 1420 & tried to installing "i8k"
finally i ended up with this kind of display http://arch.kimag.es/share/27814452.jpg (http://kimag.es/) without fans speed specifications.just with a box containing two numbers
instead of this kind of http://arch.kimag.es/share/87578189.png (http://kimag.es/) display
can some body help me in displaying it in a right form:(:confused::(:confused:
we are talking about different things here.
For monitoring only you just need to modprobe i8k with the force option, no need to add anything at start-up or to execute any application.
Then for the nice gui you are talking need to use the gnome sensors applet.
mihai007
March 2nd, 2009, 07:28 AM
P.S to all of you that use the fan's rpm sensor to display the data:
The fan's rpm may be wrong (as seen in post above, 119940 RPM is waaaayyy too much). You can adjust to the real values as explained in this bug report: https://bugs.launchpad.net/ubuntu/+source/sensors-applet/+bug/200449
Checkhovian
March 9th, 2009, 06:55 PM
Hello,
Trying to install i8kmon and having some problems...
bethany@dell-laptop:~$ sudo apt-get install i8kutils
[sudo] password for bethany:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Couldn't find package i8kutils
bethany@dell-laptop:~$
Help please?
mihai007
March 10th, 2009, 06:07 AM
What ubuntu are you using 32,64?
Could it be related to this: https://bugs.launchpad.net/ubuntu/+source/i8kutils/+bug/309262 ?
Checkhovian
March 10th, 2009, 10:58 AM
Ah, using 64 bit Hardy, so I guess that could be the problem. It says it can be compiled, though...?
klein de usa
March 20th, 2009, 11:09 PM
hi
how can you tell what bit your using? 32bit or 64bit
michael37
May 1st, 2009, 11:38 PM
Ah, using 64 bit Hardy, so I guess that could be the problem. It says it can be compiled, though...?
Go for 64-bit Jaunty, it's working very well there.
michael37
May 1st, 2009, 11:41 PM
Could someone please help me force loading i8k modules in Jaunty? As far as I read the manual, sounds like Jaunty asks for /etc/modprobe.d/i8k.conf in the new format?
mihai007
May 8th, 2009, 08:33 PM
using this configuration I had no problems in loading fan speed info into gnome sensors applet
mihai007@mihai007-dell:~$ cat /etc/modprobe.d/i8k.conf
options i8k force=1
mihai007@mihai007-dell:~$ cat /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
lp
rtc
i8k
mihai007@mihai007-dell:~$
My fan speed is around 3000rpm but now on my m1330 with nvidia found another fan at 913rpm but I think it doesn't really exist as the m1330 has one fan only...
l-x-l
May 13th, 2009, 05:59 PM
5. Open up a new file called /etc/i8kmon:
sudo gedit /etc/i8mon
Edit your post. Should be:
sudo gedit /etc/i8kmon
Not:
sudo gedit /etc/i8mon
Caused a noob like me a bit of trouble when trying to install.
Boondoklife
May 21st, 2009, 06:01 PM
I think this may have changed:
Edit your post. Should be:
sudo gedit /etc/i8kmonNot:
sudo gedit /etc/i8monCaused a noob like me a bit of trouble when trying to install.
Can anyone verify that the config file is now, /etc/i8kmon.conf. I looked inside /usr/bin/i8kmon and see this line.sysconfig /etc/i8kmon.conf
l-x-l
May 25th, 2009, 01:37 AM
I think this may have changed:
Can anyone verify that the config file is now, /etc/i8kmon.conf. I looked inside /usr/bin/i8kmon and see this line.sysconfig /etc/i8kmon.conf
I think it was simply a typo by Motin. It should be "sudo gedit /etc/i8kmon".
gmorando
June 5th, 2009, 12:22 PM
Using 18kmon may be no longer necessary, it's best to update the bios first and see if this fixes the problem.
Here's info on the bios update: http://linux.dell.com/wiki/index.php/Tech/libsmbios_dellBiosUpdate
On my Dell XPS M1330, fan speeds seem normal after a bios update and switching to the nvidia 173 driver on Intrepid, though the fan seems to run more than normal after wakeup from sleep (anyone else have this problem?). It seems the fan can't shut down once revved up after wake up.
-glass.dimly
Hello everyone, I have an XPS M1330 too. My fans are very loudy. As suggested above, I tried to upgrade my Bios but it seems it is the last version (A15).
Any idea?
Thanks in advance,
Giovanni
stu002
November 1st, 2009, 06:08 PM
I am tryig to follow this guide for my C400 as I used the windows version of this app with great success.
In the howto that this thread starts with it says to add an addtional line to /etc/modprobe.d/options however on Ubunto 9.10 Koala the modprobe.d folder is not present so I can't find the options file to add a line.
Any guidance or update of this howto would be appreciated.
michael37
November 2nd, 2009, 12:51 AM
I am tryig to follow this guide for my C400 as I used the windows version of this app with great success.
In the howto that this thread starts with it says to add an addtional line to /etc/modprobe.d/options however on Ubunto 9.10 Koala the modprobe.d folder is not present so I can't find the options file to add a line.
Any guidance or update of this howto would be appreciated.
Skip this step; Karmic 9.10 doesn't need the force.
Pifilatakanemu
November 12th, 2009, 07:19 AM
edit: ok, i achieved to configure i8k and now i got a problem:
one fan seems to be stucked. the left small button in i8kmon is red. which fan is it? i got an inspiron 6400 with a Dual Core.
sometimes there is quite a big difference between the temperature of the cores (about 5-6 °C) anything to worry about?
Just to check whether I understood i8mon: right now this is my configuration. As I don't have a battery, the last rows are not interesting for me.
# 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} 45 66 55 75}
set config(2) {{-1 1} 55 80 65 85}
set config(3) {{-1 2} 70 128 75 128}
set config(1) is the fan speed. the first two numbers in the brackets are to identify the fans, are they? the following two are those of interest for me: the first is at what temperature to stop the mode and the 2nd at what temperatur to start. right?
right now the fan cools down till 41. which shouldn't be the case, right? any way to check whether i8mon really is active?
mohegan
December 29th, 2009, 12:42 PM
With Karmic, it is i8kutils version 1.31. So, to configure i8kmon, the configuration file is : /etc/i8kmon.conf.
With the old file /etc/i8kmon, it doesn't work.
Pifilatakanemu
March 5th, 2010, 02:30 PM
Thanks for the hint. I tried to make i8kmon work once again today and now it seems to work... theoretically!
In practice, the values in i8kmon.conf are mainly ignore. The fan just cools the CPU down to about 30° in "steps" (it cools for some seconds, than stops for a second, than continues etc.) which is really annoying!
This is my i8kmon.conf:
# Run as daemon, override with --daemon option
set config(daemon) 1
# 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) 30
# Temperature threshold at which the temperature is displayed in red
set config(t_high) 75
# Temperature thresholds: {fan_speeds low_ac high_ac low_batt high_batt}
set config(0) {{0 0} -1 60 -1 55}
set config(1) {{0 1} 50 70 50 60}
set config(2) {{0 2} 60 80 55 125}
set config(3) {{0 2} 70 128 10 128}
#set config(0) {{- 0} -1 60 -1 55}
#set config(1) {{- 1} 50 70 55 70}
#set config(3) {{- 2} 75 128 70 128}
# end of file
Any suggestions about what to do?
rp88
June 20th, 2010, 07:03 PM
I am also having the same problem as Pifilatakanemu, i8kmon will set the fan speed and another program or the dell bios will change it back to whatever speed it wants.
I think if we change the timeout from 1 second to 200 miliseconds it will fix this problem, since i8kmon will enforce the desired settings more often, almost immediately overriding the settings the dell bios sets.
I tried setting the timeout to .2 in /etc/i8kmon.conf and restarting i8kmon but i got the following error:
expected integer but got "200.0"
while executing
"after [expr $config(timeout)*1000] {status_timer}"
(procedure "status_timer" line 7)
invoked from within
"status_timer"
(procedure "main" line 6)
invoked from within
Can anyone help me change the timeout please?
michael37
June 20th, 2010, 08:29 PM
Can anyone help me change the timeout please?
No luck here, it seems to work only on 1 second timeouts for me.
palmboy5
June 26th, 2010, 03:52 AM
Post #9 states there is a hack workaround, anyone know what hes talking about?
EDIT: got it.
http://ubuntuforums.org/showpost.php?p=5434295&postcount=3
top of post
palmboy5
June 28th, 2010, 09:04 AM
It seems for any fan speed that isn't "0", even with a 50ms timeout period the fan still spins up every few seconds.
Also, by setting the script to be run as a startup application, a new instance of it will be run if you log out and log back in. This is pretty stupid, is there a way to autostart this program only once each boot, no matter what happens?
akernan
May 15th, 2011, 11:51 AM
Looks like this thread has been dead for a while. I have a Dell Inspiron 1564 that is about 1 year old. Should I use i8kmon?
FerroPower
August 14th, 2011, 06:37 PM
Sorry for sounding noob but I installed i8kmon as given here but I can't seem to get the details related to my current Cpu Fan RPM and what is the exact CPU temperature.
I am using Dell Inspiron 1545 laptop dual core. using Kubuntu 11.04 64 bit OS.
i8kmon shows some number like 52 50 and keeps changing...
I don't know what that number is. Please help.
(EDIT) P.S.: I got it working I upgraded the Kernel to 3.0 and i8kmon is working !! I can see the Fan RPM in the plasma widget FANSpeed. the Fan works just normal. with CPU temp mostly in 39C- 47C.
Jakin
January 1st, 2012, 10:36 PM
Hello, i have been looking at this subject- all about the net, the Dell (e1505/6400) i am using just doesn't turn on the fan at all..
Using i8kmon; the CPU will heat up well past 50c even with the settings i copied exactly from the tutorial (first post). I can manually turn on the fan when i see it is getting hot, sure, but much rather, how can i just set up the fan to be always on? Sound doesn't bother me. Level 1 keeps the CPU a max of 29c this is perfect.
Can someone explain how to set this so i never have to bother with it again? ubuntu 10.10
michael37
January 3rd, 2012, 12:38 AM
<snip>
Can someone explain how to set this so i never have to bother with it again? ubuntu 10.10
My only useful advice is upgrade to 11.10.
vBulletin® v3.8.4, Copyright ©2000-2012, Jelsoft Enterprises Ltd.