[Vorstellung] NoteBook FanControl (NBFC)

Flow711 schrieb:
Moin, also habe es soweit hinbekommen den CPU Lüfter zu regeln mit dem Tool, lediglich der GPU lüfter lässt sich nicht steuern... hier mal meine Config : http://www.filehosting.at/file/details/652664/ADHsDaiFguaJCHk7/HP%20OMEN%20by%20HP%20Laptop.xml

BTW. Habe ein Omen 17 W104G. Aber haben die gleichen Werte ( 88 ).

@T__P

Danke für die config
Jetzt bleib der auch beim Sky go schauen lautlos, wen die Festplatte sich dann auch mal abschaltet.
Wen er dann mal über 60C kommt dann gehen alle beiden Lüfter auf ne recht hohe Drehzahl.
Nun bleibt der Linke Lüfter hängen wie @protons2000es schrieb durch den Bug, weil er direkt auf so eine hohe Lüfterdrehzahl springt. Obwohl es ausreichen würde das der Rechte Lüfter auf der 1 Stufe geht und der Linke aus bleibt. Einmal das "Fan always on" auf "an" und dann wider auf "aus" und nun ist er wider leise bis zum nächsten 60C Sprung.


Wen "Fan always on" auf "an" steht dreht der Rechte Lüfter mit ner Drehzahl die er sonnst leider nicht erreicht wen er auf "aus" steht. Diese Stufe sollte er dann bei 60C einschalten. Aber ich weiß nicht wie ich das bei NBFC eintrage das dieses Ergebnis heraus kommt:(

Edit: Nach langen hin und her hab ich den "Min Speed auf 40" und den "Max Speed auf 85" gestellt.
So mit geht der Lüfter so wie ich es auch gerne hätte an.
Leider bleibt der Bug, wen die GPU den linken Lüfter braucht bleibt er hängen.

@Grantig: Kannst du das so ein stellen das wen der sich einmal runter gefahren hat wegen Überhitzung, NBFC auf Read-onley um schaltet. Hab ein paar h gebraucht um den wider hin zu bekommen, wen man den Manuela auf 100% stellt um zu schauen ob die Lüfter Stufen durch gehen aber das BIOS meint dann den PC immer runter zu fahren. Und beim Hoch fahren startet NBFC direkt wider mit 100% und BIOS sagt wider Runter also ein Teufelskreislauf.
 
Zuletzt bearbeitet:
Hi,

gibt es eine Config für das Razer Blade Stealth? (Kaby Lake Modell) - Wenn nein, hat jemand Lust mir bei der Config zu helfen? Gegen eine kleine "Kaffee Spende" :) Danke im Voraus
 
Und mir kann niemand helfen?
Naja.... Ich geb´s langsam auf. Jetzt schon 3x gefragt. Mit ner alten Anleitung wird das wohl nichts.
Was bringen mir die Werte wenn ich nicht weiß wie ich sie in das Tool eingebe...
 
@Karandras
Steht im NBFC Wiki. Wenn du kein Englisch kannst - Google Translate produziert eine wirklich brauchbare Übersetzung:
https://translate.googleusercontent...ration&usg=ALkJrhgD_-WSlvzdv4HRqNrFK_05f191gA

@csMountainDew
Es gibt fürs Razer Blade eine config, allerdings ist sie zu instabil um sie ins offizielle Repo mit aufzunehmen.
Versuch dein Glück: https://github.com/hirschmann/nbfc/issues/171

@T_P
Du kannst Windows im Abgesicherten Modus starten, dann sollte NBFC nicht geladen werden.
Dort kannst du dann den NBFC-Service deaktivieren (per services.msc) oder die Service-Settings löschen: https://github.com/hirschmann/nbfc/wiki/Files-and-directories-overview

NBFC kann nicht erkennen dass das System überhitzt, wenn du die Temperaturregister im EC überschreibst, weils nur ein "Falschalarm" ist. NBFC greift direkt auf die CPU-Temperatursensoren zu, die die richtige Temperatur liefern.
 
Also wen die Lüfter hochdrehen sehe ich 2 Werte mit hochgehen...
6 und 254 sind die roten Zahlen. So wie es in der Anleitung steht.
Unter "Fan configuration" trage ich dann diese Werte ein.
Dann speicher ich die Datei. Öffne sie in NoteBook FanControl. Und wenn ich dann am Regler drehe passiert nichts. Ich habe die Werte auch einmal getauscht. Da passiert auch nichts.
Oder mache ich da etwas falsch?
 
