BartoszCichecki / LenovoLegionToolkit

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

[FEAT]: Fan Adjustment #1028

Open MlgmXyysd opened 8 months ago

MlgmXyysd commented 8 months ago

Rules

Version

2.16.2

OS

Windows 11 22H2 build 22621.2506

Device

Legion Y9000P 2023 IAH7H

Is your feature request related to a problem?

In Lenovo PC Manager, there is a feature that allows the cooling fan to run at full speed for a period of time, which is very useful for temporary cooling. I know I can adjust the fan run strategy in custom mode. However, custom mode does not work without being connected to the stock power supply. Need a similar feature that can quickly reduce computer temperatures.

How would you like the problem to be solved?

None

What alternatives have you considered?

None

Additional information

None

BartoszCichecki commented 8 months ago

I see, what is the point of using this function? Legions cools down very quickly, so why bother with max fans? In any case if you need to use max fans, it sounds like your fans needs some cleaning.

MlgmXyysd commented 8 months ago

I see, what is the point of using this function? Legions cools down very quickly, so why bother with max fans? In any case if you need to use max fans, it sounds like your fans needs some cleaning.

Usually it dissipates heat quickly, but sometimes not. Especially when running some software and games. These days I've been experiencing a lot of overheating of my computer, causing performance drops or crashes. It has improved after running computer manager's fan at full speed several times.

zzhzero commented 7 months ago

I see, what is the point of using this function? Legions cools down very quickly, so why bother with max fans? In any case if you need to use max fans, it sounds like your fans needs some cleaning.

like this https://www.legionfancontrol.com/

Customizing the relationship between speed and temperature is indeed a necessary requirement

d3adwolf commented 7 months ago

I see, what is the point of using this function? Legions cools down very quickly, so why bother with max fans? In any case if you need to use max fans, it sounds like your fans needs some cleaning.

Hi, I have a Lenovo Legion 7i Slim with RTX 4070 and I really need a button in Toolkit for max RPM because my left CPU fan is only spinning 4100/4700 RPM while the GPU is spinning 4600/4700, why this happens is not clear. I can through Custom Profile make it run at 4700 RPM, but there are wrong settings and the CPU drops frequencies. I'm waiting for a new Honeywell thermal paste, but at the moment I have a good thermal paste and a clean fan, but the CPU temperatures (which is Core i9-13900H) are close to 100 Celsius, 97 to be exact and I'm surprised the RPMs are 4100. So it would be nice to have on Perfomance Profile (red indicator) just turning the RPMs up to 4700 RPM. Thanks in advance for both the reply and all the work on the application.

d3adwolf commented 7 months ago

I will wait for a reply to my problem on the forum.

BartoszCichecki commented 7 months ago

So it would be nice to have on Perfomance Profile (red indicator) just turning the RPMs up to 4700 RPM. Thanks in advance for both the reply and all the work on the application.

That is not how it works. Can curve can only be changed in custom mode, so you can try using that. Otherwise it is only max fans which is not very good for fans because they are locked to max possible RPM. In general laptop will cool itself properly. If it doesn't that's a warranty issue.

BartoszCichecki commented 7 months ago

I see, what is the point of using this function? Legions cools down very quickly, so why bother with max fans? In any case if you need to use max fans, it sounds like your fans needs some cleaning.

like this https://www.legionfancontrol.com/

Customizing the relationship between speed and temperature is indeed a necessary requirement

LegionFanControl controls fans by directly manipulating EC memory. This is neither safe nor reliable and will not be part of LLT.

BartoszCichecki commented 7 months ago

These days I've been experiencing a lot of overheating of my computer, causing performance drops or crashes. It has improved after running computer manager's fan at full speed several times.

That sounds like a bigger issue and using max fans is just a workaround that will put unnecessary load on the fans.

Frosty-J commented 7 months ago

LegionFanControl controls fans by directly manipulating EC memory. This is neither safe nor reliable and will not be part of LLT.

Yeah, just had a look at it myself. Windows warns it's malicious when running the installer. Then memory integrity and the vulnerable driver blocklist need disabling to use it. Seems like it doesn't work on the LOQ - no fan curve table found. Would be nice to have, but if the same steps are required it seems out of scope for LenovoLegionToolkit which just needs admin.

dustojnikhummer commented 5 months ago

LegionFanControl controls fans by directly manipulating EC memory. This is neither safe nor reliable and will not be part of LLT.

Yeah, just had a look at it myself. Windows warns it's malicious when running the installer. Then memory integrity and the vulnerable driver blocklist need disabling to use it. Seems like it doesn't work on the LOQ - no fan curve table found. Would be nice to have, but if the same steps are required it seems out of scope for LenovoLegionToolkit which just needs admin.

I know the creator of LFC. LFC is now considered EOL. As you said, it only supports 2021 and 2022 models and uses rwdrv.sys, which we know is flagged as Defender. Afaik LLT can control fans on some models, but that is only on laptops supported by Lenovo Legion Arena. Give that a shot and see if your LOQ is supported.

kolosovpetro commented 3 months ago

+1 to this feature request tho

rango886 commented 3 months ago

https://github.com/johnfanv2/LenovoLegionLinux This project can control the fan of the Legion 7 16ACHg6 2021/r9000k, this project is controls fans by directly manipulating EC memory too?

rango886 commented 3 months ago

I found a project https://github.com/SmokelessCPUv2/Lagon-Fan-EC-Control It write by c#, directly manipulating EC memory, It has a similar interface to LenovoLegionToolkit This project supports legion 2020/2021 model, It is work on my Legion 7 16ACHg6 2021/r9000k Original repo has no release, I built a release, you can have a try https://github.com/rango886/Lagon-Fan-EC-Control/releases/tag/test

rango886 commented 3 months ago

This project https://github.com/SmokelessCPUv2/Lagon-Fan-EC-Control is great !!!! This project can write the curve directly to the EC, turn off the software or restart laptop, and the fan control will still work But when change mode(fn + q), fan curve wil be reset to default

rango886 commented 2 months ago

I've written a command-line tool that supports controlling legion fan speed on Windows !!! https://github.com/rango886/LegionFanEmbeddedController

Use this library https://github.com/GermanAizek/WinRing0 to access EC memory, written in C#, run with only administrator privileges I'm not very good at gui programming, and hopefully someone can integrate my project into the LenovoLegionToolkit

BartoszCichecki commented 2 months ago

@rango886 congrats on making the app. However as I said before using ring0 drivers isn't safe and therefore it will not be included in LLT.