An alternative to rather bloat utilities provided by MSI itself.
As for now only 64-bit Windows is supported, but according to this
it's possible to make WMI ACPI work under Linux, so definitions.mof
file from this project and some
hacking should be enough to port this thing to Linux.
Can be built out-of-the-box by Visual Studio 2015
, solution/project files can be rather easily upgraded/downgraded to desired
version of studio/msvc compiler as no ultra-modern cutting edge MS technologies are used.
You'll need those files from MsiFanControl\bin\Release
or MsiFanControl\bin\Debug
:
CLAP.dll
MsiFanControl.exe
MsiFanControl.exe.config
MsiWmiAcpiMof.dll
MsiWmiAcpiMof.reg
At least on my laptop reaction to the control value changes is not immediate, transition to new RPMs is smooth and takes some time.
Run msifancontrol install
and follow instructions. This is needed only once, and changes are system-wide
(meaning it's not necessary to do this for each user profile, just once will be enough)
Pro tip: use msifancontrol install /y
for Chuck Norris mode (no questions asked)
- Auto: Default behaviour of fans. In this profile they will work as if no custom control software were ever used. I'm not a big fan of this mode. Get it? This is funny, right?? Aaw, my sense of humor is even worse than my tech skills.
- Basic: Basic control mode allows to adjust overall speed of fans with one "offset" value in [-15;15] range
- Advanced: Advanced control mode allows to adjust the curve which represents fan speed function of temperature. Exact temperatures at which next tier kicks in are unknown, those tiers are possibly hardware model dependent. What is known, is that they go from most cool to most hot. Range for each value is [0;150], don't ask me why, MSI design.
Examples:
msifancontrol advanced /cpu:20,45,55,65,70,75 /gpu:0,20,40,60,80,80
msifancontrol basic /value:-15
msifancontrol auto
msifancontrol status
Using built-in wmiacpi.sys Windows driver with MSI custom-made MOF definitions. This repo could also help to understand what is going on.