Dell fan control

What works, and doesn't, for you. Be specific, and please include Puppy version.
Post Reply
Message
Author
tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

Dell fan control

#1 Post by tempestuous »

Here is the dellfand daemon, for fan speed control of various Dell models.
For a list of tested models, see the dellfand homepage -
http://dellfand.dinglisch.net/

UPDATE April 2011: for more thorough fan control, see the ik8utils package in the sixth post in this thread.

In theory Dell's bios should manage fan speed control via the Linux ACPI interface. So obviously you should not disable acpi with boot options. It's also worth checking the output of dmesg in the terminal. If you see something like "disabling acpi" then obviously this is why your fan is not turning on, and you should try to fix this by adding the boot option "acpi=force".
But if all else fails, go ahead and install this utility. The usage is -

Code: Select all

dellfand <mode> <sleep-seconds> <off> <low> <high>
mode
0 - run in the foreground, print stats periodically
1 - run in the background as daemon, no output
sleep-seconds
dellfand will check the CPU temperature with this interval and adjust the fan speed according to the last 3 arguments
off
when the fan is on, turn it off when the temperature has dropped to this level
low
turn the fan to low speed when it reaches this temperature
high
turn the fan to high speed when it reaches this temperature

The default values, as defined in /etc/init.d/dellfand, are
off 30 low 38 high 40
but according to Google the temperature values for an Inspiron 3700 are
off 44 low 65 high 74
so it seems the default dellfand values are quite cool. It might be good to start with a compromise of 35/45/55.
So open an rxvt terminal and run this -

Code: Select all

dellfand 0 5 35 45 55
Keep the terminal open and do some other tasks on the computer for a while, checking what dellfand is doing from time to time. If everything looks like it's working as it should, you can run dellfand automatically at startup by opening /etc/rc.d/rc.local in geany, and add this line

Code: Select all

dellfand 1 5 35 45 55
Reboot.
Attachments
dellfand-0.9.pet
(3.58 KiB) Downloaded 1659 times
Last edited by tempestuous on Tue 05 Apr 2011, 03:56, edited 1 time in total.

jakfish
Posts: 762
Joined: Fri 18 Jul 2008, 19:09

#2 Post by jakfish »

tempestuous does it again. I have three Dell laptops, in varying order of decrepitude, and your posted links tell me this fan control can even work with my ancient Inspiron 4000.

I'm somebody who works exclusively on battery, so I'm always willing to take chances with the power-eating fan. Before your great fan control for the eee, I had physically disconnected my eee fan.

But my extensive, but amateur, experience with Dell laptops is that they burn hot and need that fan more than other brands. Users have long complained about the Inspiron 600m cooking groins and wrists alike. So even with temperature showing in a conky, I would second your warning that users should play with the fan settings cautiously.

IMHO, Dells run hot even with the fan blowing.

Since my experience is all anecdotal and through nothing more than Dell ownership, I'm most interested in your take. Do you use this app? What has been your experience?

Again, many thanks for filling yet another gap in acpi control. My eee 900/Puppy 4.* works because of your contributions.

Jake

medicalystoned
Posts: 7
Joined: Sun 17 May 2009, 07:04

#3 Post by medicalystoned »

Thanks so much again, it works great and at startup also, awesome.....

----peace

mcewanw
Posts: 3169
Joined: Thu 16 Aug 2007, 10:48
Contact:

Re: Dell fan control

#4 Post by mcewanw »

tempestuous wrote: The default values, as defined in /etc/init.d/dellfand, are
off 30 low 38 high 40
dellfand is working fine on my old Dell Latitude CPx machine thanks. However, you don't seem to have packaged the script /etc/init.d/dellfand in your dotpet (I assume it is a script?).

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#5 Post by tempestuous »

mcewanw wrote:you don't seem to have packaged the script /etc/init.d/dellfand in your dotpet
Correct.
If I included this script in the dotpet package it would automatically launch the dellfand daemon at each bootup, without the user necessarily being aware.

I thought it more safe if users could first test the dellfand application before consciously adding it to their bootup regime.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#6 Post by tempestuous »

Here are the i8kutils utilities for Dell notebooks,
to control fanspeed, volume contorl, enable hotkeys, and read CPU temperature, via the Dell bios.

Fan control, manual:

First load the i8k kernel module, which is already contained in Puppy -

Code: Select all

modprobe i8k force=1
Now to run left fan and right fan on low speed

Code: Select all

i8kfan 1 1
to run left fan and right fan on high speed

Code: Select all

i8kfan 2 2
to turn both fans off

Code: Select all

i8kfan 0 0

Fan control, automatic:
This will turn the fans on and off according to your defined temperature thresholds.

Open /etc/modprobe.conf in Geany, and add this line -

Code: Select all

options i8k force=1
Now to enable the fan control daemon, i8kmon, at each boot up,
open /etc/default/i8kmon in Geany and change "ENABLED=0" to "ENABLED=1".
Now reboot.

Your temperature thresholds are in the configuration file /etc/i8kmon.conf
Obviously you can change these values. Once changed, you will need to restart the daemon for the changes to take effect, as such -

Code: Select all

/etc/init.d/i8kmon restart
More information can be found at /root/my-documents/README.i8kutils

GKrellM and Conky can display your CPU temperature and fanspeed, with a suitable configuration file.
Attachments
i8kutils-1.33.pet
(20.43 KiB) Downloaded 1222 times

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#7 Post by tempestuous »

Oh, if you're going to use i8kutils, then you should obviously disable dellfand,
otherwise the two will be competing to control your fan.

jpr
Posts: 102
Joined: Thu 02 Apr 2009, 01:30

Puppy Versions Compatibility

#8 Post by jpr »

Which Puppy versions has this pet (i8kutils-1.33.pet) been tested with?

Will it work with the latest Lucid and/or Slacko Puppies?

Thanks.

yordanj94
Posts: 78
Joined: Thu 16 Sep 2010, 15:40
Location: Bulgaria

#9 Post by yordanj94 »

Will it work with the latest Lucid and/or Slacko Puppies?

Yes.Both.
I got Latitude c610

jpr
Posts: 102
Joined: Thu 02 Apr 2009, 01:30

Works on Puppy-431 ?

#10 Post by jpr »

It seems I will have to stay with Puppy-431 due to this older laptop.
Has anyone tried i8kutils-1.33.pet with Puppy-431?
Thanks.

noabody
Posts: 14
Joined: Mon 08 Jun 2009, 16:38

#11 Post by noabody »

I was able to build i8kutils on Slacko 5.5 using instructions on
http://slackbuilds.org/repository/14.0/system/i8kutils/

I extracted http://slackbuilds.org/slackbuilds/14.0 ... ils.tar.gz
into my-documents and then copied http://ftp.de.debian.org/debian/pool/ma ... .33.tar.gz into the folder my-documents/i8kutils.

Using SFS manager I installed DEVX 5.5 and then used BootManager to load it as an extra SFS at startup then rebooted. (could probably have used SFS-Load-on-the-fly without having to reboot)
Using Package Manager with the slackware-14.0 repository, under the heading "System," I installed pkgtools-14.0

In a terminal:
cd ~/my-documents/i8kutils
./i8kutils.SlackBuild

Which built i8kutils-1.33-i486-1_SBo.tgz

I opened that file in the File Manager which simply asked to install it as a Slackware package which I did.

I added a "new module" i8k using BootManager and altered the command line to read i8k force=1

Using a terminal I:
cd ~/Startup
ln -s /usr/bin/i8kmon i8kmon

That finishes out the building installation and automatic loading of the software. The last thing to do is edit /etc/i8kmon.conf for automatic fan control parameters and this is a snippet of what I used for my Dell Latitude C600:

# Run as daemon, override with --daemon option
set config(daemon) 1

# Automatic fan control, override with --auto option
set config(auto) 1

set config(0) {{- 0} -1 52 -1 52}
set config(1) {{- 1} 44 60 44 60}
set config(2) {{- 2} 60 80 60 80}
set config(3) {{- 2} 70 128 75 128}


The big thing with i8kmon.conf is that "daemon" and "auto" are set to "1". Also for fan control "set config(0)" notice that I have {- 0}. The left position is a dash and the right position a number. The dash indicates no left fan (as is the case for the C600), so only the right fan is being controlled.

I realize that it is generally considered inappropriate to resurrect any threads over a year old and simply ask that the administrator be kind. This is still a very important post IMHO and I believe the thread itself should not have a time limit.

Post Reply