Lüfter- und Temperaturkontrolle v0.9.2 (PFControl)

Profiler

TP-Softwareentwickler
Themenstarter
Registriert
31 Mai 2006
Beiträge
253
Hallo,

ich habe mir Mithilfe von ein paar Anregungen eine eigene Lüfter- und Temperaturkontroll - Software mit Delphi geschrieben und würde mein Programm hier mal zum Download und Feedback anbieten.

Auf dieser Website findet ihr alle Versionen inklusive Delphi-Quellcode: http://fancontrol.de/

Ich habe das Programm für meinen T23 geschrieben, aber es funktioniert auch bei älteren bzw. neueren Thinkpads. Je nach Modell sind verschiedene Temperatursensoren vorhanden.

Bis jetzt zeigt das Programm die Temperaturen von CPU, Board, PCMCIA-Slot, Hauptbatterie und wenn eingesteckt auch von einer Ultrabay 2000 Batterie an. Bei neueren Thinkpads sind sogar mehr Sensoren möglich.

Es gibt 3 Funktionsmodi. Der erste ist Bios-Controller. Hierbei wird wie gewohnt der Lüfter vom BIOS gesteuert und man benutzt das Programm nur als Temperaturkontrolle. Dann gibt es den Modus INI-Einstellungen. Hier werden bestimmte Geschwindigkeiten bei benutzerdefinierten Temperaturschwellen automatisch eingestellt. Schließlich gibt es noch die manuelle Kontrolle, wobei der Benutzer mit einem Schieberegler die 4 Geschwindigkeiten manuell einstellen kann.

Von allen Temperaturen wird die höchste oder nach Wunsch auch eine bestimmte Temperatur im SystemTray mit einer farbigen Untermalung angezeigt. Um alle Features hier aufzuzeigen, müsste man noch eine Menge Text schreiben. Wenn man den kompletten Beitrag liest, kann man die Entwicklung aber auch nach und nach vervolgen. Wer sie alle genau wissen möchte, sollte das Programm einfach mal herunterladen und ausprobieren ;).

Für Kritiken, Bugs und Verbesserungsvorschläge bin ich sehr offen :-)

Gruß
Profiler
 
Zuletzt bearbeitet von einem Moderator:
Lüfterpulsieren

Hey Profiler,

Spitzen-Programm! Ich hab es grad mal auf meinem T43 angeworfen, um dir auch mal Feedback geben zu können. Funktioniert alles bestens: Modell wird richtig ausgelesen, Festplatten-Temperatur ebenfalls.

Im Übrigen find ich es auch super, dass du das Programm so beharrlich weiterentwickelst und auch auf die Wünsche anderer Nutzer ausgesprochen zuvorkommend reagierst.

Einen Verbesserungsvorschlag hab ich noch, mit dem du das "alte" tpfancontrol endgültig ausstechen könntest: häufiger Kritikpunkt ist das Pulsieren des Lüfters. Ich weiß gar nicht, ob das bei deinem T23 überhaupt auftritt oder ob das eine Besonderheit der T4x ist... Aber das empfanden beim alten Programm noch einige nervig. Den Entwickler hat das Pulsieren nicht gestört, daher hat er das Programm dahingehend auch nicht weiterentwickelt. Wenn du das beheben könntest, würdest du sicherlich einige Nutzer sehr glücklich machen. Ich hab nur eine geringfügige Grundahnung vom Programmieren, daher werd ich aus dem entsprechenden Linux-Skript auch nicht unbedingt schlau. Aber dort ist eben eine solche Funktion eingebaut, die bei mir auch wunderbar das Pulsieren verhindert. Die sollte doch auch unter Windows umzusetzen sein...

Also weiter so!

Gruß, Mario
 
@Profiler:

Gute Arbeit, habe mir das Teil heute installiert.
Zwei Verbesserungen bzgl. des Info-Popups hätte ich auch gleich:

1. Das Fenster sollte praktischerweise dauerhaft geöffnet bleiben, so lange der Mauszeiger darüber steht und der User die Temps beobachten möchte.

2. Das Popup-Fenster sollte dabei immer im Vordergrund bleiben, egal was sonst auf dem Desktop geöffnet ist.

Eine dritte Verbesserung betrifft das unsichtbare Abfangen des Versuchs, eine zweite Instanz des Programms zu starten. Irgendwie habe ich das 2x geschafft, das ergab zwei Tray-Icons mit unterschiedlichen Werten. Beim zweiten Versuch habe ich das zwar nicht hinbekommen, es kam aber eine Fehlermeldung bzgl. des Sys-Treibers und ein Neustart des Programms wurde verlangt, obwohl es normal weiter lief. Evtl. kann man das elegant abfangen.

Sonst aber echt gut gemacht 8).

Gruß
Roger
 
@Roger66

Das Problem, dass das Prog zweimal läuft und unterschiedliche Werte im Autostart auswirft, hatte ich ebenfalls. Allerdings trat dieser bei mir im aktuellen Release nicht mehr ein. K.A. woran es gelegen hat.

