NHC ACPI Skript für Thinkpads

Carl

New member
Themenstarter
Registriert
17 Dez. 2006
Beiträge
156
Hallo,

UPDATE

Ab jetzt Beschreibung für v0.9
seit ca. 2 Monaten habe ich ein ACPI Skript für mein T43p für NHC geschrieben. Die Lüftersteuerung funktioniert. Also wer eine Alternative für die tpfanctrl sucht, der wird fündig. Es wird auch nur auf den Modellen funktionieren wo tpfanctrl funktioniert.

Ein paar Bemerkungen:

Es gilt wie immer: Für Schäden wird keine Verantwortung übernommen :D

Vorteile von tpfanctrl:
- schon lange im Einsatz, also getestet (so gesehen ist jetzt das Skript auch schon 6 Monate stabil im Einsatz...)
- Never Change a running System

Vorteile von NHC
- nur ein Programm gestartet
- keine Eintragungen wegen Konfilkten in das Systemprotokoll (da gibts zwar einen Ausweg, jedoch finde ich den persönliche nicht zu elegant)
- Zusätzliche Helligkeitssteuerung möglich
- Der Code ist um einiges leichter anzupassen als von tpfanctrl (c# hatte ich davor nie Programmiert, wer Java kennt wird keine Probleme haben)
- Wenn es die nächste NHC Version gibt werde ich mich an ein Gegenskript für die pulsierenden Lüfter setzten, außerdem werde ich versuchen die extended Fan Control für die x40 x30er Serie implementieren, jedoch funktioniert das Momentan wegen Einschränkungen noch nicht.
- individuel Regelbare Temperatursensoren (mehr dazu unten)


HowTo get startet:
NHC in der neusten Version installieren.
Die angehängte Datei runterladen und nach ACPI im NHC verzeichnis entpacken.
Die ibm.xml Datei anpassen: siehe hier
ACHTUNG Neuere Modelle müssen u.U. die ibm.xml in LENOVO.xml umbenennen.
EDIT:In der LENOVO.xml datei muss das erste und letzte ibm noch durch Lenovo ersetzt werden. Danke an Acesulfam für den Hinweis.
Danach NHC starten und ACPI anschalten.

Kurze Anleitung:
Modified Temperature
Hier steht die Temperatur die nach Offset und deaktivierten Sensoren zum Berechnen der Lüftersteuerung verwendet wird.

Maximal Temperature
Hier steht die Temperatur vor Offset und deaktivierten Sensoren zur Berechnung der Notbremse

Anmerkung: Die erste sollte bei allen ab jetzt immer in der Taskleiste zu sehen sein (wenn ihr NHC einstellt die CPU-Temperatur zu zeigen)
Die zweite sollte bei Leuten mit Doppel-Kern zu sehen sein. Habe hier keinerlei Feedback ob es funktioniert.

Notebook Fan Control
Mode kann zwischen Manuell (1), d.h. der Lüfter wird auf das Level welches unter Manuel Level eingetragen ist gesetzt
NHC (2), der Lüfter wird entsprechend den ausgelesenen Temperaturen gesetzt und
ACPI (3), der Lüfter wird vom Bios Controlliert


Fan Settings
Es gibt nur 5 Verschiedene Fan Level, diese können hier gesetzt werden. Ausserdem können die Grenzen wann der Level geändert wird hier angepasst werden, die Werte erklären sich von selbst.
Achtung Bei 75° greift eine Notbremse, sobald irgentein Sensor diesen Wert überschreitet (egal welcher Modus aktiviert ist und welche Offset Werte gesetzt sind, selbst deaktiverte Werte werden u.U. ignoriert, siehe unten unter Fortgeschritten) wird der Lüfter an das Bios zurückgegeben! Ausserdem piepst es dann dreimal und die Standbyleuchte blinkt...

Temperature Sensors
Offset Werte: Wozu diese sind:
Möchte man dass die CPU, den Lüfter bei 45° anschmeisst auf Low Level, die GPU dies jedoch erst ab 48° tut (also 3° bei allen Leveln später) so ist die Fan-Treshhold von Off->Low auf 45 zu setzten, der CPU Offset auf 0, der GPU offset auf 3!
Die Namen der Temperatur Sensoren sind selbstverständlich nur auf einem t43p richtig! So wie in tpfanctrl

Hardware Class
Kleine Spielerei: Thinklight und Bluetooth an und ausschalten

LCD Brightness Control
das aktuelle Helligkeitslevel setzten



Für Fortgeschrittene
Die wichtigsten Einstellungen können auf den ersten paar Seiten der cs Datei vorgenommen werden.
Bei einigen Modellen funktioniert die Displayhelligkeitsregelung nicht, deshalb am besten deaktieren: Dazu in der ibm.cs die Zeile
#define brightness in
#undef brightness ändern (wirklich undef, nicht undefine).
Bluetooth ist ebenfalls so komplett zu deaktivieren.
Die extendetFanControl kann aktiviert werden, jedoch gibt es einfach nur einen Haufen Fehler, also besser auslassen
Die Sensornamen können unter TSENORNAMES angepasst werden,
Die Notebremse kann nur deaktiviert werden indem man selbst den Code anpasst oder den Wert für Emercencybrake höher stellt. Wenn gewünscht wird, dann kann ich dies in der nächsten Version auch standartmäßig erhöhen.
Neu in v0.9: Die Temperatursensoren können nicht mehr im Laufenden betrieb für die Notbremse deaktiviert werden. Stellt dazu bitte die Standartaktivwerte um...

P.S: Ich möchte nicht zuviel direkt hier bekannt geben: Wer sich auskennt oder den Thread liest wird sehr viel auch ausführlicher erklärt bekommen. Man muss halt selbst Hand anlegen, was ich als Sicherheitsplus sehe. Jedoch ein Anfänger sollte nicht zuviel daran rumschrauben...

So viel Spaß damit

Ach ja: Erfolgreich getestet wurde auf
t43, t60, r60
x60 jedoch macht hier die Helligkeit Probleme


Carl

P.S: Wäre nett wenn gesagt würde auf welchen Modellen es funktioniert, und bei Fehlern bitte den Debug Modus in NHC ACPI aktivieren und das Log mitposten.
 
soweit ich mich erinnere, konnte man bei den Lüftern nur rufen, aber keine Drehzahlen einstellen...leider :(

Aber die Idee mit dem Kabel ist genial. Am Computer geschieht dies durch umpolung von 12V auf 5V bzw. auf 7V. Ich weiß nicht, ob dies beim Notebooklüfter auch klappt, aber ein Adapterkabel mit Wiederstand dürfte kein Problem darstellen. dazu bräuchte man halt nur zwei passende Stecker, ein bisschen E-Erfahrung und Zeit (woran es bei mir wieder scheitert...). Meistens bringt ja schon eine Reduzierung der rpm um vielleicht 10-20% einen deutlichen Geräuschvorteil.

Longfan komt wegen der Garantie ja leider nicht in Frage,,,,
 
Original von snowtiger
#if extendetFanControl
#region for the extendet fan controll of the x3y and x4x notebooks
public static class EXTENDET_FAN_CONTROLL //only for x30 to x40

Also nur für X30 und X40, ich kann leider nicht zu gut programmieren, um das auch für T60 o.a. zu ermöglichen, aber vll. jmd hier im Forum?


Hallo,

Also diese Funktion ist nur im X3* und X4* verfügbar, da es nur dort im ACPI verfügbar ist. So einfach ist das. Das für andere Modelle zu schreiben würde bedeuten, dass entweder jemand ein neues ACPI bzw. Bios schreiben muss, bzw. das diese Funktion einfach technisch nicht in anderen Modellen möglich ist

Weiterhin ist diese Funktion völlig UNGETESTED. Ich habe noch keinerlei Feedback über Erfolg oder nicht Erfolg erhalten. Und an ein X3 oder X4 komme ich nicht ran...


Gruß


Carl
 
Hat denn jemand zwei solche Stecker, welche man zu einem Verbindungskabel umlöten könnte...

wenn ich sowas bekommen könnte, würde ich es auch ausprobieren...

der enorme Vorteil läge darin, dass die der Lüfter sich ja immernoch über die Temp steuern lassen würde. an könnte dann die höheren Stufen einfach in der Ansprechschwelle etwas heruntersetzten.
 
Moin,

ich nutze NHC derzeit in der Standard-Version, überlege nun aber, mir die Professional-Version zu kaufen, um dann verschiedene Profile nutzen zu können. Dazu habe ich folgende Frage:

Die Professional-Version bietet ja die Möglichkeit, verschiedene Profile zu verwenden. Da ich ein ACPI-Script zur Lüftersteuerung verwende würde mich interessieren, ob unterschiedliche Lüftereinstellungen dann auch jeweils in einem Profil gespeichert werden können oder kann man mit dem Profil nur solche Sachen wie den Multiplikator der CPU usw. speichern?

Gruß

Honesty
 
Original von hHhwqH
Hat denn jemand zwei solche Stecker, welche man zu einem Verbindungskabel umlöten könnte...

wenn ich sowas bekommen könnte, würde ich es auch ausprobieren...

der enorme Vorteil läge darin, dass die der Lüfter sich ja immernoch über die Temp steuern lassen würde. an könnte dann die höheren Stufen einfach in der Ansprechschwelle etwas heruntersetzten.

Einfacher wäre es wohl einen passenden Widerstand einzulöten. Ist eine Sache von ein paar Minuten ;)
 
Moin,

ich habe jetzt die Professional-Edition von NHC, welche ja u. a. die Möglichkeit bietet, das Programm als Service laufen zu lassen. Im Programm habe ich den Haken gesetzt bei

"Enable NHC Service".

Wenn ich mein System neu starte, startet jedoch NHC mit dieser Einstellung nicht. Es ist so, dass ich es zwar unter den laufenden Prozessen und Diensten sehen kann, jedoch sind dann keine NHC-Symbole im Systray zu sehen. Erst wenn ich in den erweiterten Einstellungen von NHC einen Haken setze bei

"Enable Windows Autostart"

wird auch NHC so gestaret, dass es im Systray zu sehen ist. Was bringt es denn, wenn ich das Programm als Service laufen habe, jedoch zusätzlich noch den Autostart aktivieren muss - oder habe ich da jetzt irgendwas falsch verstanden?

Wie habt ihr das eingestellt - beides aktiviert (Autostart und Service)?

Achja, mein Betriebssystem ist Vista Home Premium.

Gruß

Honesty
 
Original von subnote
Original von hHhwqH
Hat denn jemand zwei solche Stecker, welche man zu einem Verbindungskabel umlöten könnte...

wenn ich sowas bekommen könnte, würde ich es auch ausprobieren...

der enorme Vorteil läge darin, dass die der Lüfter sich ja immernoch über die Temp steuern lassen würde. an könnte dann die höheren Stufen einfach in der Ansprechschwelle etwas heruntersetzten.

Einfacher wäre es wohl einen passenden Widerstand einzulöten. Ist eine Sache von ein paar Minuten ;)

sicherlich wäre es einfacher, aber eben auch auf den ersten Blick zu erkennen, und deshalb ein klarer Garantieverlust.

Ich habe mir jetzt gerade den M10 Longfan bestellt, und denke, dass sich dadurch für mich das "Problem" erledigt hat!
 
ich hab noch ein problem mit der lcd panel brightness.

und zwar habe ich im acpi-skript die lcd brightness controll aktiviert, damit in NHC im feld "graphics" die lcd panel brightness aktiviert wird. dort soll nun wenn ich im batteriebetrieb bin (voller akku) eine helligkeit von 71% eingestellt werden.
wenn ich windows starte ist die helligkeit auch zunächst reduziert, doch sobald NHC geladen wird habe ich wieder 100% helligkeit und meine einstellung wird ignoriert

woran könnte das liegen?
 
Zuerst mal herzlichen Dank!! NHC und das hier zur Verfügung gestellte Script haben mir und meinem T60 echt das Leben gerettet (hab so ein doofes fiep-T60 erwischt und in der Schweiz gibt es leider kein FAG... :( )

Was ich noch fragen wollte, wie siehts bei euch mit den Temperaturen in nicht CPU und GPU Bereichen aus? Wie heiss dürfen diese Komponenten höchstens werden?

Beste Grüsse
 
Einfacher wäre es wohl einen passenden Widerstand einzulöten. Ist eine Sache von ein paar Minuten
Das geht glaube ich nicht so einfach, wie man auf dem englischen Forum nachlesen kann:


In my quest to try and fix the fan noise on my own, I did a small experiment. Using a replacement HSF, I cut the positive fan power wire (it's the red one for those wondering, the negative is blue, and the RPM reporting one is orange **I take no responsibility for anything you do to your own machine**), and spliced a trimmer potentiometer (a variable resistor) in series with the fan. My goal was to increase the resistance and lower the fan speed until my idle RPMs hit the same levels as a T60A (~1900RPM). This did not work. The machine compensates for the resistance by increasing the voltage to maintain the RPM that it wants the fan to be running at. If I booted the machine with the resistor in place it would simply compensate and run at normal speeds. If I booted the machine with the resistor out and then swapped it in after boot up, the RPMs would drop for a moment, the machine would then compensate and raise the RPMs.


I then tried to see if the machine would even boot if I removed the RPM reporting lead, yet still had the fan's power leads connected -- it didn't like it and wouldn't boot. So the only option I see left for modding the fan is to get some sort of current source or voltage source and attach it to the RPM monitoring lead and supply the machine with bogus RPM reports while putting the resistor in series with the fan, allowing the fan to be run LOWER, yet tricking the machine into thinking the RPMs are normal. Of course, I don't know if this would work and don't really want to try and it will be a pain to figure out how to get it to work properly.
http://forum.thinkpads.com/viewtopic.php?p=303144&sid=

also nicht einfach mal schnell die Garantie wegwerfen...

Im gleichen Thread findet man noch weitere interessante Facts. So steht dort, dass der T60 mit CD im früheren BIOS 1900 RPM als tiefste Drehzahl lief und der T60 mit C2D 3000 RPM. Deshalb die unterschiedlichen "Lärmempfindlichkeiten" hier im Forum. (hoffe ich habe jetzt hier nicht etwas schon lange bekanntes gepostet... :rolleyes: )
 
Ich suche ein ACPI Skript für mein Z61m. Gibt es das bereits oder kann mir jemand ein Skript empfehlen zum Testen?

Mein Lüfter läuft trotz CPU Temp. von39 Grad nach einer gewissen Uptime fast permanent.

Besten Dank
 
Hallo ghm,

es gibt momentan zwei verschiedene Skripte. Einmal eins für einen A31 und dann eben das für den t43. Du kannst sie hier runterladen
http://nhc.justred.info/

Alle anderen dortigen ibm Skripte bauen mehr oder weniger auf diesen auf (auch die beiden sind sehr ähnlich). Ich habe gerade eben in eine z61 dsl file reingeschaut, das t43 sollte funkionieren. Jedoch keine Garantie auf irgentetwas...


Gruß


Carl
 
Besten Dank. Ich habe jetzt allerdings das Skript von Troubadix (http://staff-www.uni-marburg.de/~schmitzr/nhc_tpfc.zip) ) (allerdings mit niedrigeren Werten :-) ) verwendet, da mit dem T43p-Skript das ACPI Control System inaktiviert blieb. Mit dem Skript von Troubadix läuft es und ich konnte die Einstellungen anpassen. Bisher läuft es einwandfrei.

Aber mir bleiben im Moment noch 2 Fragen:

1. Wenn ich NHC beende, dann geht der Lüfter nicht an, was er aber nach der aktuellen Temp. machen müsste. Das sieht für mich so aus, als ob NHC die Kontrolle des Lüfters bei Beendigung nicht ans BIOS zurück gibt, was ja fatal enden kann, wenn der Lüfter gerade aus ist.

2. Weiß jemand warum der Sensor PWR in dem Skript von Troubadix deaktiviert war? Dieser Sensor ist durch meinen Lüfter kaum beeinflussbar und ist hauptsächlich dafür verantwortlich, wie lange der Lüfter läuft. Ich scheue mich aber davor, diesen Sensor in NHC zu deaktivieren. Was genau wären denn die Auswirkungen, wenn ich die Messung dieses Sensors deaktiviere?

Danke und Gruß
 
Hallo ghm,

In dem Link von Troubadix wird die Version 0.82 Verwenden. Update auf 0.9 und alles ist in Ordnung. (Siehe erste Post hier)


Gruß


Carl
 
Leider klappt es mit der Version 0.90 genau so wenig, wie mit den Files unter http://nhc.justred.info/. Das ACPI System kann im NHC nicht konfiguriert werden.

Der Unterschied scheint mir darin zu liegen, dass Troubadix bei seiner Version zwei versch. Skripts u. XML-Dateien für IBM und LENOVO erstellt hat.
Mein T60 hatte bei der v0.82 das LENOVO-Skript genutzt (laut NHC). Dieses existiert bei der Version 0.90 ja nicht...

Nachtrag:
Ich hatte natürlich auch probiert IBM in der XML-Datei durch LENOVO zu ersetzen.
Aber der Effekt war der gleiche.
 
wie ist denn die Fehlermeldung bzw. was klappt denn nicht!

Ich könnte Dir auch mal mein Script schicken!
Einfach ne PN oder Mail schicken!
 
Original von ghm
Wenn ich NHC beende, dann geht der Lüfter nicht an, was er aber nach der aktuellen Temp. machen müsste. Das sieht für mich so aus, als ob NHC die Kontrolle des Lüfters bei Beendigung nicht ans BIOS zurück gibt, was ja fatal enden kann, wenn der Lüfter gerade aus ist.

...ooops, echter bug, jetzt auch hier gefixt:

http://staff-www.uni-marburg.de/~schmitzr/tpfcserv.zip
http://staff-www.uni-marburg.de/~schmitzr/nhc_tpfc.zip

credits to Carl =)

ciao, troubadix
 
Original von Cmdr Raycoo
was hast Du denn im NHC Script geändert?

schwarz=alt, rot=neu eingefügt:
_____________________________________________

#region Class for IBM FAN control : class FAN
.....
.....
public static bool close()
{
int i =128;
return set_fan_speed(ref i);
}

}
#endregion

_____________________________________________

fan register des embedded controllers wird beim Schließen der Anwendung wieder auf 128=BIOS gesetzt

ciao, troubadix
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben