Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

fqr

Neuer Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

...mein held, dit is ja wie weihnachten ;)!
werde ich gleich morgen mal testen, danke!
 

my username

Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

Hui super, danke.

Leider scheint da noch nicht alles so rund zu laufen.

Manuelle Steuerung funzt beispielsweise gar nicht mehr richtig und oft werden beide Bytes permanent alle X Sekunden auf 032 gesetzt.

SmartMode mit
Level=55 32
Level=65 6
funzt auch nicht mehr.
Lüfter bleibt komplett aus bis zum Exitus.

Config habe ich freilich die neue verwendet.


Werde bei Gelegenheit mal ausführlicher schreiben zum Debuggen. Bett ruft. :)

Danke jedenfalls schon mal, bekommen wir schon hin :D
 
Zuletzt bearbeitet:

my username

Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

Will leider noch nicht, hier ausführliche Infos:



Test Bios Mode


Funzt nicht, weil beide Bytes alle X Sekunden auf "0" gesetzt werden.

Wenn "Bios" in der GUI ausgewählt wird, müsste das richtige Verhalten eigentlich folgendes sein:

=> BiosControlByte (85) muss _einmalig_ auf BiosControlOn (0) gesetzt werden. Danach beide Bytes komplett in Ruhe lassen, keine Checks alle X Sekunden.

FanControlByte (94) kann bei "Bios" komplett ignoriert werden.
FanControlByte (94) darf _nicht_ auf FanAtBiosControl (laut Config: 0) gesetzt werden. Diese "0" gibt es nur für BiosControlByte (85) und ist auch nur dort nötig (einmalig). Die anscheinend nur für FanControlByte (94) vorgesehene Variable "FanAtBiosControl" (laut Config: 0) scheint mir somit überflüssig?



Test
Smart Mode

Level=55 32
Level=65 6
[16.04.2010 12:47:22] Fan: 001, Bios: 001, Switch: 43°C (43; 43;)
[16.04.2010 12:47:22] Smart: Set BiosControlByte 085 to 032, Result: ok
[16.04.2010 12:47:22] Smart: Set FanControlByte 094 to 032, Result: ok
Über 65 Grad passiert garnichts. :-/

Auch keine Einträge im Debug-Output trotz verb..=1 bei über 65 Grad.



Test Manual Mode

[16.04.2010 12:54:14] Change Mode from Smart->Manual, setting fan speed
[16.04.2010 12:54:14] Fan: 097, Bios: 032, Switch: 43°C (43; 43;)
[16.04.2010 12:54:14] Manual: Set BiosControlByte 085 to 032, Result: ok
[16.04.2010 12:54:15] Manual: Set FanControlByte 094 to 006, Result: ok

Ergebnis: Lüfter komplett aus, da 85 auf 32 steht.

Beispiel1: Richtiges Verhalten bei Manual "6" müsste sein:


=> BiosControlByte (85) muss _einmalig_ auf BiosControlOn (0) gesetzt werden. Danach das erste Byte BiosControlByte (85) komplett in Ruhe lassen.

=> FanControlByte (94) auf "6" setzen und alle X Sekunden checken, aber nur dann neu setzen, wenn es auch wirklich nicht mehr auf "6" stehen sollte. Ansonsten in Ruhe lassen.

Beispiel2: Richtiges Verhalten bei Manual "32" müsste sein:

=> BiosControlByte (85) muss _einmalig_ auf BiosControlOff (32) gesetzt werden. Danach beide Bytes komplett in Ruhe lassen, keine Checks alle X Sekunden.

FanControlByte (94) kann bei ManualMode@32 komplett ignoriert und in Ruhe gelassen werden.




Hope it helps. Tschaka! :)

Sonnige Grüße
 
Zuletzt bearbeitet:

gunthers

Neuer Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

troubadix, vielleicht kannst du ja mal deine verwendeten flussdiagramme posten - dann können wir das nochmal manuell prüfen, und man kann besser auseinanderhalten ob fehler im programmcode oder im ablauf stecken.
 

Mornsgrans

Neuer Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

Wäre es nicht einfacher, wenn man sich mal mit Acers und "Programmer's Tool" trifft?

Nur mal so in den Raum geworfen - das würde vielleicht troubadix' Arbeit ein wenig erleichtern.
 

troubadix

fan dompteur
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

@ my username:
na, das sind ja mal präzise infos:), aber wenn ich von manual 6 nach bios schalte muss man garnix machen?? Trotzdem, hab's mal versucht umzusetzen:

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

