如何使用 TPFanCtrl2:ThinkPad 双风扇控制的三步完整指南

📅 2026/8/24 23:01:30
如何使用 TPFanCtrl2:ThinkPad 双风扇控制的三步完整指南
如何使用 TPFanCtrl2ThinkPad 双风扇控制的三步完整指南【免费下载链接】TPFanCtrl2ThinkPad Fan Control 2 (Dual Fan) for Windows 10 and 11项目地址: https://gitcode.com/gh_mirrors/tp/TPFanCtrl2深夜敲代码风扇毫无征兆地全速轰鸣白天负载上来机身发烫转速却不涨。这类散热不听话在 ThinkPad 上并不少见。TPFanCtrl2 是一款面向 Windows 10/11 的 ThinkPad 双风扇控制工具它绕过系统 API直接和 EC 对话、逐个写入两把风扇的档位全部散热行为由程序目录里一份TPFanControl.ini决定。定位TPFanCtrl2 解决了什么问题原版 TPFanControl 只带单风扇参数双风扇机型上第二把风扇够不着。TPFanCtrl2 在原版基础上并入双风扇改造支持两个风扇设备默认曲线偏安静60°C 之前风扇保持停转。它没有复杂的图形配置器行为全由 ini 文件控制。方面BIOS 内置策略TPFanCtrl2曲线写死Level行自由增删双风扇BIOS 统一调度逐把选择后分别写档位模式单一BIOS / Smart / Manual外加两套曲线可观测性黑盒每个传感器都标出寄存器地址日志可回放上手TPFanCtrl2 安装步骤与首次运行拿程序执行git clone https://gitcode.com/gh_mirrors/tp/TPFanCtrl2用 Visual Studio 2022 打开 fancontrol/ 里的fancontrol.sln选 Debug Win32 编译直接使用已编译的发行版可跳过此步。 ⚠️ 编译依赖仓库里的TPFCIcon与TPFCIcon_noballons两个子项目缺了它们主程序跑不起来。装 TVicPort 驱动它是程序读写 EC 寄存器的通道缺失时启动会报tvicport.sys missing届时只能看温度、动不了风扇。驱动位数要和系统一致。管理员运行右键fancontrol.exe在弹出菜单里选以管理员身份运行并确认TPFanControl.ini与 exe 同目录。没有管理员权限程序拿不到 EC 写权限。确认首次成功默认配置Active2启动即进 Smart 模式Cycle5每 5 秒读一轮温度。窗口左栏出现类似cpu 87°C (0x78)的条目、托盘图标带上温度数字就算接上了。✅Windows XP 到 8 均未测试官方口径只保证 Win10/11。能力核心功能逐个看三种模式BIOS、Smart、Manual解决什么不同时段想要系统管曲线管我说了算。怎么开窗口里点单选按钮或热键CtrlShiftB/CtrlShiftS/CtrlShiftM。改完你会看到底部 Status 行滚动出Fan: 0x07 / Switch: 87°C这类条目托盘图标按IconLevels65 75 80三级阈值变黄、橙、红。双风扇逐个调速解决什么双风扇机型第二把风扇没人管。怎么实现程序先往寄存器 0x31 写 0x00风扇 1或 0x01风扇 2选定目标再把档位写进 0x2F。改完你会看到Speed 栏显示成对转速例如4373/4373 RPM。手动模式的温度兜底解决什么想锁死低档位图安静又怕高负载下过热。怎么开Active3配合ManFanSpeed0和ManModeExit78。改完你会看到冷启动风扇不转温度一过 78°C 自动回到 Smart 模式。托盘温度图标解决什么窗口最小化后不想开窗口也知道热不热。怎么开ShowTempIcon1图标每IconCycle秒刷新一次。改完你会看到托盘里多出一个带温度数字的小图标气泡提示可用NoBallons关掉。配置TPFanControl.ini 配置示例Level行格式为Level温度 档位 hystUp hystDown后两列是升温、降温迟滞。以Level60 0 0 5为例温度升到 60°C 立即进入该档降回去则要再掉 5°C避免风扇在临界点来回扑动。曲线一深夜码字默认值风扇晚启动、低档停得久Level50 0 0 0 Level60 1 0 0 Level70 2 0 0 Level80 4 0 0 Level90 7 0 0预期效果50°C 以下全静90°C 才见 7 档。曲线二长负载渲染每 10°C 爬一档顶端留应急档Level45 1 0 0 Level55 3 0 0 Level65 5 0 0 Level75 7 0 0 Level85 64 0 0预期效果55°C 以下风扇已在 3 档。⚠️ 64 属于极端档可能是厂商未定义的工况Lev64Norm1时它按普通档带迟滞运行否则表现为脉冲式应急。128 不是档位含义是把控制权交还给 BIOS。曲线三会议超静音第二套曲线一键切换MenuLabelSM2会议超静音/ Level255 0 0 0 Level265 1 0 0 Level275 3 0 0 Level285 7 0 0预期效果托盘菜单或CtrlShift2切到这套曲线白天跑满速、开会切低噪。 0–7 是厂商预留的档位集合写十六进制 0–128 可以更细地控制风扇128 的写法是 80。原理背后的 EC 对话链路ThinkPad 的 EC嵌入式控制器是独立小板管电源、电池和风扇。TPFanCtrl2 所有寄存器读写都经 TVicPort 驱动转发一整圈控制回路分六步每Cycle默认 5秒批量读回 0x78 起 12 个传感器寄存器按IgnoreSensors剔除干扰项、用SensorOffset修正取最高温最高温对照Level曲线逐级比对叠加迟滞得出目标档位向 0x31 写 0x00/0x01选中风扇 1 或风扇 2向 0x2F 写目标档位并回读 0x2F 校验写成功读 0x84 处的 16 位转速值把 RPM 更新到界面和日志。一句话串起来温度寄存器 → 最高温 → 曲线匹配 → 选风扇 → 写档位 → 读转速 → RPM 反馈。 动 EC 之前程序要拿到名为Access_Thinkpad_EC的系统互斥锁避免和 BIOS、其他监控软件互相踩连续 10 次读失败MaxReadErrors则自动退回 BIOS 并退出。懂这条链路就能解释两个参数为什么这么设Cycle调太小每轮都要走一遍 EC 读写假读会更多Level不写迟滞温度停在阈值附近时档位会反复横跳。排障四道常见坑症状原因解法启动提示tvicport.sys missingTVicPort 没装或驱动位数不符重装驱动并核对系统位数风扇完全不动权限不足或与其他监控软件争抢 EC提权到管理员重跑关掉其余硬件监控工具一把风扇提速、另一把没跟上EC 通信偶发延迟切到 BIOS 模式再切回原模式通常能恢复单风扇机型 RPM 显示 0已知问题修复中等新版或临时换用 archive/ 里的 2.1.5B⚠️ 机型方面两条P50 的控制参数不同走archive/里的 2.1.5B该版温度显示有已知缺陷建议手动模式部分 ThinkBook 使用另一套 EC 地址先短时间试用再决定长期跑。生态版本、分支与参与方式主线当前为 2.3.3 Dual Fan老版本和机型衍生版收在archive/例如 2.1.5bP50 用与 2.2.0a。FanDjango 的 V2.3.9 分支正在做一次大重构日志措辞和界面细节重新梳理新增型号支持以早期测试形式发布反馈足够后可能并入主线。已确认支持的机型包括 P53、Z13、Z16 Gen1/Gen2、P16 Gen1 AMD、T16 Gen1 AMD、X1 Carbon Gen12、X230T、P1 Gen7。代码与二进制均为公共领域Unlicense随意使用、再分发。最低参与门槛是反馈在自己机型上验证兼容性、或分享一份跑通过的曲线对项目的价值不亚于修一个 bug。要写代码的话提 PR 并至少通过 1 次 review 即可合入。收尾落地清单先把原始TPFanControl.ini备份一份改坏了能随时还原确认 TVicPort 装好、启动方式固定为以管理员身份运行默认曲线原样跑一周顺手把Log2csv1打开导出温度历史按使用场景换一套曲线核对风扇动作是否对得上阈值启用第二套曲线与热键验证CtrlShift2切换即时生效机型遇到兼容问题把型号报给项目 Issues下次深夜风扇突然吼起来你手上有的是能改的曲线而不是只能忍着——每次改动5 秒内就能看到结果。【免费下载链接】TPFanCtrl2ThinkPad Fan Control 2 (Dual Fan) for Windows 10 and 11项目地址: https://gitcode.com/gh_mirrors/tp/TPFanCtrl2创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考