# lm-sensors

## The_Fallen

Hi,

hat irgendwer von Euch schon lm-sensors unter Kernel 2.6 zum Laufen bekommen? Ich hab i2c schön in den Kernel kopiert (Epox 8k5a2+-Board mit VT8235 und Winbond 83697), aber ein Aufruf von sensors bringt nur ein "No sensors found!".

Irgendne Idee, was ich falsch mache oder vergessen habe?

thx,

fallen

----------

## ChL@Gentoo

Ich benutze GKrellM mit Kernel 2.6 ohne Probleme.

Man braucht zumindestens für GKrellM weder das lm-sensors noch das i2c Ebuild.

Ich habe im Kernel den I2C support aktiviert und die entsprechenden Treiber für Board und Sensoren als Module kompiliert.

Und lade die Module in /etc/modules.autoload.d/kernel-2.6:

(in meinem Fall: i2c-viapro, gl518sm)

Aber in der Hilfe zu den einzelnen Einträgen in der Kernel Config steht ja dabei, wie deine Module heißen, die du dann laden musst.

----------

## schmutzfinger

nach dem mergen von lm-sensors musst du ein script ausführen was glaube ich sensors-detect heisst. wenn dann deine sensors.conf fertig ist spuckt auch der befehl sensors was aus  :Wink: 

----------

## The_Fallen

Oh, sensors-detect waer ne Idee.  :Wink:  Gleich mal ausprobieren, thx...

----------

## hds

 *The_Fallen wrote:*   

> Ich hab i2c schön in den Kernel kopiert

 

falsch, als MODULE compilen!

----------

## The_Fallen

Danke, geht jetzt wunderbar, und mit ksensors sieht das richtig schnucke aus!  :Smile: 

----------

## Vecha

Bei mir ist's als Module compiliert aber wenn ich sensors-detect mach, dann macht der bei allen Scans nur Probing for .... (alle möglichen Sachen) .. Failed!

und dann .. :

Sorry, no chips were detected.

Either your sensors are not supported, or they are

connected to an I2C bus adapter that we do not support.

kann ich das mit dem lm-sensors jetzt völlig vergessen?

----------

## Prinzessin

Frage: zu welchem Zweck brauchst du denn sys-apps/lm-sensors ?

Also Temperaturen auslesen funktioniert mit dem 2.6.x'er Kernel auch

wenn man nur die passenden i2c Module baut (oder eben einkompiliert).

Zumindest ist das bei mir der Fall.

Zu finden ist dann alles unter /sys/bus/i2c/devices/...

Vielleicht hilft das ja ...!?

Schönen Tag noch miteinander  :Smile: 

----------

## Vecha

naja, grad um die CPU Temperatur feststellen zu können ..

hab alles nötige als Modul compliliert und sensors-detect ausgeführt, aber dann eben diese Fehler und mein /sys/bus/i2c/devices/ ist leer

----------

## boris64

sicher, dass du wirklich alle benötigten module gebaut hast?

welches board hast du (genau)?

ps: ich wäre auch nie im leben darauf gekommen, dass ich für mein

a7v8xx-board das "it87"-modul brauchen würde.

----------

## hds

leute,

ihr muesst die module bauen nachdem ihr den kernel compiled habt. sobald ihr wieder beim kernel ein "make modules_install" einwerft werden die module wieder entfernt, bzw. ueberschrieben.

wozu man lm_sensors "braucht"? nunja, man kann damit z.B. den rechner runterfahren, sobald der luefter nicht mehr hoch genug dreht, oder die cpu zu heiss wird. ferner lassen sich im zusammenhang mit SuperKaramba nette spielereien fuer den desktop bauen   :Very Happy: 

----------

## Stefan1801

ich habs mir einfach gemacht, alle i2c module gebaut, mit lm-sensors die richtigen erkennen lassen und installiert. weiss nich mehr genau, wie, aber hat geklappt.

----------

## hds

 *Stefan1801 wrote:*   

