9

I have an overheating problem with my Dell Inspiron 15R and installed i8kmon to control the fan speeds on Ubuntu 14.04.

Here is a copy of the 'lm-sensors' output:

coretemp-isa-0000
Adapter: ISA adapter
Physical id 0:  +62.0°C  (high = +87.0°C, crit = +105.0°C)
Core 0:         +57.0°C  (high = +87.0°C, crit = +105.0°C)
Core 1:         +61.0°C  (high = +87.0°C, crit = +105.0°C)

i8k-virtual-0
Adapter: Virtual device
Right Fan:      0 RPM
CPU:          +62.0°C 

Even when setting the temperature thresholds in /etc/i8kmon to:

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) 1

# Temperature thresholds: {fan_speeds low_ac high_ac low_batt high_batt}
set config(0)   {{0 -}  -1  55  -1  55}
set config(1)   {{1 -}  55  70  55  70}
set config(2)   {{2 -}  60  128  60  128}

The fan does not start when it should. Any ideas of what might be wrong ? Here is a copy of the log when running i8kmon manually with the --verbose option:

i8kmon v1.30 11/16/2013 - Copyright (C) 2013 Vitor Augusto <[email protected]>
config(0)          = {0 0} -1 60 -1 65
config(1)          = {1 0} 50 70 55 75
config(2)          = {1 1} 60 80 65 85
config(3)          = {2 2} 70 128 75 128
config(acpi)       = acpi
config(auto)       = 1
config(daemon)     = 1
config(geometry)   = 
config(i8kfan)     = /usr/bin/i8kfan
config(min_speed)  = 2000
config(sysconfig)  = /etc/i8kmon.conf
config(t_high)     = 80
config(timeout)    = 5
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 0 0 0
status(rspeed)     = 0
status(rstate)     = 2
status(rstuck)     = 0
status(state)      = 0
status(t_high)     = 0
status(t_low)      = 0
status(temp)       = 0
status(timer)      = 
status(ui)         = 0
1410467738 acpi: Battery 0: Discharging, 89%, 03:13:17 remaining
temp, left, right, ac state: 60 -1 2 0
# exec /usr/bin/i8kfan 0 0
temp, left, right, ac state: 59 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 58 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 58 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 60 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 58 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 59 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 58 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 58 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 60 -1 0 0

It seems that the temperatures are wrong and i8kmon is not turning on the fan.

Nicolas
  • 159
  • 1
  • 1
  • 10

1 Answers1

8

According to lm-sensors:

i8k-virtual-0
Adapter: Virtual device
Right Fan:      0 RPM

You have a only Right Fan, thus left fan values should always be -1. You have to change your set config, in the file /etc/i8kmon.conf, to the following values:

set config(0)   {{-1 0}  -1  40  -1  40}
set config(1)   {{-1 1}  40  60  40  60}
set config(2)   {{-1 2}  60  128  60  128}
set config(3)   {{-1 2}  60  128  60  128}

in the state {-1 0}, there is no left-fan and the right-fan is off, in state {-1 1}, the right-fan should run at low speed while in the state {-1 2} it should run at full speed. The other values, e.g. 40 60 40 60, correspond to the temperature thresholds ---min and max--- of each state, with and without AC-power.

You also need to add the following options:

# 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

Finally, you need to create the file i8k.conf in /etc/modprobe.d/ containing the line options i8k force=1.

See more details man i8kmon

Nicolas
  • 159
  • 1
  • 1
  • 10
αғsнιη
  • 35,660
  • I made the changes and its still the same... Maybe the problem comes from the detection of the fans ? Is there a way to actually force the fan to be on ? – Nicolas Sep 23 '14 at 16:38
  • @Nicolas run lm-sensors when your fan is running and check the result of Right Fan: 0 RPM if you see any changes? and one extra question, does you fan running when cpu is higher? – αғsнιη Sep 23 '14 at 17:07
  • the fan is actually running at low speed tight now... Right Fan: 78000 RPM but temperature seems quite high. CPU: +69.0°C. It actually does start running when CPU activity is higher. – Nicolas Sep 23 '14 at 19:41
  • The behavior is really unstable... Sometimes the fan starts running at full speed even when doing nothing and the temperatures are low. And other times, it just doesn't start and temperatures grow. Is this a common issue when using i8kmon ? – Nicolas Sep 25 '14 at 00:06
  • 1
    @Nicolas rename i8kmon to i8kmon.conf and set set config(daemon) 1 to set config(daemon) 0 and set config(timeout) 1 to set config(timeout) 20 and also replace - with -1 value in each state ex{- 1} to {-1 1} ans so on. and finally run i8kmon in terminal you will see if works or not. you can see http://askubuntu.com/a/308548/283843 or http://ubuntuforums.org/archive/index.php/t-842775.html for more details – αғsнιη Sep 25 '14 at 05:23
  • I did as you suggested. Now when I run i8kmon there's a little box containing temperature and state that pops up. Even if the detected state is 1 (which appears in red) and the fan is supposed to be on at low speed, it doesn't start. – Nicolas Sep 25 '14 at 13:45
  • @Nicolas state 0 is off state 1 fan is low speed and state 2 fan is high speed. – αғsнιη Sep 25 '14 at 13:47
  • Exactly, so at state 1 the fan should be on... I rebooted and seems to be working ! :) – Nicolas Sep 25 '14 at 13:59
  • Too bad I cannot give you the bounty anymore... – Nicolas Sep 26 '14 at 14:36
  • 1
    Thank you @KasiyA ! The fan is running smoothly at 78000 RPM :) – Nicolas Sep 26 '14 at 14:41
  • @Nicolas 78,000 RPM is quite a bit. – E.T. Jun 18 '18 at 20:39