logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

i8kmon - temperature monitor

Authors

       Vitor Augusto <vitorafsr@gmail.com>
       Massimo Dal Zotto <dz@debian.org>

Configuration

       As  said  before,  i8kmon  has  builtin default values of temperature thresholds. If users need, they can
       specify their own settings in configuration files /etc/i8kmon.conf and ~/.i8kmon. It is also possible  to
       specify values to others variables that change i8kmon behavior.

       The variables and values are as follows.

       setconfig(i8kfan)  /usr/bin/i8kfan
              i8kfan executable path

       setconfig(acpi)    "acpi"
              Filename  of  the  apci  executable.  i8kmon  uses acpi to query whether notebook is on-line or on
              battery.

       setconfig(use_conf)    1
              Set whether user configuration file must be read or not when user starting i8kmon. Default is 1.

       setconfig(verbose) 0
              Print verbose logs

       setconfig(timeout) 2
              Timeout. Default is 2.

       setconfig(t_high)  80
              Maximum high temperature. Default is 80.

       The following variables set fans speeds. If these variables are set at config file, i8kmon will not probe
       for them. The probe moment turns on fans at max speed.

       setstatus(leftspeed)   "0 1000 2000 3000"
              Speed values (rpm) of left fan at velocities 0, 1, 2, 3

       setstatus(rightspeed)   "0 1000 2000 3000"
              Speed values (rpm) of right fan at velocities 0, 1, 2, 3

       The daemon defines 4 states (0, 1, 2, 3) with different combinations of fan speeds ({0 0}, {1 0}, {1  1},
       {2  2})  and  for  each  state  is defined the temperature thresholds which cause the fans to switch to a
       higher or lower state. Each state can have different thresholds for operation on ac power or on  battery.
       For example the following configuration:

              set config(0) {{0 0}  -1  60  -1  65}
              set config(1) {{1 0}  50  70  55  75}
              set config(2) {{1 1}  60  80  65  85}
              set config(3) {{2 2}  70 128  75 128}

       defines  state  0  with  both fans off, high threshold of 60 degrees (65 on battery) and low threshold -1
       degrees, which is actually never reached since 0 is the lowest temperature.  When  the  high  temperature
       threshold  is reached the program switches to state 1 (left low, right off) which has a high threshold of
       70 degrees and a low threshold of 50 degrees. If on ac power the temperature drops below 50  the  program
       will switch back to state 0, if it rises above 70 it will enter state 2, and so on.  For better operation
       the  temperature  ranges  should  be  overlapping  with  an hysteresis of at least 10 degrees, i.e. 1={50
       70},2={60 80} is better than 1={50 70},2={70 80}. It must be remembered that the low threshold of state 0
       must be -1 degrees and the high threshold of state 3 must be 128 degrees.

       If the laptop has only one fan, it is better to specify a '-' instead of the fan  speed  of  the  missing
       fan. For example:

              set config(2) {{1 -}  60  80  65  85}

Description

       The i8kmon is a daemon that monitors the cpu temperature, and control the fan speed on some Dell laptops.
       It  does that by means of regularly reading the system temperature, and choosing appropriate speed of the
       fans.

       The change in the speed depends on a table of threshold. Inside i8kmon the default table of thresholds is
       as below

           set config(0) {{0 0}  -1  60  -1  65}
           set config(1) {{1 0}  50  70  55  75}
           set config(2) {{1 1}  60  80  65  85}
           set config(3) {{2 2}  70 128  75 128}

       This table can be customized at '/etc/i8kmon.conf', which will be read everytime i8kmon service starts.

       On Debian and derivated OSes, i8kmon starts in the background by default as a service.

Files

/proc/i8k/etc/i8kmon.conf/$HOME/.i8kmon

Name

       i8kmon - temperature monitor

Options

       i8kmon accepts the following command-line options when initiated by the user, not as a service:

       -nc, --nouserconfig
              Doesn't read ~/.i8kmon configfile, only /etc/i8kmon.conf.

       -v, --verbose
              Report hardware status and program actions on stdout.

       -t, --timeout <seconds>
              Specifies the interval at which the daemon checks the hardware status. Useful values  are  in  the
              range of 1-5 seconds. Default is 2 seconds.

See Also

i8kctl(1)

Vitor Augusto                                      04 Mar 2017                                         i8kmon(1)

Synopsis

       i8kmon [<options>]

See Also