> ich habs mir einfach gemacht, alle i2c module gebaut, mit lm-sensors die richtigen erkennen lassen und installiert. weiss nich mehr genau, wie, aber hat geklappt.

 

a) i2c wird eh mitgebaut wenn du lm-sensors emergest.

b) lm-sensors erkennt ueberhaupt nix, sondern sensors-detect.

also:

erst kernel bauen, i2c einbinden als module(!)

dann erst emerge lm-sensors.

dann am besten booten

dann sensors-detect und schauen obs geht.

in der korrekten reihenfolge geht das wie von selbst.

----------

## Marlo

hi;

 *hds wrote:*   

> 
> 
> erst kernel bauen, i2c einbinden als module(!)
> 
> dann erst emerge lm-sensors.
> ...

 

Stimmt!   :Very Happy: 

Hab mich um dies Zeugs noch nie gekümmert, weil ich kein Elektroniker bin und eine 0815-Aldi-Winterschlußverkauf-ganz-billig-Box habe. Aber dennoch scheint hier was zu sein, was nach Sensoren ausssieht, oder?

```
w83627hf-isa-0290

Adapter: ISA adapter

VCore 1:   +0.00 V  (min =  +0.00 V, max =  +0.00 V)

VCore 2:   +0.00 V  (min =  +0.00 V, max =  +0.00 V)

+3.3V:     +0.00 V  (min =  +0.00 V, max =  +0.00 V)

+5V:       +0.00 V  (min =  +0.00 V, max =  +0.00 V)

+12V:      +0.00 V  (min =  +0.00 V, max =  +0.00 V)

-12V:     -14.91 V  (min = -14.91 V, max = -14.91 V)

-5V:       -7.71 V  (min =  -7.71 V, max =  -7.71 V)

V5SB:      +0.13 V  (min =  +0.13 V, max =  +0.13 V)

VBat:      +0.08 V  (min =  +0.08 V, max =  +0.08 V)

fan1:       -1 RPM  (min =   -1 RPM, div = 1)

fan2:       -1 RPM  (min =   -1 RPM, div = 1)

fan3:       -1 RPM  (min =   -1 RPM, div = 1)

temp1:        +0°C  (high =    +0°C, hyst =    +0°C)   sensor = thermistor

temp2:      +1.0°C  (high =    +1°C, hyst =    +1°C)   sensor = thermistor

temp3:      +2.0°C  (high =    +2°C, hyst =    +2°C)   sensor = thermistor

vid:      +0.000 V

alarms:

beep_enable:

          Sound alarm disabled

Philips PAL_BG -i2c-0-61

Adapter: bt879 #0 [sw]

```

Dumme Frage nach nem Tipp. Das Datenblatt von meinem Brett gibt nicht her und sind hier, wo schon mal Werte zu erkennen sind, tatsächlich Sensoren dahinter? Und wenn ja, wie kalibriert man diese?

Danke

Ma

----------

## hds

das sieht aber nicht gut aus.. ist "w83627hf-isa-0290" tatsaechlich der richtige adapter fuer dein board, und sind die module alle geladen? die "/etc/sensors.conf" musst du dann geringfuegig anpassen.. aber bei dir ist ja fast alles auf 0.

hier schaut das so aus:

```

bash-2.05b$ lsmod

[...]

eeprom                  3572   0 (unused)

i2c-isa                  724   0 (unused)

i2c-viapro              3400   0 (unused)

i2c-proc                6356   0 [via686a eeprom]

i2c-core               14468   0 [via686a eeprom i2c-isa i2c-viapro i2c-proc]

[...]

```

