diff --git a/main/fan_controller.cpp b/main/fan_controller.cpp index f4dce63a8..a489fd7c9 100644 --- a/main/fan_controller.cpp +++ b/main/fan_controller.cpp @@ -84,7 +84,10 @@ void FanController::loadSettings() void FanController::update(float chipTempMax, float vrTemp) { - // Temperature input per channel: ch0=chip, ch1=VR + // Overheat thresholds use original per-channel temps (ch0=chip, ch1=VR) + float overheatInput[MAX_FANS] = { chipTempMax, vrTemp }; + + // PID temperature input per channel: ch0=chip, ch1=VR float tempInput[MAX_FANS] = { chipTempMax, vrTemp }; // only 2nd channel can be linked @@ -102,8 +105,8 @@ void FanController::update(float chipTempMax, float vrTemp) m_pid[ch]->Compute(); } - // Overheat: drive fan to 100% and flag it (checked even in LINKED mode for shutdown purposes) - if (m_config[ch].overheatTemp && tempInput[ch] > m_config[ch].overheatTemp) { + // Overheat: use original temps, not PID-mixed temps + if (m_config[ch].overheatTemp && overheatInput[ch] > m_config[ch].overheatTemp) { m_overheated[ch] = true; m_fanPerc[ch] = 100; m_board->setFanSpeedCh(ch, 1.0f); diff --git a/main/http_server/axe-os/src/app/pages/edit/edit.component.ts b/main/http_server/axe-os/src/app/pages/edit/edit.component.ts index ebfbbb1f6..f53cc9852 100644 --- a/main/http_server/axe-os/src/app/pages/edit/edit.component.ts +++ b/main/http_server/axe-os/src/app/pages/edit/edit.component.ts @@ -398,9 +398,14 @@ export class EditComponent implements OnInit { const currentValue = this.normalizeValue(current[key]); const originalValue = this.normalizeValue(this.originalSettings[key]); - // Special case: masked password fields + // Masked password fields: unchanged if still '*****', changed otherwise if (typeof currentValue === 'string' && currentValue === '*****') { - continue; // User hasn't changed this field + continue; + } + // Fields not present in original settings (e.g. wifiPass): + // if we got past the '*****' check, the user has typed something new + if (originalValue === undefined || originalValue === null) { + return true; } if (currentValue !== originalValue) { diff --git a/main/http_server/axe-os/src/app/pages/home/home.component.html b/main/http_server/axe-os/src/app/pages/home/home.component.html index 33005cf79..256ef534c 100644 --- a/main/http_server/axe-os/src/app/pages/home/home.component.html +++ b/main/http_server/axe-os/src/app/pages/home/home.component.html @@ -209,7 +209,7 @@

{{ 'COMMON.SHUTDOWN' | translate }}