Skip to content

Commit d168e45

Browse files
committed
Merge branch 'introduce_20_percent_min_speed_on_clevo' into 'master'
Introduce 20 percent min speed on clevo See merge request tuxedocomputers/development/tuxedo-control-center!74
2 parents c193d16 + 03dd303 commit d168e45

File tree

3 files changed

+22
-17
lines changed

3 files changed

+22
-17
lines changed

src/native-lib/tuxedo_io_lib/tuxedo_io_api.hh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ public:
133133
}
134134

135135
virtual bool GetFansMinSpeed(int &minSpeed) {
136-
minSpeed = 0;
136+
minSpeed = 20;
137137
return true;
138138
}
139139

src/ng-app/app/profile-details-edit/profile-details-edit.component.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,7 @@ export class ProfileDetailsEditComponent implements OnInit, OnDestroy {
224224
if (!this.fansOffAvailable) {
225225
let minimumFanspeedValue = this.profileFormGroup.get('fan.minimumFanspeed').value
226226
this.profileFormGroup.patchValue({fan: {minimumFanspeed: minimumFanspeedValue < this.fansMinSpeed ? this.fansMinSpeed : minimumFanspeedValue}});
227+
this.viewProfile.fan.minimumFanspeed = this.viewProfile.fan.minimumFanspeed < this.fansMinSpeed ? this.fansMinSpeed : this.viewProfile.fan.minimumFanspeed;
227228
}
228229
}
229230

src/service-app/classes/FanControlLogic.ts

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -89,11 +89,10 @@ export class FanControlLogic {
8989
} else {
9090
this._fansMinSpeedHWLimit = speed;
9191
}
92-
this._minimumFanspeed = this._minimumFanspeed < this._fansMinSpeedHWLimit ? this._fansMinSpeedHWLimit : this._minimumFanspeed;
9392
}
9493

9594
/**
96-
* Jump from 0 to minimumFanspeed or never go below minimumFanspeed
95+
* Jump from 0 to _fansMinSpeedHWLimit or never go below _fansMinSpeedHWLimit
9796
*/
9897
private _fansOffAvailable: boolean = true;
9998
get fansOffAvailable() { return this._fansOffAvailable; }
@@ -112,16 +111,16 @@ export class FanControlLogic {
112111
get minimumFanspeed() { return this._minimumFanspeed; }
113112
set minimumFanspeed(speed: number) {
114113
if (speed === undefined) {
115-
this._minimumFanspeed = this._fansMinSpeedHWLimit;
114+
this._minimumFanspeed = 0;
116115
} else if (speed < 0) {
117-
this._minimumFanspeed = this._fansMinSpeedHWLimit;
116+
this._minimumFanspeed = 0;
118117
} else if (speed > 100) {
119118
this._minimumFanspeed = 100;
120119
} else {
121-
this._minimumFanspeed = speed < this._fansMinSpeedHWLimit ? this._fansMinSpeedHWLimit : speed;
120+
this._minimumFanspeed = speed;
122121
}
123122
}
124-
123+
125124
/**
126125
* Number added to table value providing an offset fan table lookup
127126
*/
@@ -137,7 +136,7 @@ export class FanControlLogic {
137136
} else {
138137
this._offsetFanspeed = speed;
139138
}
140-
}
139+
}
141140

142141
constructor(private fanProfile: ITccFanProfile, type: FAN_LOGIC) {
143142
if (type === FAN_LOGIC.CPU) {
@@ -195,24 +194,29 @@ export class FanControlLogic {
195194
newSpeed = 0;
196195
}
197196
}
198-
199-
// Limit falling speed change
200-
let speedJump = newSpeed - this.lastSpeed;
201-
if (this.lastSpeed > SPEED_JUMP_THRESHOLD && speedJump <= -MAX_SPEED_JUMP) {
202-
speedJump = -MAX_SPEED_JUMP;
203-
newSpeed = this.lastSpeed + speedJump;
204-
}
205197

206198
// Adjust for minimum speed parameter
207199
if (newSpeed < this.minimumFanspeed) {
200+
newSpeed = this.minimumFanspeed;
201+
}
202+
203+
// Adjust for hardware capabilities
204+
if (newSpeed < this._fansMinSpeedHWLimit) {
208205
if (this.fansOffAvailable && (newSpeed < (this._fansMinSpeedHWLimit / 2))) {
209206
newSpeed = 0;
210207
}
211-
else {
212-
newSpeed = this.minimumFanspeed;
208+
else if ((this.fansOffAvailable && !(newSpeed < (this._fansMinSpeedHWLimit / 2))) || !this.fansOffAvailable) {
209+
newSpeed = this._fansMinSpeedHWLimit;
213210
}
214211
}
215212

213+
// Limit falling speed change
214+
let speedJump = newSpeed - this.lastSpeed;
215+
if (this.lastSpeed > SPEED_JUMP_THRESHOLD && speedJump <= -MAX_SPEED_JUMP) {
216+
speedJump = -MAX_SPEED_JUMP;
217+
newSpeed = this.lastSpeed + speedJump;
218+
}
219+
216220
this.lastSpeed = newSpeed;
217221
return newSpeed;
218222
}

0 commit comments

Comments
 (0)