```

bash-2.05b$ sensors

eeprom-i2c-0-50

Adapter: SMBus Via Pro adapter at 5000

Memory type:            SDR SDRAM DIMM

Memory size (MB):       128

eeprom-i2c-0-51

Adapter: SMBus Via Pro adapter at 5000

Memory type:            SDR SDRAM DIMM

Memory size (MB):       128

eeprom-i2c-0-52

Adapter: SMBus Via Pro adapter at 5000

Memory type:            SDR SDRAM DIMM

Memory size (MB):       128

via686a-isa-6000

Adapter: ISA adapter

I/O:       +3.34 V  (min =  +3.12 V, max =  +3.45 V)

+5V:       +4.88 V  (min =  +4.73 V, max =  +5.20 V)

+12V:     +12.31 V  (min = +11.35 V, max = +12.49 V)

FAN:      4687 RPM  (min = 4017 RPM, div = 8)

fan2:        0 RPM  (min =    0 RPM, div = 8)

CPU:       +72.6°C  (high =   +86°C, hyst =   +80°C)

SYS:       +41.0°C  (high =  +146°C, hyst =   -71°C)

SBr:       +26.7°C  (high =  +146°C, hyst =  +146°C)

bash-2.05b$

```

PS: fuer kernel 2.6.x sind uebrigens noch nicht alle module konvertiert worden, also mal in zweifelsfalle mit kernel 2.4.x probieren.

----------

## schmutzfinger

 *Quote:*   

> Und wenn ja, wie kalibriert man diese? 

  also wie man jetzt rausbekommt ob tatsächlich ein sensor hinter ner anzeige steht weiss ich auch nicht, ich würde mal sagen wenn sich der wert ändert dann ist da auch ein sensor dahinter. kalibrieren kannst du in /etc/sensors.conf. das problem ist nur wie sollte man das eichen? also bei mir werden irgendwie insgesamt 5 temperaturen angezeigt und im endeffekt hab ich mir davon die beiden ausgesucht, die ich für realistisch gahlten habe. und mein BIOS gibt mir beim reboot nach volllast die selben werte aus. also die für CPU und NorthBridge.

----------

## hds

ja genau, mit dem bios vergleichen. bei mir war lediglich cpu und sys vertauscht, also temp1 und temp2 - der rest passte.

allerdings hat er fast ueberall "0" - da stimmt dann was nicht   :Very Happy: 

und fast -15 bei den -12 ist auch mystisch.. wenn dem so waere, waere das board schon platt.

----------

## hds

weiss noch jemand irgendwie, wie man einen event "triggered"? also, wie sende ich ein shutdown comando, sofern die CPU zu heiss wird? das gepiepse nutzt ja wenig, wenn ich nicht da bin   :Laughing: 

irgendwie hatte ich in erinnerung das ginge mit "sensors.conf", aber da lieg ich wohl flasch   :Shocked: 

----------

## Lasker

Endlich hab ich's auch! War ne schwere Geburt...

Für alle, die es auch mit der South Bridge von VIA VT82C686B (scheint relativ verbreitet)

zu tun haben, hier ein kleiner Tip, damit ihr nicht in die gleiche Falle tappt:

Auf der Homepage von lm_sensors

http://secure.netroedge.com/~lm78/

hab ich erfahren, dass die beiden Module via686a und i2c-viapro nicht

nebeneinander existieren können:

```
# via686a and i2c-viapro cannot both be loaded due to PCI resource conflicts. For most users,

use i2c-isa + via686a to access sensor data. If values don't make sense, unload both drivers and

try i2c-viapro + another chip driver (sensors-detect should tell you which).
```

Böse Falle, denn die beiden Module können sehr wohl gleichzeitig geladen werden (ohne sichtbare

Fehlermeldungen), nur funktioniert dann halt eben nichts! Eigentlich hatte ich schon alles richtig

gemacht, aber genau das hatte alles blockiert.

Die erste Variante (unload i2c-viapro) hat's dann auch sofort gebracht, ohne reboot. Aber nicht den

Fehler machen, nach 'rmmod i2c-viapro' sofort wieder 'sensors-detect' ausführen: Durch autoprobe

würde das Modul nämlich gleich wieder geladen werden!

Das Ganze hab ich übrigens hier gefunden:

http://secure.netroedge.com/~lm78/kernel26.html

----------

