Shuzhengz / TPFanCtrl2

ThinkPad Fan Control 2 (Dual Fan) for Windows 10 and 11
The Unlicense
264 stars 23 forks source link

Failed to Read on Z16 Gen 1 #45

Open aricursion opened 1 year ago

aricursion commented 1 year ago

When I run the program on my Z16 Gen 1 (Windows 11) I get repeated iterations of

8/2/2022 7:03:37 PM] failed to read FanSpeedLowByte 2 from EC
[8/2/2022 7:03:37 PM] failed to read FanSpeedHighByte 2 from EC
[8/2/2022 7:03:37 PM] failed to read FanSpeedLowByte 1 from EC
[8/2/2022 7:03:37 PM] failed to read FanSpeedHighByte 1 from EC
Shuzhengz commented 1 year ago

does it constantly print that or does the fan control work but sometimes fail to read from EC?

aricursion commented 1 year ago

Apologies for not being more specific, it constantly prints that and is unable to detect the fans.

Shuzhengz commented 1 year ago

hm it seems like the EC address for fan speed on your laptop is different try downloading rweverything, and then open the embedded controller currently the fan status is set at 0x84, meanthing that it should be at the 80 row and 04 column in word 16 bit mode, like this:

image

(ignore the 05 from the 0504 as it is not important)

as in the picture the fan speed is currently at 0BD9, which is 3033 rpm in hex

because i don't have your model of laptop, it would be great if you can try and find a falue that corresponds to how your fan behaves (you can use a stress test)

also note that 0x95 (90 x 0504) has been seen as the fan speed address on thinkbooks before

Thank you!

elikrief commented 1 year ago

Hi any news on this ?

Shuzhengz commented 1 year ago

Hi Basically I don't have the laptops to test on them, so I would actually require information from the users to fix bugs since different models of laptops might have different EC addresses (which is the case for this issue) So yeah I don't have any updates on this, sorry about that

NeariX67 commented 1 year ago

I'm getting the same error messages on my new Thinkpad E14 Gen 4. The fan speed is located at the exact same bytes as in your screenshot. Compiling myself does not work. I was missing the tvicport.dll, after installing/providing the dll file the application does not load and is stuck throwing exceptions.

'fancontrol.exe' (Win32): Loaded 'C:\Users\User\Documents\GitHub\TPFanCtrl2\fancontrol\Debug\fancontrol.exe'. Symbols loaded.
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\ntdll.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\kernel32.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\KernelBase.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\user32.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_a8625c1886757984\comctl32.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\win32u.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\msvcrt.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\gdi32.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\gdi32full.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\msvcp_win.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\ucrtbase.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\advapi32.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\sechost.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\rpcrt4.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\shell32.dll'. 
'fancontrol.exe' (Win32): Loaded 'C:\Users\User\Documents\GitHub\TPFanCtrl2\fancontrol\TVicPort.dll'. Module was built without symbols.
'fancontrol.exe' (Win32): Loaded 'C:\Windows\SysWOW64\imm32.dll'. 
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
Exception thrown at 0x75EBE4C2 (KernelBase.dll) in fancontrol.exe: 0x000006A6: Die Bindungsnummer ist unzulässig.
The thread 0x4268 has exited with code 0 (0x0).
The thread 0x4754 has exited with code 0 (0x0).
The thread 0x31ac has exited with code 0 (0x0).
The program '[13820] fancontrol.exe' has exited with code 0 (0x0).
Shuzhengz commented 1 year ago

I'm getting the same error messages on my new Thinkpad E14 Gen 4. The fan speed is located at the exact same bytes as in your screenshot.

Compiling myself does not work. I was missing the tvicport.dll, after installing/providing the dll file the application does not load and is stuck throwing exceptions.

Hi

Sorry I can't manage to reproduce this, but since the exception is thrown at KernelBase.dll it probably has something to do with Visual Studio on your machine. Can you check to make sure that Desktop Development with C++ is installed with VS? Recompiling the entire project could also help

Thank you

NeariX67 commented 1 year ago

Yes, Desktop development is the only thing i've installed, as it's needed for Flutter. Also tried to clean the project and recompile without success.

Shuzhengz commented 1 year ago

Can you try installinng C++/CLI support for v143 build tools, C++ MFC for latest v143 build tools and C++ ATL for latest v143 build tools packages for Visual Studio?

NeariX67 commented 1 year ago

Still the same issue sadly

Shuzhengz commented 1 year ago

sadly I don't really know what might be causing this issue (seem like the program is seeking the wrong address for KernelBase, so my guess is it's a dependency issue). I have these dependencies installed, maybe check if you have the same ones as well?

image image

sorry about that

M0R1TZ1998 commented 1 month ago

Are there any news? I also have a Z16 Gen 1. I have ThinkPad Fan Control 0.62 installed and it reads the sensors and i can control one fan of the device, the other one not.

GetenJoki commented 17 hours ago

Hi there, i am also having issues on my Thinkpad X13 (with two small fans). Getting the same error message as above.

Any chance of getting this fixed?

[2024-06-30 21:07:23] Current Config: [2024-06-30 21:07:23] Active= 2, Cycle= 5, FanBeep= 0 0, MaxReadErrors= 10 [2024-06-30 21:07:23] IconLevels= 65 75 80, NoExtSensor= 0, Lev64Norm= 1 [2024-06-30 21:07:23] Log2File= 0, Log2csv= 0, ShowAll= 0, IconColorFan= 1 [2024-06-30 21:07:23] Levels= 50° C -> 0, 60° C -> 1, 70° C -> 2, 80° C -> 4, 90° C -> 7 [2024-06-30 21:07:23] SensorOffset1-12= 0 0 0 0 0 0 0 0 0 0 0 0 ° C [2024-06-30 21:07:23] IgnoreSensors= no5, ProcessPriority= 2, IconCycle= 1 [2024-06-30 21:07:23] BluetoothEDR= 0, NoWaitMessage= 1, ShowBiasedTemps= 1 [2024-06-30 21:07:23] ManModeExit= 78, SecWinUptime= 0, SecStartDelay= 0

[2024-06-30 21:07:23] Windows uptime since boot 915 sec., SecWinUptime= 0 sec. [2024-06-30 21:07:26] failed to read FanSpeedLowByte 2 from EC [2024-06-30 21:07:26] failed to read FanSpeedHighByte 2 from EC [2024-06-30 21:07:26] failed to read FanSpeedLowByte 1 from EC [2024-06-30 21:07:26] failed to read FanSpeedHighByte 1 from EC [2024-06-30 21:07:30] failed to read FanSpeedLowByte 2 from EC [2024-06-30 21:07:30] failed to read FanSpeedHighByte 2 from EC [2024-06-30 21:07:30] failed to read FanSpeedLowByte 1 from EC [2024-06-30 21:07:30] failed to read FanSpeedHighByte 1 from EC [2024-06-30 21:07:34] failed to read FanSpeedLowByte 2 from EC [2024-06-30 21:07:34] failed to read FanSpeedHighByte 2 from EC [2024-06-30 21:07:34] failed to read FanSpeedLowByte 1 from EC [2024-06-30 21:07:34] failed to read FanSpeedHighByte 1 from EC [2024-06-30 21:07:34] Warning: can't read Status, read error count = 0 [2024-06-30 21:07:34] We will close to BIOS-Mode after 10 consecutive read errors