BartoszCichecki / LenovoLegionToolkit

Lightweight Lenovo Vantage and Hotkeys replacement for Lenovo Legion laptops.
GNU General Public License v3.0
5.53k stars 249 forks source link

Power Plan changes to custom when toolkit is launched #1397

Closed andredalmolin closed 2 months ago

andredalmolin commented 2 months ago

Rules

Version

2.23.1

OS

Windows 11 Pro 23H2 22631.4037

Device

Legion Pro 5 16IRX8

BIOS version

KWCN44WW

What's wrong?

I always use my Legion in performance mode, but sometimes when I open the toolkit, the program changes the power plan to custom. As soon as I change again to performance mode, LTT changes back again to custom mode.

How to reproduce the bug?

Open the toolkit in performance mode The energy mode will be changed to custom.

What is the behavior that you expected?

Keep the power mode without changing.

Logs

log_2024_08_19_14_51_11.txt

Additional information

Here is a video showing the issue.

https://github.com/user-attachments/assets/7f840260-f818-4d7c-a644-e0aecc550d9c

BartoszCichecki commented 2 months ago

There are two "power modes" that Lenovo internally uses:

  1. Smart Fan mode
  2. Thermal mode

In general, these two are synchronised and they should be synchronised. On your machine hardware indicated that Smart Fan mode was set to Performance:

[19/08/2024 14:51:11.463] [7] [AbstractWmiFeature.cs#35:GetStateAsync] State is Performance [feature=PowerModeFeature]

and thermal mode was set to Custom (which is called "GodMode" internally in LLT):

[19/08/2024 14:51:13.560] [34] [AbstractWMIListener.cs#74:Handler] Event received. [value=GodMode, listener=ThermalModeListener]

that's why it switches to Custom as Thermal Mode takes priority.

You also have Vantage running in background:

[19/08/2024 14:51:11.437] [7] [AbstractSoftwareDisabler.cs#34:GetStatusAsync] Running services count: 2. [type=VantageDisabler, services=ImControllerService,LenovoVantageService]
[19/08/2024 14:51:11.437] [7] [AbstractSoftwareDisabler.cs#35:GetStatusAsync] Running processes count: 8. [type=VantageDisabler, processes=Lenovo.Modern.ImController,LenovoVantageService,LenovoVantage-(VantageCoreAddin),LenovoVantage-(LenovoGamingSystemAddin),LenovoVantage-(LenovoServiceBridgeAddin),LenovoVantage-(GenericMessagingAddin),LenovoVantage-(DeviceSettingsSystemAddin),LenovoVantage-(GenericTelemetryAddin)]

As stated in the readme that might cause conflicts and strange behavior. Giving all that, nothing I can do here, before you start respecting recommendations in the readme.