## Marlo

 *hds wrote:*   

> das sieht aber nicht gut aus.. .

 

jo, seh ich auch so, nachdem ich die FAQ und die Howto`s gelesen habe.

Aaaaber,

mein Teil rennt und geht auch nicht im Sommer bei 35 C in die Knie, sondern werkelt mit KDE und OO so vor sich hin und bricht nicht ab. Das ist schon mal gut. Dabei höre ich, wie sich zwischendurch ein Lüfter mal aufgreht und ordentlich pustet, um nach so ca. 30 Sek. ruhiger zu werden. Immerhin.

Heute war ich mal bei einem Hardwarefritzen und habe mir mal so den technischen Hintergrund mit Watt und Volt und Ampere erklären lassen. Herausgekommen bin ich mit so einem kleinen, unangenehmen und liquiditätsbelastenden  Hintergedanken:

Ich brauch ne neue Box!

 :Twisted Evil:   :Twisted Evil:   :Twisted Evil: 

Jetzt höre ich gerade Ton, Steine, Scherben:

Volt,Watt,Ampere, Ohm ohne mich da gibts kein Strom. Ich bin der Elektrolurch aus der Lüsterklemme, gleich rechts neben dem Hauptschalter.... lala la ...

 *schmutzfinger wrote:*   

> das problem ist nur wie sollte man das eichen? 

 

Bei mir auf Arbeit gibts manchmal Zeitschriften. In der PC Games Hardware 09/04 Seite 26 wird der Sen. Manager Tech. Development Center von Asus, Alex Perng, zitiert: " Wir schlagen bei der Temperaturmessung pauschal sieben Grad Celsius als Puffer auf, da die Diodenchips teils sehr ungenau arbeiten."

Gruß

Ma

----------

## awiesel

Wer sensors, gkrellm, procmeter, oder wie sie sonst noch so alle heissen, nicht benutzen will, der findet die Werte auch unter /sys (2.6.x) oder /proc (2.4.x). Der Pfad ist natürlich abhängig vom verwendeten Kernel und den benutzten Modulen. Bei mir z.B.

```
/sys/devices/platform/i2c-0/0-0290/temp2_input
```

für die CPU-Temperatur. Das lässt sich mit einem kleinen Shellscript leicht überwachen. Aber bitte nicht erwarten, dass das nach einem Kernelupdate noch genauso ist, seit 2.6.0 haben sich Namen und Ort schon mehrfach geändert  :Smile: 

----------

## hds

 *awiesel wrote:*   

> Das lässt sich mit einem kleinen Shellscript leicht überwachen.

 

hmm.. sicherlich mittels grep und sed, denke ich mal. aber finde ich nicht so optimal.. dazu muesste das script ja via cron staendig gestartet werden - oder   :Shocked: 

ich habe mittlerweile in sensors.conf den befehl "temp_os" gefunden, welcher einen dieser lm chips anspricht. das scheint mir weitaus eleganter?

//nachtrag:

also das mit dem temp_os geht bei mir garnicht   :Shocked: 

ksensors ist ja ganz nett, aber auf dem server habe ich logischerweise keine GUI, und da haette ich gerne sowas irgendwie als daemon laufen.

----------

## Lasker

 *hds wrote:*   

> weiss noch jemand irgendwie, wie man einen event "triggered"? 

 

Auf die Schnelle konnte ich nur das hier finden:

https://forums.gentoo.org/viewtopic.php?t=79270&highlight=lmsensors

Das script ganz unten sieht ganz interessant aus. Scheint den Rechner ab einer kritischen Temperatur

in den Sleep Modus zu versetzen. Hört sich doch schon mal besser an als ein brutales shutdown...

----------

## hds

 *Lasker wrote:*   

> 
> 
> https://forums.gentoo.org/viewtopic.php?t=79270&highlight=lmsensors
> 
> Das script ganz unten sieht ganz interessant aus. Scheint den Rechner ab einer kritischen Temperatur
> ...

 

hey, danke! das ist ja ausbaufaehig. aber wie gesagt leider auch ein script.. wie soll man sowas sinnvoll laufen lassen? alle 10 sekunden starten? die idee finde ich nicht wirklich prickelnd..

zum thema shutdown: das ist hier kein laptop. das sind a) ein alter K62-500 und b= ein 1200er TB. AFAIk haben die keinen sleepmode.

ferner besteht ja die moeglichkeit, das der luefter versagt (dies ist der hauptgrund sterbender prozessoren). somit wuerde ich bei 10Grad ueber normal die rechner lieber herunterfahren.

OK, das script liesse sich natuerlich dahingehend abaendern.. aber mir gefaellt das mit dem cronjob nicht.

//nachtrag:

ich sehe gerade, der laesst das in einer schleife mit "for i.." laufen, aber das kann dochauch nicht die loesung sein   :Shocked: 

da ja sensors bereits als daemon laeuft, und die funktion "tmp_os" bereits besitzt.

ich bekomme nichtmals diesen beep_enable zum laufen ;(

----------

## Lasker

 *hds wrote:*   

> weiss noch jemand irgendwie, wie man einen event "triggered"? also, wie sende ich ein shutdown comando, sofern die CPU zu heiss wird? das gepiepse nutzt ja wenig, wenn ich nicht da bin  
> 
> irgendwie hatte ich in erinnerung das ginge mit "sensors.conf", aber da lieg ich wohl flasch  

 

Die Lösung ist (wieder mal) erschreckend einfach: Gkrellm2 kann das schon! Die einzige

Vorraussetzung: Entweder gkrellm2 als root Prozess laufen lassen, oder aber shutdown für den

User freigeben. Jetzt brauchst du nur noch deine Sensors -> Alerts zu konfigurieren:

Alarm command: shutdown -h now

Voila! So einfach wie Kaffe kochen...  :Wink: 

----------

## Lasker

Etwas kniffliger dagegen dürfte es werden (wenn es überhaupt damit geht), mit dieser Methode Taktfrequenz

oder Lüfterumdrehung anzusteuern. Das grösste Problem sehe ich im Moment darin, wie diese Änderungen wieder

rückgängig zu machen sind, falls die Temperaturen entsprechend gefallen sind. Das müsste ja in Abhängigkeit

von der aktuellen CPU- Frequenz bzw. Lüfterdrehzahl geschehen, und nicht nur von der Temperatur...

----------

## hds

also auch noch gkrellm installieren kanns doch auch nicht sein, dann schon eher die loesung mit dem "for i loop".

das mussanders gehen. die option "temp_os" ist doch beinhaltet in sensors.conf:

```