wo Mornsgrans auftaucht hat er meist recht ;) und ich ....keine Zeit ;(

edit: die Überwachung habe ich überall mal drin gelassen...
 
Zuletzt bearbeitet:

gunthers

Neuer Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

von manuell nach bios-kontrolle reicht es, 0x5E einmalig auf 00 zu setzen (oder 1,2,3,4..). Der Lüfter geht dann kurz auf die jeweilige Stufe, aber das Bios erkennt sofort das hier gepfuscht wird und übernimmt wieder die Kontrolle.

Daher darf 0x55 nicht ständig auf einem Wert gehalten werden - sonst kommt es zu erwähntem "kampf gegen das bios"-loop.

Soll also nur zwischen auto/aus geschaltet werden, müssen die Werte eigentlich gar nicht überwacht werden - das Bios interferiert bei dieser "C-Variante" nicht. Wenn man die Geschwindigkeit regeln will, muss nur 0x5E überwacht werden, das Bios korrigierend eingreift wenn die fest eingestellten Temperaturschwellen über/unterschritten werden (also mit "überwachen" meine ich jetzt natürlich nicht die temperatur, sondern die EC-WErte).

PS: soll ich nochmal nen ablauf schreiben?
 
Zuletzt bearbeitet:
H

HATHOR

Guest
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

@troubadix:

Was beim 5235 und 5635 alles anders ist im Vergleich zum EXTENSA 5220 habe ich noch nicht kapiert:

Beim EXTENSA 5220 gilt:
FAN_MODUS = 147;//93hex
FAN_SOLL = 148; //94hex
FAN_IST = 149; //95hex
FAN_MAN = 20; //14hex
FAN_AUTO = 4;

Beispiel:
FAN_MODUS = FAN_AUTO = EC-BIOS übernimmt Steuerung
FAN_MODUS = FAN_MAN = man muss in
FAN_SOLL = 0-255 Wert eingeben
FAN_IST = hier kann man die Drehzahl auslesen
Meine Formel: FAN_IST(readvalue) = 'RPM : '+floatToStr(trunc(1350000 / 4/readvalue));
Die maximale Drehzal ist ca. 3450 RPM bei meinem Lüfter.

Wie müsste es bei 5235 und 5635 aussehen?
 

gunthers

Neuer Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

in 0x5E stehen keine drehzahlen, sondern "stufen" (originär 1-4, wenn das bios übernimmt, aber anscheinend geht auch 6 für "leise").

in 0x5C stehen sowas wie Drehzahlen, ist jedenfalls der einzige Wert der sich "fliessend" ändert und bis ~250 hoch geht - den kann man aber nur auslesen, und nicht schreiben.

edit: was für offsets benutzt du denn beim 5250? check ich nich.
 
Zuletzt bearbeitet:

my username

Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

@ my username:
na, das sind ja mal präzise infos:), aber wenn ich von manual 6 nach bios schalte muss man garnix machen??

Ja, wenn man beispielsweise vorher "Manual: 6" genutzt hat und auf "Bios" umschaltet via GUI, würde das bedeuten:
Nix tun (weil Byte 85 ja eh schon auf Auto steht) und dann auch _keine_ Checks mehr alle X/Cycle Sekunden machen, sonst gibts wieder Ärger.

edit: die Überwachung habe ich überall mal drin gelassen...

Gerade getestet.
Das scheint aber eben nach wie vor das Hauptproblem zu sein.
Die Checks dürfen teilweise nicht stattfinden, so wie in meinem letzten Beitrag beschrieben.

Falls ich noch mit Infos helfen kann, gib einfach Bescheid.

Danke :)
 
Zuletzt bearbeitet:

gunthers

Neuer Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

Ja, wenn man beispielsweise vorher "Manual: 6" genutzt hat und auf "Bios" umschaltet via GUI, würde das bedeuten:
Nix tun (weil Byte 85 ja eh schon auf Auto steht)
arrgh, noch mehr Verwirrung. Nach nix tun passiert erstmal auch nix, bis zur nächsten bios-temp-schwelle... 0x55 hat immer die vom bios gewählte lüfterstufe als wert (auser er steht auf 32). 00 ist kein "auto-modus", man kann auch etwas anderes eintragen - wird sowieso sofort vom Bios überschrieben. geht nur darum, von "aus" wieder auf "an" zu kommen...
siehe auch nochmal mein vorigen post.
 

troubadix

fan dompteur
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

