Lösungsvorschlag für Sony Vaio Fit Multi-Flip
Nahasapeemapetilon schrieb:
Hi alle,
ich bin auch einer der Sony Vaio Fit geplagten. Erstmall danke an OP für dieses Tool und die ganze Arbeit!! Wenn man mit NBFC die MultiFlip Reihe silent kriegt, spendier ich dir höchstpersönlich nen Kasten Bier. Mindestens.
Habe hier ein Sony Vaio Flip 13A, geiles Teil, nur scheiße laut oder gedrosselt. (dann immernoch zu oft Lüfter an, wenn auch nicht unbedingt unerträglich. Energiesparmodus, drosseln, Passiv-Policy, etc.. hilft ein wenig)
Nun, ich hab versucht da als ziemlicher Laie auf dem Gebiet mal durchzusteigen, mit RW habe ich 3 register (93, 103 und 223) identifiziert die reproduzierbar analog zur Lüftergeschwindigkeit schrittweise steigen/sinken, kann man richtig beobachten. Daneben stehen Register die sich wohl entsprechend zur Temperatur ziemlich oft verändern. Nun checke ich aber nicht, wie ich diese Register beeinflussen kann? Wenn ich mit RW in die Felder reinschreibe, wird es sofort wieder überschrieben. Dieses DSDT blicke ich leider garnicht.
Kann da jemand vielleicht einen entscheidenden Tipp geben? Ich stehe zu meinem Wort bzgl. Kasten Bier. Das Laptop erfüllt alle Wünsche bis auf die scheiß Lüftersteuerung. Danke für alle Hilfe!
Hallo an alle lüftergeplagten Sony Vaio Fit Multi-Flip -Nutzer,
ich denke, ich kann ein wenig Abhilfe schaffen und zur Aufklärung beitragen:
Die Fanspeed
Read Register sind als WORD (16 bit, 2 byte) im EC gespeichert, und zwar in
92 (+93) und 102 (+103)
Der Wertebereich bewegt sich von 0 bis 7200 (dezimal)
Somit empfehle ich eine Umstellung von nbfc auf WORD.
Der Testmodus (FWD.exe) wird aktiviert indem Register 197 auf 0x10 gesetzt wird, und deaktiviert (Standard) auf 0x00.
(In WORD müsste Register 196 auf 0x1010 gesetzt werden)
Die Temperatur steht in Register 88.
Jetzt wird es interessant:
Das Fanspeed Write Register ist 95 (bzw. 94). Hier kann man in die Steuerung eingreifen. Das Bios wählt automatisch Werte zwischen 0 (aus) und 7 (ziemlich schnell - Testmodus ist noch schneller).
Allerdings, wenn man hier einen Wert kleiner 8 wählt, wird dieser innerhalb einer Sekunde durch das Bios überschrieben. Wenn man den Wert also
konstant überschreibt, kann man bedingt in die Steuerung eingreifen. Der Effekt ist allerdings nur langsam spürbar, da die Lüfter nicht aktiv gebremst werden, sondern bis zu der gewählten Stufe von selbst (Reibung) langsamer werden (das ist soweit ich weiß normal).
Wenn man den Wert auf 8 hört das Bios auf diesen Wert zu überschreiben (!).
Stattdessen setzt eine Lüfternotsteuerung ein, die um einen Temperaturbereich verschoben ist - heißt, die 10%-Lüftung setzt erst im Temperaturintervall ab 60°C ein, die 20%-Lüftung im Temperaturintervall ab 80°C, usw.
Zusammenfassend, wenn die CPU-Kerntemperatur nicht auf >60°C klettert, bleiben die Lüfter aus (!).
Hinweis: der EC scheint nur die letzten 3 bit auszuwerten, heißt z.B. zwischen 0x11 und 0x17 werden ebenfalls die Werte verändert, 0x18 ist wieder safe.
Zum Entwickeln eines Profils gibt es jetzt also zwei mögliche Wege:
1. Weg: Man setzt das Register 94 (bzw. 95) einfach auf den Wert 8 und hat weitestgehend seine Ruhe. Allerdings klettert meine CPU da, bei erhöhter Belastung schnell an die 80°C. Die Lüfter drehen ja ständig, weil die CPUs konstruktionsbedingt so heiß werden.
Das kann man einfach über "Register Write Configuration" machen, ein weiteres Steuern des Lüfters ist dann nicht vorgesehen.
Als kleiner Trick: ich habe einfach als Read Register 92 eingetragen und als Write Register 102 (Werte wie oben). Dann werden zusätzlich die Temperatur und die Drehgeschwindigkeit richtig angezeigt. Eine Steuerung ist natürlich nicht möglich.
2. Weg: Permanentes Überschreiben der Werte, indem man die oben beschriebenen Werte richtig einträgt. Damit das Bios diesen Wert allerdings nicht ständig überschreibt, muss man das Polling-Intervall unter 3000ms reduzieren. Wenn man das Polling-Intervall zu sehr reduziert, tritt der im nächsten Post beschriebene Effekt auf, dass das OS-Power-management nicht mehr einwandfrei funktioniert. Zudem stimmen die Werte in Reg 88 nicht mehr, was allerdings nicht der von nbfc verwendete Wert ist.
Nach zahlreichen Versuchen und Stresstests habe ich das
Polling-Intervall auf 1700ms gesetzt. Hier wirkt sich der Bios-Eingriff nicht merklich auf die Lüftersteueurung aus, gleichzeitig treten im EC kaum Fehler mehr auf.
Achtung! Beim 2. Profil kann es zu Systemabstürzen und Problemen in der Erkennung der Batterie kommen. An der Unterseite des Laptops ist ein Reset-Button für den Akku, den man bei ausgestecktem Stromkabel und ausgestelltem Notebook 10sek gedrückt halten muss.
Ursache für die Abstürze und Akkufehler ist das "Fast-Polling", das in den Folgeposts beschrieben wird. Ich schlage daher vor, das Profil nur bei Bedarf zu aktivieren - also zum Beispiel während einer Vorlesung oder einer Besprechung und es anschließend wieder zu deaktivieren.
Noch besser wäre natürlich, wenn jemand das Manual Control Register wüsste....
Hauptproblem ist allerdings, dass die Sony Vaio Notebooks so schlecht designed sind, dass sie bereits unter mittlerer Last sehr heiß werden und daher Kühlung benötigen!!! Ich empfehle daher parallel mal einen Blick auf ThrottleStop zu werfen.
@Grantig: Um richtige Geschwindigkeitswerte anzuzeigen, ist hier eine Verbesserung Deines Programms notwendig - man müsste MIN und MAX- Werte getrennt für das READ und WRITE Register angeben können (!)
Jetzt müssten bitte noch Besitzer dieser und anderer Geräte der Vaio Fit Multi-Flip Reihe bestätigen, dass meine Einstellungen funktionieren, damit ich den Kasten Bier bekomme.
Liebe Grüße,
Der Broker
PS: Habe beide Profile angehängt. Anhang anzeigen Configs_6.zip (v6: Polling Intervall auf 1750 erhöht, Thresholds verfeinert)
P.P.S: Wenn man sich die Werte und die Lüftergeschwindigkeiten anschaut, sieht man erst einmal wie schlecht Sony mit den letzen Updates eigentlich herumgetrickst hat. Einerseits erreicht das Notebook (regulär) nie mehr die echte maximale Drehgeschwindigkeit und andererseits sind die hinterlegten Temperaturprofile auch nicht durchdacht.
P.P.P.S.: Sobald hier Bestätigungen eintrudeln, dass der Weg funktioniert, werde ich eine englische Zusammenfassung verfassen.