# "os" is the threshold for the overtemperature shutdown output.

```

auch sind alle werte ueber /proc abrufbar. hmm..

----------

## Lasker

 *hds wrote:*   

> also auch noch gkrellm installieren kanns doch auch nicht sein, dann schon eher die loesung mit dem "for i loop".

 

Ach so, ich war davon ausgegangen, du würdest gkrellm eh schon benutzen. Bedenke aber, dass

gkrellm, im Gegensatz zum script, immerhin konfigurierbare Zeitintervalle für jede Messung zulässt.

Lass es mich wissen, sobald du was Besseres findest...

----------

## hds

laeuft das denn ohne X? also, ich will das ja auf dem server laufen lassen.

das mit deinem problem (wieder hochtakten) ist nicht das problem, da du ja in die /proc datei wieder von T1 auf T0 setzen kannst. ich meine hier:

/proc/acpi/processor/CPU0/throttling

(kernel 2.4.x, mag bei 2.6.x woanders liegen, aber findest du sicher)

```

state count:             2

active state:            T0

states:

   *T0:                  00%

    T1:                  50%

```

----------

## Lasker

Schon klar. Das ist aber auch nicht das Problem: Wenn du den Vorgang einfach nur an die

Temperatur koppelst, würde z.B. ständig das throttling auf 50% gestellt werden, ohne Rücksicht

darauf, ob es nicht vielleicht schon längst auf 50% steht. Ok, mit einem script ließe sich das vermutlich

auslesen und verarbeiten, mit gkrellm sehe ich da aber auf Anhieb keine (einfache) Möglichkeit...

Ach so, deine Frage zu gkrellm. Ich bin selber neu damit, aber ich glaube kaum, das es ohne X läuft.

----------

## hds

naja, ich geh jetzt eh erstmal in die bubu <g>. ich denke mal, ich probiere das erstmal mit dem script aus dem hier genannten thread. nur so, damit es erstmal laeuft, dann mal weitersehen. vielleicht mach ich dazu mal einen neuen thread auf, denn fuer dieses problem bietet auch die suche keine loesung. alles mit ksensors, gkrellm, usw.. aber nix fuer serverbetrieb ohne X.

immer diese mausschubser <g>

----------

## Louisdor

Hi, sorry, dass ich diesen Thread wieder hervorkrame.

Neulich hatte ich erst noch torsmo in Verdacht, die Temperatur falsch anzuzeigen.

Da habe ich jetzt beim Suchen hier im Forum diesen Thread gefunden.

Ich hab aber auch gerade das Temperatur-messen-Problem. *hds wrote:*   

> 
> 
> ```
> CPU:       +72.6°C  (high =   +86°C, hyst =   +80°C)
> 
> ...

 (Habe beim Quoten etwas gekürzt)