...geht nur darum, von "aus" wieder auf "an" zu kommen...
ahhja 8o, dann könnte man doch mal *kleinebrötchenbackmodus on* thermogesteuertes an/aus (00/32 in x55 (dez. 85)) programmieren ohne laufende Wertekontrolle *kleinebrötchenbackmodus off* :) aber gibt's das nicht:
Ralf Neumüller´s Freeware - Acer Aspire One (AA1) Fan Control ?(?(

@HATHOR: ich habe leider gar kein acer und mich aus der noch relativ homogenen Thinkpad-Welt hier her "verirrt" in der Annahme, auch ohne die entsprechende hardware ein Lüftersteuerungsprogramm an's Laufen bringen zu können *zweifel* wenn ich das richtig sehe wären bei Deiner Rechnung rpm-Werte von 1323 (read 255 FAN_IST) bis 337500 (read 1 FAN_IST) darstellbar, wo bei FAN_MODUS, FAN_SOLL, FAN_IST offsets und FAN_MAN und FAN_AUTO byte-Inhalte sind.
...soll ich nochmal nen ablauf schreiben?

langsam wird es unübersichtlich, da wäre schon ein Ablauf gut, den kann man programmieren, insbesondere wenn er dann vielleicht von anderen usern bestätigt wird.
 
Zuletzt bearbeitet:
H

HATHOR

Guest
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

EXTENSA 5220:
FAN 61% entspricht RPM 3400-3450* (deutlich hörbar)
Anmerkung: 100% geht nicht, weil bei 61% schon die Höchstdrehzahl* erreicht wird!
FAN 32% entspricht RPM 1928* (hört man kaum)
FAN 10% entspricht RPM 1467* (hört man nicht)
*hängt vom eingebauten Fan ab, der nur 3 Anschlüsse (+,-,Sensor) hat
und deshalb keine "richtige" PWM hat.

Beispiel:
readvalue=255
1350000 / 4/readvalue

1350000 / 4 = 337500
337500 / 255 = 1323 RPM (niedrigster Wert)

Ich habe mir vorgestern bei POLLIN einen Drehzahlmesser bestellt.
Mal sehen, ob die Formel stimmt...
 

my username

Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

arrgh, noch mehr Verwirrung. Nach nix tun passiert erstmal auch nix, bis zur nächsten bios-temp-schwelle... 0x55 hat immer die vom bios gewählte lüfterstufe als wert (auser er steht auf 32). 00 ist kein "auto-modus", man kann auch etwas anderes eintragen - wird sowieso sofort vom Bios überschrieben. geht nur darum, von "aus" wieder auf "an" zu kommen...
siehe auch nochmal mein vorigen post.

Äh ja, auch Verwirrung. Verstehe Deinen Post nicht.
War doch korrekt, was ich geschrieben habe... Da bei "Manual 6" Byte 85/0x55 eh schon auf "Auto" (also NICHT 32, welcher Wert auch immer ist ja egal) steht, ist mein Hinweis doch stimmig. Es wäre in dem exakten Fallbeispiel _keinerlei_ Setzen von Werten erforderlich. Danach hatte troubadix doch gefragt.

*grübel*
 
Zuletzt bearbeitet:

gunthers

Neuer Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

also nochmal:
Das Bios stellt die Stufe in 0x5E ein. Dann kopiert es den Wert nach 0x55. Es überwacht 0x55, und sobald dieser Wert nicht mehr mit der korrespondierenden Temperatur übereinstimmt, stellt es die korrekte Stufe in 0x5E ein. Und wieder von vorne...

Da 0x5E selbst nicht vom Bios überwacht wird, kann man dort manuell die Stufe einstellen. Beim überschreiten von Bios-temp-Schwellen wird dies aber wieder überschrieben, s.o.

Hat man jetzt manuell eine Stufe eingestellt, und will die Kontrolle wieder ans Bios zurückgeben, muss man in jedem Fall zunächst aufhören, 0x5E zu überwachen/korrigieren. Dann kann man entweder warten, bis das nächste mal eine Bios-Temp-Schwelle über/unterschritten wird, oder man "triggert" den Prozess, in dem man einen Wert in 0x55 schreibt - dann wird das Bios sofort aktiv, und korrigiert die Stufe in 0x5E.

ergo...
gunthers schrieb:
Nach nix tun passiert erstmal auch nix, bis zur nächsten bios-temp-schwelle..

Des weiteren verstehe ich auch nicht ganz, warum ihr überhaupt die Bios-Kontrolle einbaut - das wäre doch nur beim Verlasssen des Programms wichtig, oder? Jedenfalls in Variante B (steuerung der Lüfterstufe) würde doch das Tool anonsten immer die Lüfterstufen festlegen?

@ troubadix
ahhja :eek:, dann könnte man doch mal *kleinebrötchenbackmodus on* thermogesteuertes an/aus (00/32 in x55 (dez. 85)) programmieren ohne laufende Wertekontrolle *kleinebrötchenbackmodus off* :) aber gibt's das nicht:
Es gibt die "Variante C" schon mit der Verwendung von a1ctl und angepassten Werten, wobei mir nicht ganz klar ist wie stabil das funktioniert hat. AA1 FC funktioniert nicht mit diesem Acer, da man die Werte nicht manuell festlegen kann (und es für den Aspire One gebaut ist).

Trotz allem hast du ja auch in "Variante B" den Fall, dass der Lüfter ausgeschaltet ist (vom tool), und jetzt in einer festgelegten Stufe angeschaltet werden soll. Darauf bezog sich mein Post: es geht erstmal nur darum, den Lüfter anzusschalten (in 0x55, s.o.), danach die Stufe festlegen (0x5E). Du kannst nicht direkt die Stufe einstellen, solange 0x55 auf 32 steht, bleibt der Lüfter aus.

Ich schreib heute abend nochmal was, muss erstmal arbeiten.
 
Zuletzt bearbeitet:

fqr

Neuer Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

Es gibt die "Variante C" schon mit der Verwendung von a1ctl und angepassten Werten, wobei mir nicht ganz klar ist wie stabil das funktioniert hat.

das funktioniert, zumindest im netzbetrieb (mit ausgebautem akku) völlig stabil. lüfter aus bis grad x, dann stufe 6 (ist langsamer als die eigentliche atumatik in niedrigster stufe) bis grad y und ab grad z übernimmt dann die automatik. einziger schönheitsfehler: wenn die autom bei werten über 60 grad übernimmt, wirds sau laut... aber zum office arbeiten reichts.

hatte bislang noch keine zeit troubadix' neueste kreation zu testen, kann also beim rest noch nicht mitreden...werde aber wohl heute abend mal zeit finden...
 

my username

Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

Mahlzeit :)

Hat man jetzt manuell eine Stufe eingestellt, und will die Kontrolle wieder ans Bios zurückgeben, muss man in jedem Fall zunächst aufhören, 0x5E zu überwachen/korrigieren. Dann kann man entweder warten, bis das nächste mal eine Bios-Temp-Schwelle über/unterschritten wird, oder man "triggert" den Prozess, in dem man einen Wert in 0x55 schreibt - dann wird das Bios sofort aktiv, und korrigiert die Stufe in 0x5E.

Ja, das ist aber doch eben das, was ich mittlerweile in 2 oder 3 Posts (m.M.n. vollkommen korrekt) für troubadix beschrieben habe.
Zur Vereinfachung könnten wir den Trigger für Byte 85 erstmal weglassen, da irgendeine Temperaturschwelle ohnehin sehr schnell erreicht wird. Je nachdem, wie es für troubadix gerade einfacher ist.


Des weiteren verstehe ich auch nicht ganz, warum ihr überhaupt die Bios-Kontrolle einbaut - das wäre doch nur beim Verlasssen des Programms wichtig, oder?

Der Grund ist, dass das bisherige Programm ThinkpadFanControl inkl. dem dazugehörigen GUI als Basis dient.


Wie dem auch sei. Wir meinen es ja alle nur gut mit unseren Posts. :D

Schönes Wochenende uns bis später...
 

gunthers

Neuer Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

@ username

du hast recht. in dem "ersten" post sagst du:
my username schrieb:
Wenn "Bios" in der GUI ausgewählt wird, müsste das richtige Verhalten eigentlich folgendes sein:

=> BiosControlByte (85) muss _einmalig_ auf BiosControlOn (0) gesetzt werden. Danach beide Bytes komplett in Ruhe lassen, keine Checks alle X Sekunden.

FanControlByte (94) kann bei "Bios" komplett ignoriert werden.

Deine Antwort auf die Nachfrage von troubadix, "nix tun", fand ich dann allerdings nicht "vereinfachend", sondern verwirrend - siehe oben.

Schönes Wochenende!
 

my username

Benutzer
AW: Lüfterkontrolle 5235 / 5635 (z/g/zg): Testing

Deine Antwort auf die Nachfrage von troubadix, "nix tun", fand ich dann allerdings nicht "vereinfachend", sondern verwirrend - siehe oben.

Achso, deswegen, oke.

Ich glaube das ist aus troubadix Nachfrage heraus entstanden:
@ my username:
aber wenn ich von manual 6 nach bios schalte muss man garnix machen?

Hoffen wir mal, troubadix blickt noch durch.

Nun aber mal weg von der Kiste :D
 
Oben