Zuletzt bearbeitet:
Der Lüfter meines Acer Swift 5 (sehr ähnlich dem Acer Aspire S13) springt gerne mal an, obwohl es meiner Meinung nach nicht nötig wäre, was ziemlich zu Lasten der Akkulaufzeit geht. Jetzt wollte ich eine Config für den Laptop erstellen, komme aber leider nicht weiter.

Der Vergleich zwischen Lüfter an und Lüfter aus:
Vergleich.png
Die grün unterstrichenen Werte verändern sich mit der Temperatur. Wenn ich sie manuell ändere, werden sie jedoch sofort wieder überschrieben.
Habe auch schon auf der Suche nach dem Register für den manuellen Modus an einigen Werten herumgeschraubt, war jedoch erfolglos. (Den EC habe ich zurückgesetzt, bevor ich die Screenshots gemacht habe)

Lüfter an:
Luefter an.png


Lüfter aus:
Luefter aus.png
 
Zuletzt bearbeitet: (Wording)
Hallo!

Ich versuche gerade, ein Profil für das Thinkpad Edge E540 zu erstellen. Ich habe dabei das selbe Problem wie Xerionius: Ich kann kann gültiges Write-Register identifizieren.

Ich habe zur Analyse während "ec-probe monitor" lief ein Spiel gestartet, sowie Prime 95, und das ganze geplottet. Das Register 0xCC dürfte demnach die Lüfterdrehzahl (von 0 bis 6) sein, 0x78 die Temperatur in °C (weicht aber teilweise etwas von der in NBFC angezeigten ab).

Anhang anzeigen out.png
Oder als PDF: https://drive.google.com/open?id=0Bxu3imuSrPFaRlY3UWhsWXgzVGM

Kann es auch vorkommen, dass ein EC kein Write-Register hat? =/

Nachtrag:

Ich habe auch versucht mit Grantig's Post dazu die DSDT auszuwerten, die sogar ziemlich ähnlich wie in dem Post aussieht -- nur leider sind die Offsets bei mir so hoch, dass sie Außerhalb des 0x00-0xFF-Bereichs fallen.

Code:
OperationRegion(ECRM, SystemMemory, 0xFF000000, 0x1000)
Field(ECRM, AnyAcc, Lock, Preserve)
{
	Offset(0x400),	//Offset(1024),
	Offset(0x45D),	//Offset(1117),
	ERIB, 16,
	ERBD, 8,
	Offset(0x4AA),	//Offset(1194),
	, 8,
	Offset(0x4AD),	//Offset(1197),
	, 4,
	, 4,
	PTVL, 4,
	Offset(0x4B0),	//Offset(1200),
	, 8,
	, 8,
	, 8,
	, 8,
	, 8,
	Offset(0x4BC),	//Offset(1212),
	, 8,
}
Mutex(FAMX, 0)
Method(FANG, 1, NotSerialized)
{
	Acquire(FAMX, 0xFFFF)
	Store(Arg0, ERIB)
	Sleep(0x14)
	Store(ERBD, Local0)
	Release(FAMX)
	Return(Local0)
}
Method(FANW, 2, NotSerialized)
{
	Acquire(FAMX, 0xFFFF)
	Store(Arg0, ERIB)
	Store(Arg1, ERBD)
	Release(FAMX)
	Return(Arg1)
}
 
Zuletzt bearbeitet: (Removed awful code indentation.)
Heyho,

So ich hau mal hier die Config für ein Acer 5749 raus. Achtung, Lüfter ist sehr sehr auf silent getrimmt ;)
Die Lüfter Steuerung und die Temps sollten aber so stimmen. Da ich erst bei 60°C anlaufen lassen müsste man das noch evtl einstellen.
Was ich gerne noch wissen würde: Wie bring ich das Teil unter Linux zum laufen?
Ich hab es zwar geschafft das ganze zu kompilieren aber auszuführen war dann wieder was anderes... übrigens braucht man bei den meisten Linux Distros ein aktuelles mono-complete weil das aus den Repos meist zu alt ist.
..oder kann man unter Linux ne GUI vergessen?
 

Anhänge

Hallo zusammen,

leider funktioniert für mein Dell XPS17 (l702x) kein config aus der Liste und eine Lüftersteuerung wäre (endlich) eine wirklich gute Sache. Habe mich zwar im thread eingelesen, aber habe nach wie vor nicht den Schimmer, wie ich selbst ein config erstelle und zwar so, dass der funktioniert. Hat jemand vielleicht schon mal was für XPS17 erstellt oder mag mir mal einen Hinweis geben, wie ich das selbst schaffe? Danke!
 
schliesse mich meinem vorposter an.

bitte eine config für das L702x

mir geht der lüfter auf den sa.. ;)
 
Gibt es denn keine gescheite Anleitung?
So ist das Tool ja doch nutzlos wenn keiner seinen Laptop-Lüfter damit drosseln kann...
Wenn man es so macht wie in der englischen Anleitung... Passiert einfach gar nix
 
Karandras schrieb:
Gibt es denn keine gescheite Anleitung?
So ist das Tool ja doch nutzlos wenn keiner seinen Laptop-Lüfter damit drosseln kann...
Wenn man es so macht wie in der englischen Anleitung... Passiert einfach gar nix

der aussage schließe ich mich an :(
 
@Karandras: Mir geht es leider ähnlich, da ich bei meinem Thinkpad Edge E540 trotz lesen des dekompilierten DSDT und zeitaufgelöster visualisierung der Werte im EC nicht herausfinden konnte, welche Offsets jetzt den Lüfter steuern (nur ein grober Verdacht), und vor allem: Wie man den manuellen Modus aktiviert.

Könnte jemand, der selber ein Profil erstellt hat, beschreiben, wie man den Offset für den manuellen Modus findet? In meinem Fall korreliert nur der Offset 0xCC mit den Lüfterverhalten, die Felder rund herum haben keine Wirkung, und im DSDT stehen Offsets (unter "FANG" und "FANW") die nichtmal in den 0x00-0xFF-Bereich des EC fallen.
 
Hallo miteinander

Super tool, habe daher per paypal gespendet, so kann ich mit meinem HP 2560p noch ein Weilchen leben. Habe noch eine Frage zur critical temperature: "...set the fan to 100% until the temperature drops below (CriticalTemperature - 15). Wieso wird zu den nbfc Werten erst dann zurückgekehrt, wenn die Temperatur 15 Grad unterhalb der kritischen ist? 10 Grad hätte ja eigentlich auch gereicht, habe daher meine kritische Temperatur auf 80 Grad hochgesetzt (damit bei 65 Grad der Lüfter heruntergeregelt bzw. nbfc Regelung wieder aktiviert wird.

Hier meine angpasste Konfigurationsdatei (ohne Gewähr für Schäden), mit der ich ohne Lüfter surfen kann (beim Surfen ist der Lüfter aus, nur bei Video-clips o.ä. schaltet sich der Lüfter ein, mit 5% der Drehzahl). Einzig und allein die Kategorie temperature threshold (also bei welcher Temperatur geht der Lüter auf wieviel %) sowie die critical temperature habe ich angepasst. Offen gestanden, ohne vorgegebene HP 2560p Konfigurationsdatei wäre ich aufgeschmissen gewesen, die Beschreibung empfinde ich als Nicht-Informatiker als äusserst knapp.
Ergänzung ()

Fauszt schrieb:
...
Allerdings habe ich das Problem das bei mir der Lüfter nur auf ca. 30% gedrosselt werden kann. Target Fan speed steht auf 10 % aber das interessiert das System wohl nicht.
Ich habe ein HP Elitebook 2560p und die Option "Fan always on" ist aus. Habe den lüfter auch schon gereinigt und die Leitpaste erneuert. Ich verwende das passende Profil.
Habe auch das 2560p (mit i7 2620m) und die Drosselung funktioniert bei mir auch auch unter 30% (aktuelle 1.5.0., windows 10 neu installiert). Habe open hardware monitor installiert, damit gibt es keine Konflikte (Grantig hat darauf verwiesen).
Grüsse mumpf
 

Anhänge

Zuletzt bearbeitet:
@alle die mit der Anleitung nicht zufrieden sind
Das was momentan im Wiki vorhanden ist, ist eine Erklärung des Aufbaus einer NBFC Config.
Eine an einem up-to-date Tutorial wie man die passenden Register finden kann arbeite ich gerade.
Aber wer eine Schritt für Schritt Anleitung erwartet, die für jedes Notebook sicher funktioniert, den muss ich enttäuschen.

Es gibt leider keine Standards wie ein EC zu funktionieren hat. Die Hersteller haben freie Hand, deswegen gibts kein Pauschalrezept um Lüfter anzusteuern.
Es bleibt meistens nichts anderes übrig als reverse-engineering und das ist nunmal nicht ganz trivial.

@Klaus4
Das Problem bei dir ist, dass der EC ein Feld im SystemMemory-Space definiert und sich darüber Steuern lässt.
NBFC unterstützt nur den Zugriff auf den EmbeddedControl-Space (= die EC Register).

Der Grund:
Man kann fast immer davon ausgehen, dass eine Notebookserie immer den gleichen SuperI/O-Chip/EC verbaut hat. Wenn man einmal rausgefunden hat wie der funktioniert, kann man eine Config schreiben, die für alle Notebooks der Serie funktioniert, unabhängig von der restlichen verbauten Hardware. Außerdem kann man idR. nicht sonderlich viel kaputt machen wenn man wild in den EC-Registern rumschreibt, weil die EC-Firmware normalerweise groben Unfug garnicht erst zulässt.

Bei Speicher der eigentlich fürs System (auch Hardware) reserviert ist, ist es etwas problematischer.
Einfach irgendwelche Werte ändern kann komplett undefiniertes Verhalten hervorrufen.
Außerdem kann die Basisadresse von Feldern im SystemSpace (in deinem Fall 0xFF000000) abhängig von verbauter Hardware und BIOS Version sein, deswegen bringts einfach nichts dafür Configs zu erstellen, weil sie nur für ein ganz bestimmtest Hardware/BIOS-Setup funktionieren würde.

Du kannst ja mal versuchen mit RW-Everything in den Systemspeicher zu schreiben (ich glaube die "Memory Dump" Funktion erlaubt auch Schreibzugriff).
Als Startadresse könntest du 0xFF000000 + 0x45D setzen, dann müssten die ersten 2 Byte ERIB sein.
Aber am besten vorher ein Backup machen^^

@mumpf
Danke für die Spende :)

Die CriticalTemperature sollte normalerweise nie erreicht werden wenn die Thresholds richtig konfiguriert sind.
Es ist nur ein Notnagel um das System vor Überhitzung zu schützen, falls z.B. jemand versehentlich den Lüfter auf 0% setzt.
Die 15 Grad hab ich so festgelegt, damit die Temperatur in so einem Fall nicht knapp unter dem kritischen Scvhwelenwert oszilliert.
 
Grantig schrieb:
Du kannst ja mal versuchen mit RW-Everything in den Systemspeicher zu schreiben (ich glaube die "Memory Dump" Funktion erlaubt auch Schreibzugriff).

Alleine auf Memory Dump zu klicken hat einen Blue Screen ausgelöst, bevor ich noch irgendwas lesen konnte :( Für mein aktuelles Gerät (Thinkpad Edge E540) lässt sich da wohl nichts machen.
 
Hat schon jemand ein Acer Nitro 793?

Sobald ich NFC einschalte, springt kurz darauf die Einstellung wieder auf "Aus" und lässt sich ab da nicht mehr einschalten.

Wird der 7700HQ eventuell noch nicht unterstützt?
 
Hallo Grantig,
ich versuche mich gerade am Erstellen eines neuen Profiles für den HP 250 G5 da keine der vorhandenen Configs eine Reaktion zeigt.
Herausgefunden über ec-probe habe ich schon das Register 0x11 die aktuelle Lüfterdrehzahl (Read-Register, gültige gefundene Werte zwischen 0x1B und 0x25) und Register 0xB0 die aktuelle CPU-Temperatur darstellt.
Im Wiki finde ich aber nun keinen Hinweis wie ich das Write-Register zur Änderung der Lüfterdrehzahl ermitteln könnte. Schreibversuche mit "ec-probe.exe write" nach 0x10 und 0x12 (als auch 0x11) zeigen leider keinerlei Änderung bei der Lüfterdrehzahl.

Gibt es hier ein sinnvolles Vorgehen ohne alle 256 Register mit gewürfelten Werten zu überschreiben ?

Gruss _Rheinhesse_
 
Zuletzt bearbeitet:
Zurück
Oben