Ich habe mir lm_sensors neulich installiert und musste feststellen, dass die CPU Temperatur bei angeblich 70°C liegen soll!?

Mein BIOS zeigt mir da was von 37°C an, wenn ich mal den Rechner reboote und im BIOS schaue.

Eine Verwechslung mit Fahrenheit kann es, rechnerisch gesehen, auch nicht wirklich sein.

Meine Win2000-Kiste rechts neben dem Schreibtisch zeigt fast immer was zwischen 35°C - 38°C an. Fast die gleiche Ausstattung.

Gentoo PIV 2.4Ghz = ca. 70°C

Win2k PIV 2.0Ghz = ca. 37°C

Beide stehen am kalten Fenster, keine Heizung inne Nähe ...

```
root@gentoo: / # sensors

w83627hf-isa-0290

Adapter: ISA adapter

VCore 1:   +1.49 V  (min =  +0.00 V, max =  +0.00 V)              

VCore 2:   +1.58 V  (min =  +0.00 V, max =  +0.00 V)              

+3.3V:     +3.17 V  (min =  +3.14 V, max =  +3.47 V)              

+5V:       +4.97 V  (min =  +4.76 V, max =  +5.24 V)              

+12V:     +11.80 V  (min = +10.82 V, max = +13.19 V)              

-12V:     -12.20 V  (min = -13.18 V, max = -10.80 V)              

-5V:       -5.25 V  (min =  -5.25 V, max =  -4.75 V)              

V5SB:      +5.56 V  (min =  +4.76 V, max =  +5.24 V)              

VBat:      +3.14 V  (min =  +2.40 V, max =  +3.60 V)              

fan1:     2667 RPM  (min = 84375 RPM, div = 2)                     

fan2:        0 RPM  (min = 8035 RPM, div = 2)                     

fan3:        0 RPM  (min =  860 RPM, div = 8)                     

temp1:       +37°C  (high =   -54°C, hyst =   +17°C)   sensor = thermistor           

temp2:     +70.5°C  (high =  +120°C, hyst =  +115°C)   sensor = thermistor           

temp3:     +40.5°C  (high =  +120°C, hyst =  +115°C)   sensor = thermistor           

ERROR: Can't get VID data!

alarms:   

beep_enable:

          Sound alarm disabled

eeprom-i2c-0-50

Adapter: SMBus I801 adapter at 0500

Memory type:            DDR SDRAM DIMM

Memory size (MB):       512

root@gentoo: / #
```

Merci & Ciao,

aleX!

----------

