# lm_sensors module

## dmce

Hi folks

Im trying to get lm_sensors setup so i can watch the temps on my mini-itx box.

I have it installed and ran sensors-detect, which picked up a sensor chip driver (F71805F)

I creates the config and includes

```
modeprobe f71805f
```

But this doesnt work and manually typing the above claims the module as not found, although the wiki for lm_sensors seems to indicate it was included with that. can anyone help?

----------

## didymos

You sure the module was installed to /lib/modules/<your_kernel_version> ?

----------

## dmce

I would have to say no there as i can see no record of it there

The reference to it are here:

/usr/share/doc/lm_sensors-2.10.1/chips/f71805f.bz2

/usr/src/linux-2.6.20-gentoo-r8/drivers/hwmon/f71805f.c

/usr/src/linux-2.6.20-gentoo-r8/Documentation/hwmon/f71805f

----------

## didymos

If 2.6.20-r8 is the same as the running kernel, and all you did was build the monitoring modules, then just do "make modules_install" in /usr/src/linux and modprobe it again.  Should work.

----------

## dmce

Ok, i did the make modules_install and it did ask me about f71805f which i replied yes too. after it finished i tried modprobe again and claims it cant b found

----------

## didymos

Try this then: 

```

make modules && make modules_install

```

----------

## dmce

Still not working. Still claiming the module doesnt exist (isnt installed).

----------

## didymos

What kernel are you currently running? 

```

uname -a

```

----------

## dmce

Kernel is 2.6.20-gentoo-r8

----------

## didymos

If you do:

```

ls /lib/modules/2.6.20-gentoo-r8/kernel/drivers/hwmon/

```

the module should be there.  If it is, then do:

```

update-modules -v -f && modeprobe f71805f

```

If it's not there, then I don't know what the hell is going on, other than "something weird".

----------

## dmce

/lib/modules/2.6.20-gentoo-r8/kernel/drivers/hwmon/

doesnt exist?! basically hwmon isnt in /lib/modules/2.6.20-gentoo-r8/kernel/drivers/

There is a reference to it:

/usr/src/linux-2.6.20-gentoo-r8/drivers/hwmon/f71805f.o

/usr/src/linux-2.6.20-gentoo-r8/drivers/hwmon/f71805f.c

----------

## didymos

For some reason it's not even building the actual f71805f.ko module.  Could be something in the config process got screwed up.  You could try doing a "make mrproper" in /usr/src/linux, then reconfigure and rebuild from scratch. If f71805f.ko is built, your set.  Just install the new kernel and modules.

----------

## dmce

Thanks for all the help so far. It has been appreciated.

Building a kernel is a little beyond my reading time just now so it will need to wait and i will try again in the future. Glad i finanly got gentoo up and running though  :Smile: 

----------

## harpette

 *dmce wrote:*   

> /lib/modules/2.6.20-gentoo-r8/kernel/drivers/hwmon/
> 
> doesnt exist?! basically hwmon isnt in /lib/modules/2.6.20-gentoo-r8/kernel/drivers/

 

You need to set CONFIG_SENSORS_F71805F=m in your kernel config (/usr/src/linux/.config)

The way to do that:

Read http://www.gentoo.org/doc/en/kernel-upgrade.xml

then, as root:

```
cd /usr/src/linux

make menuconfig
```

Follow "Device Drivers  --->" down the list

Follow Hardware Monitoring support  --->

Put an "m" at "Fintek F71805F/FG and F71872F/FG", like such:

```
<M> Fintek F71805F/FG and F71872F/FG
```

(while you're there, have a look at the help screen for that entry)

Also, do that which is instructed at http://www.lm-sensors.org/wiki/Kernel2.6#RecommendedKernelConfiguration

Exit, exit, exit, save

```
make && make modules_install
```

Now you'll have a f71805 module under /lib/modules/2.6.20-gentoo-r8/, which you can load/unload with /sbin/modprobe

Do a 

```
tail /var/log/messages
```

 for the hell of it, to see if you got reprimended/insulted; then, do a 

```
/sbin/lsmod | grep f71805
```

If "/etc/init.d/lm_sensors start" doesn't load your module, add its name to /etc/modules.autoload.d/kernel-2.6

Add "lm_sensors" to "default" with /sbin/rc-update anyway.

Good luck, i hope i'm not misleading you too badly.

(t'was my 1st posting, yay! Now i'm off to having a beer)

----------

## microtechno

Hi

thanks for the post harpette it was very usefull and now I have lm_sensors emerged and possibly running.

----------

## harpette

 *microtechno wrote:*   

> Hi
> 
> thanks for the post harpette it was very useful

 

You're quite welcome.

Actually, in my previous post, i should've advised you to see /etc/conf.d/lm_sensors if "/etc/init.d/lm_sensors start" failed to load your module, instead of adding "f71805" to /etc/modules.autoload.d/kernel-2.6

That's the proper way.

Oh and i could've also mentioned:

man modprobe (shortcut: "modprobe -r <module-name>" to unload it)

man lsmod

man rc-update

man tail

etc.

 *microtechno wrote:*   

> and now I have lm_sensors emerged and possibly running.

 

Re: "possibly running", you should now be able to see your fan speed and CPU temperature and other such sensors info, in the applet that you chose on your desktop

----------

## microtechno

I don't mean to Hijack this thread.

I don't have the f71805 module, sensors-detect collects nothing from my laptop.

In the kernel I am unsure of what to add as a module (nothing is the same as my chips).

----------

## didymos

OK, so what is the hardware in the laptop?

----------

## Cyker

In order for sensors-detect to work as it was designed to, you need to compile ALL the lm_sensors drivers (as modules for preference!)

i.e.  just set everything in Hardware Monitoring Support to =m (Except for "Hardware Monitoring Chip debugging messages")

then make modules && make modules_install and run sensors-detect again and it'll try all the drivers and say which ones worked  :Smile: 

NB: In case you're worried about adding every lm_sensors module, be assured that there are no major issues - They do not take up much disk space, and will be only be loaded if sensors-detect finds the corresponding sensor (and subsequently adds the module to its load list).

I always do this in the vain hope the kernel will one day figure out what the last remaining sensor on my A8N32 is...  :Mr. Green: 

----------

## microtechno

Hi

Thanks for that (trying it now)

----------

## microtechno

Hi

I have done what you suggested Cyker but it didn't work here is my hardware

```
GenLap ~ # lspci

00:00.0 Host bridge: Intel Corporation 82845 845 (Brookdale) Chipset Host Bridge (rev 04)

00:01.0 PCI bridge: Intel Corporation 82845 845 (Brookdale) Chipset AGP Bridge (rev 04)

00:1d.0 USB Controller: Intel Corporation 82801CA/CAM USB (Hub #1) (rev 02)

00:1d.2 USB Controller: Intel Corporation 82801CA/CAM USB (Hub #3) (rev 02)

00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 42)

00:1f.0 ISA bridge: Intel Corporation 82801CAM ISA Bridge (LPC) (rev 02)

00:1f.1 IDE interface: Intel Corporation 82801CAM IDE U100 (rev 02)

00:1f.5 Multimedia audio controller: Intel Corporation 82801CA/CAM AC'97 Audio Controller (rev 02)

00:1f.6 Modem: Intel Corporation 82801CA/CAM AC'97 Modem Controller (rev 02)

01:00.0 VGA compatible controller: nVidia Corporation NV11 [GeForce2 Go] (rev b2)

02:00.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 78)

02:01.0 CardBus bridge: Texas Instruments PCI4451 PC card Cardbus Controller

02:01.1 CardBus bridge: Texas Instruments PCI4451 PC card Cardbus Controller

02:01.2 FireWire (IEEE 1394): Texas Instruments PCI4451 IEEE-1394 Controller

02:03.0 Network controller: RaLink RT2500 802.11g Cardbus/mini-PCI (rev 01)

07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10)

```

thought that i might include this also.

```
GenLap ~ # sensors-detect 

# sensors-detect revision 4348 (2007-03-18 02:45:21 -0700)

This program will help you determine which kernel modules you need

to load to use lm_sensors most effectively. It is generally safe

and recommended to accept the default answers to all questions,

unless you know what you're doing.

We can start with probing for (PCI) I2C or SMBus adapters.

Do you want to probe now? (YES/no): yes

Probing for PCI bus adapters...

Sorry, no known PCI bus adapters found.

We will now try to load each adapter module in turn.

If you have undetectable or unsupported adapters, you can have them

scanned by manually loading the modules before running this script.

We are now going to do the I2C/SMBus adapter probings. Some chips may

be double detected; we choose the one with the highest confidence

value in that case.

If you found that the adapter hung after probing a certain address,

you can specify that address to remain unprobed.

Some chips are also accessible through the ISA I/O ports. We have to

write to arbitrary I/O ports to probe them. This is usually safe though.

Yes, you do have ISA I/O ports even if you do not have any ISA slots!

Do you want to scan the ISA I/O ports? (YES/no): yes

Probing for `National Semiconductor LM78' at 0x290...       No

Probing for `National Semiconductor LM78-J' at 0x290...     No

Probing for `National Semiconductor LM79' at 0x290...       No

Probing for `Winbond W83781D' at 0x290...                   No

Probing for `Winbond W83782D' at 0x290...                   No

Probing for `Silicon Integrated Systems SIS5595'...         No

Probing for `VIA VT82C686 Integrated Sensors'...            No

Probing for `VIA VT8231 Integrated Sensors'...              No

Probing for `IPMI BMC KCS' at 0xca0...                      No

Probing for `IPMI BMC SMIC' at 0xca8...                     No

Some Super I/O chips may also contain sensors. We have to write to

standard I/O ports to probe them. This is usually safe.

Do you want to scan for Super I/O sensors? (YES/no): yes

Probing for Super-I/O at 0x2e/0x2f

Trying family `ITE'...                                      Yes

Found unknown chip with ID 0x0e01

Trying family `National Semiconductor'...                   No

Trying family `SMSC'...                                     Yes

Found unknown chip with ID 0x0e01

Trying family `VIA/Winbond/Fintek'...                       No

Probing for Super-I/O at 0x4e/0x4f

Trying family `ITE'...                                      No

Trying family `National Semiconductor'...                   No

Trying family `SMSC'...                                     No

Trying family `VIA/Winbond/Fintek'...                       No

Some CPUs or memory controllers may also contain embedded sensors.

Do you want to scan for them? (YES/no): yes

AMD K8 thermal sensors...                                   No

Intel Core family thermal sensor...                         No

Intel AMB FB-DIMM thermal sensor...                         No

Sorry, no sensors were detected.

Either your sensors are not supported, or they are connected to an

I2C or SMBus adapter that is not supported. See doc/FAQ,

doc/lm_sensors-FAQ.html or http://www.lm-sensors.org/wiki/FAQ

(FAQ #4.24.3) for further information.

If you find out what chips are on your board, check

http://www.lm-sensors.org/wiki/Devices for driver status.

```

My laptop is a Dell Inspiron 8200 dont know if that helps. I modprobed these modules but nothing helped. From the lm-sensors web site

Intel 	 82810, 82810E, 82815, 82845G 	 yes 	 i2c-i810 	 2.5.0 	 2.6.0

Intel 	 82801AA, 82801BA, 82801CA/CAM (ICH3), 82801DB (ICH4), 82801EB (ICH5) 	 yes 	 i2c-i801 	 2.4.3 	 2.5.65

thanks

----------

## Cyker

Hmm... What stuff do you have enabled in the "I2C support (I2C)" section of the kernel config?

Just making sure that we have the I2C bus drivers installed - For instance, my A8N32 needs the i2c_isa and i2c_nforce2 modules (Which are in "I2C Hardware Bus support") running in order to talk to the it87, eeprom and k8temp modules.

There is also a possibility that your lappy has sensors that lm_sensors doesn't (currently) support 'tho... it may be worth test emerge'ing an ~x86 (i.e. marked unstable-but-usually-just-means-not-tested) lm_sensors (or installing the latest sources from the lm_sensors website, 'tho in Gentoo I don't recommend this because it can lead to Scary Weirdness  :Shocked: ) to see if they work any better.

----------

## microtechno

thanks for the reply

I have all the bits in I2C as modules and also all in the hardware support.

My laptop is from 2001 so it should be supported being older right ... ?

It wouldn't make sense needing an unstable arch because it is from 2001, unless they are 6 years behind. Which I am not sure they would be   :Very Happy: 

I shall keep going see what I can find in the kernel and or the net.

----------