EDIT: Komisch, jetzt gehts wieder..... ?(


MfG Sightus
 
Hallo,

@Sightus
DMI wäre eine schöne Option. Die würde ich sofort einbauen, wenn ich könnte ;)
Ich werde mich nochmal belesen, wenn ich mehr Zeit habe.

@onkel25
Schön, dass die HDD-Temp auch auf deinem T43 funktioniert.
Ich weiss leider nicht, was du mit dem Pulsieren des Lüfters meinst, bei meinem T23 habe ich keinerlei derartiger Verhalten. Aber wenn du mir sagst, wo genau die Lösung zu finden ist (Linux-Script?), dann könnte ich einen Versuch starten.

@Roger66
Das der Tooltip solange angezeigt wird, wie man hovert, wird gefixt, danke! Ob ich das mit dem im Vordergrund hinbekomme weiss ich grad nicht, muss ich googlen.
Eine zweite Instatanz sollte nicht startbar sein, du hast Recht. Ich werde dies im nächsten Release berücksichtigen.

Gruß
Profiler
 
zum Pulsieren:

Der Lüfter dreht (scheinbar tatsächlich nur bei den T4x) eigentlich gleichmäßig. Jede Sekunde (?) fällt die Drehzahl allerdings kurz mal ein wenig ab und fährt dann wieder auf das ursprüngliche Niveau. Kann auf Dauer ziemlich nerven.

Die Linux-Skripten, von denen ich rede, finden sich unter http://thinkwiki.org/wiki/ACPI_fan_control_script

Der Code, der für die Verhinderung des Pulsierens zuständig ist, müsste der folgende sein. Wie gesagt, versteh ich mangels tieferer Kenntnisse nicht ganz, was da genau gemacht wird. Vielleicht hat da ja jemand anders einen besseren Durchblick. Ansonsten sind die Autoren des Skripts auch im ThinkWiki aktiv und können sicherlich helfen... Wie gesagt, einige T4x-Nutzer wären dir sicherlich dankbar.

Code:
LEVELS=(    0      1      3      7)  # Fan speed levels
ANTIPULSE=( 0      1      1      1)  # Prevent fan pulsing noise at this level
                                     #   (this also prevents fan speed updates)



    # If needed, apply anti-pulsing hack after a settle-down period:
    if [[ ${ANTIPULSE[${NEWIDX}]} == 1 ]]; then
	if [[ $NEWLEVEL == $OLDLEVEL ]]; then
	    if [[ $SETTLE -ge 0 ]]; then
		(( SETTLE -= INTERVAL ))
	    else
		$DRY_RUN || echo level disengaged >> $FAN
		sleep 0.5
	    fi
	else
	    SETTLE=6
	fi
    fi


Gruß, Mario
 
@Profiler:

Prima, das mit dem Hovern war das wichtigste :) .
Hat die sekündliche WMI-Abfrage der Platte mit Blinken der Zugriffs-LED eigentlich Einfluss auf das Powermanagement der Platte, sprich: kommt sie so noch in die sparsameren Modi ?

Eine weitere Idee wäre noch, die Readme.txt direkt den Bin-Dateien beizufügen, damit man beim Ersteinsatz gleich einen Leitfaden an der Hand hat, wie das Teil so tickt, ohne erst den 16seitigen Thread durchforsten zu müssen.

Gruß
Roger
 
Die neue Version ist wirklich super und bietet alle Einstellungen, die man so braucht. Aber leider spinnt bei mir die Temperaturanzeige der Festplatte und die Temperatur springt ständig auf unrealistische Werte (3-30-216-80-15-180....). Ich habe ein Z61m.
Oder muss ich etwas umsztellen, damit es sich normal verhält?
 
Hallo,

@onkel25
Danke, ich werde mir mal den Code anschauen und versuchen ihn in Delphi umzusetzen.

@Roger66
Ja leider schreibt er beim lesen des Temperaturwertes auf die Festplatte. Irgendwie scheint das nicht so optimal zu sein, wie ich das auslese.
Somit ist auch das Powermanagement weg, da beim Schreiben auf die Platte die Uhr wieder zurückgesetzt wird.
Ja sone Readme-Datei wäre für manche Fragen von Usern hier sehr hilfreich ;)

@phil83
Bei dir schein die WMI-Auslesung nicht zu funktionieren. Das hatten wir schon bei mehreren mit einem Z61.

Gruß
Profiler
 
Original von phil83
Die neue Version ist wirklich super und bietet alle Einstellungen, die man so braucht. Aber leider spinnt bei mir die Temperaturanzeige der Festplatte und die Temperatur springt ständig auf unrealistische Werte (3-30-216-80-15-180....). Ich habe ein Z61m.
Oder muss ich etwas umsztellen, damit es sich normal verhält?

das habe ich bei meinem T60p auch, leider!

Ansonsten ein Klasse Programm! Weiter so!!!
 
Hallo!

Nachdem ich als chronischer TPFancontrol-Benutzer schonmal Probleme mit Abstürzen hatte, habe ich a) dieses tolle Programm noch nicht selbst ausprobiert und b) zwei Fragen:

1. Hat schon jemand Erfahrungen damit gemacht, wie sich die Lüftersteuerung nach Abstürzen entweder dieses Programms oder anderer Software verhält?

2. Wie steht es um einen zuverlässigen Neustart nach einem Absturz bzw. hat sich inzwischen etwas in puncto "Start als Service" ergeben? (Das war hier zwischendrin mal kurz angesprochen worden.)

Danke,

lazy


edit: P.S.: Ist es denn so wichtig, die Festplattentemperatur zu kennen? Ich meine, der CPU-Lüfter dürfte die Platte doch wohl kaum mit kühlen können. Ergo: Was ich nicht weiß, macht mich nicht heiß...
 
Hallo und herzlichen Dank für die geleistete Arbeit.!
Programm funktioniert bestens auch unter Windows Vista RTM 32bit auf einem 2668-46U.

Nun zur Frage: Sieht jemand eine Chance, den Lüfter unter die Drehzahl von
3300U/min zu bekommen? Ich denke bei runden 1000U/min könnte man den Lüfter
ständig drehen lassen, ohne das er nerven würde. Das ständige Hochdrehen
bei An/Aus-Wechseln nervt (mich) schließlich auch.

Generell frage ich mich, wie sowas unbeanstandet durch die Qualitätskontrolle
eines so teuren Herstellers gehen kann...

Danke & Viele Grüße

Pit
 
Ich denke bei runden 1000U/min könnte man den Lüfter
ständig drehen lassen, ohne das er nerven würde.
Problem hierbei dürfte sein, den Lüfter unter allen Bedingungen (Alterung, Staub etc.) noch zum Hochdrehen zu bekommen. IMHO wählt IBM die Mindestdrehzahlen bewusst so hoch, um diesen Problemen aus dem Weg zu gehen. Gleiches gilt für Desktop-PCs, wenn die verbauten Lüfter nachträglich durch eine externe Lüftersteuerung ruhig gestellt werden sollen: Man muss sehr aufpassen, dass die angeschlossenen Lüfter tatsächlich immer anlaufen. Das kann im kalten Zustand ganz anders aussehen, als es das im betriebswarmen Zustand war, als man die Drehzahl einstellte.

Das "Losbrechmoment" der Lüfterlagerung wird mit zunehmender Betriebsdauer immer höher.

Gruß
Roger
 
@lazy_leukocyte

Klar stellt sich die Frage, ob ich die Temperatur der HDD brauche. Allerdings würde ich bei diesem super umfangreichen PRogramm nicht darauf verzeichten. Gegenfrage; warum verzichtest Du dann nicht auch auf die CPU-Temp? Richtig, weil Du wissen willst, wie heiß die CPU ist, um ein Überhitzen zu verhindern! Ebenso ist es mit der Festplatte. Wenn ich auf meinem Thinkpad wichtige und nichtwiederbringliche Daten habe, dann werde ich alles in Gang setzen, die HDD am Leben zu erhalten. Grundvorraussetzung für ein langes HDD-Leben ist auch eine angemessene Temperatur, da wie wir wissen, HDDs sehr empflindlich mit hohen Temperaturen sind. Wenn ich nun also ein Montagsmodell erwischt habe, dass schon kurz nach dem Start hohe Werte bis bspw. 45°C erreicht, beim Defragmentieren sogar über 50°C, dann sollte ich mir mal Gedanken über die Sicherheit der Daten machen. Mir persönlich sind schon einige Festplatten in Desktoprechnern (Hdds ohne SMART) über den Jordan gegangen, weil sie zu heiß wurden. Somit ist es gut, immer ein Auge auf den Temperaturen zu haben.

Bislang hat dieses Programm bei mir keine Abstürze verursacht, kann daher leider nichts zu den Eigenschaften sagen.

@Snakepit

Kann es nicht einfach sein, dass die Lüfter bei einer geringeren Stromzufuhr garnicht erst anlaufen?

@Roger66

Interessanter Ansatz, habe ich mir noch nie Gedanken drüber gemacht, klingt aber logisch, da Staub über die Jahre hinweg echt zu einer klebrigen Masse wird.




Mfg sightus
 
Drehzahländerung ist doppelt auffällig. Dir mag es nichts ausmachen, aber such mal nach den Beiträgen, wo sich User über Pulsieren beschweren ;). In Bios default macht IBM zumindest bei meinem TP eh schon genau das: erst kurz höhere Drehzahl, dann konstant.
 
@Roger66

ICh glaube, dass ist eine Schutzfunktion, um zu sehen, ob der Lüfter auf allen Stufen noch läuft!? Eine Art Funktionstest.

Mfg sightus
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben