查看: 10474|回复: 20

[其它] 机械革命 S1 (及大部分微星系列笔记本) macOS CPU风扇转速控制

[复制链接]
lgs3137 发表于 2020-2-3 17:25 | 显示全部楼层 |阅读模式
快御云安全
开源地址:https://github.com/lgs3137/MSIFanControl

目前已在机械革命S1、微星PS42系列、微星GP62上测试有效


可控制CPU风扇的6个档位转速,6 个档位的对应温度是由主板 EC 固件控制的,不可修改。原理参考Win下控制软件高级模式的6个档位。


使用命令:MSIECControl 0 30 50 60 80 100

可输入数值 0~100 空格分隔 6 个档位,分别表示1~6 个档位对应 CPU 风扇的转速率,0 表示停止运转,80 表示  80% 的风扇转速率。


SSDT-FANQ.aml 添加到 Clover 的 EFI/CLOVER/ACPI/patched 目录


MSIFanService.kext 添加到 Clover 的 EFI/CLOVER/kexts/Other 目录


MSIECControl 解压到桌面或其他位置,然后打开终端,把 MSIECControl 文件拖到 终端 中再输入指令即可。





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
Sunny、今夕何夕 发表于 2020-3-21 17:33 | 显示全部楼层
您好,请问能否把做这个补丁的思路讲一下吗?我是雷神的本子,用不了。
回复

使用道具 举报

lgs3137  楼主| 发表于 2020-3-23 12:47 | 显示全部楼层
Sunny、今夕何夕 发表于 2020-3-21 17:33
您好,请问能否把做这个补丁的思路讲一下吗?我是雷神的本子,用不了。

Win和Linux下内核都会把EC固件挂载到上层用户(管理员)可以访问的路径下,但是黑苹果不会把EC挂载,所以这样决定了主板BIOS提取的DSDT里必须得有对应的控制EC方法才能实现控制。我开源的地址里面有个hotpatch就是先在dsdt里面找到对应控制EC的方法,然后增加一个新方法用来接收输入的控制数据。之后再写一个kext驱动,这个驱动用来做dsdt的新增的acpi控制输入参数与Mac应用层传输参数的桥梁,最后通过应用层的一个二进制工具来实现用户输入参数并处理成符合要求的格式后转给kext驱动发送到acpi新增的方法,从而实现黑苹果下控制风扇转速等设置。
回复

使用道具 举报

Sunny、今夕何夕 发表于 2020-3-23 15:15 | 显示全部楼层
lgs3137 发表于 2020-3-23 12:47
Win和Linux下内核都会把EC固件挂载到上层用户(管理员)可以访问的路径下,但是黑苹果不会把EC挂载,所以 ...

我知道了,就是通过原始的APCI查找对应控制风扇的参数是吧。
通过获取EC中电池方法区里面的风扇相关参数以及比_TZ温控风扇区之类的参数,去做一个可以手动控制风扇转速的热补丁是吧。
我查了很多资料,并且在宪武大佬的OC-litle补丁库中也没有相关风扇的修补方法,只有P-litle补丁库里面有提及到,但具体怎么修补,查什么可以获取到风扇的相关参数也都并没有提及,是不是说明风扇的修补方法是不通用的呢?
回复

使用道具 举报

lgs3137  楼主| 发表于 2020-3-25 18:08 | 显示全部楼层
本帖最后由 lgs3137 于 2020-3-25 18:10 编辑
Sunny、今夕何夕 发表于 2020-3-23 15:15
我知道了,就是通过原始的APCI查找对应控制风扇的参数是吧。
通过获取EC中电池方法区里面的风扇相关参数 ...

微星的是直接读写EC存储区域的,所以可以利用RWEverything实时监测EC存储区域,并配合Win下官方的控制软件,对比下EC区域的变化差异找出来的,当然微星的已经有大神几乎全部找出来了。
蓝天模具的好像是以前有大神专门反编译了官方控制软件逆向找出来的ACPI对应的方法。
所以你要是其他机型的话,如果不能用RWEverything实时监测配合官方控制软件微调来判断差异的方法找的话,可能只有反编译官方控制软件逆向来找了。
回复

使用道具 举报

sjqboss 发表于 2020-4-22 20:31 | 显示全部楼层
楼主,你github上S1的OC引导配置文件是不是有问题,按照你的BIOS设置,引导卡在苹果logo
回复

使用道具 举报

87zrjojo 发表于 2020-5-25 21:08 | 显示全部楼层
这篇技术贴真棒,不知道楼主能不能写篇关于风扇转速的帖子,介绍下具体怎么监控风扇转速,查找EC区域的参数和设置DSL等?我是微星本本,真诚希望楼主赐教!期待楼主的慷慨作品!!
回复

使用道具 举报

1228746126 发表于 2020-5-25 21:22 | 显示全部楼层
谢谢分享
回复

使用道具 举报

taamo 发表于 2020-7-12 22:47 | 显示全部楼层
难的的技术贴,谢谢分享
回复

使用道具 举报

wings110 发表于 2021-1-4 15:42 | 显示全部楼层
lgs3137 发表于 2020-3-25 18:08
微星的是直接读写EC存储区域的,所以可以利用RWEverything实时监测EC存储区域,并配合Win下官方的控制软件 ...

请问蓝天的哪里有啊
回复

使用道具 举报

a615275791 发表于 2021-5-21 22:01 | 显示全部楼层
这么实用的技术,怎么没有更新了呢。KEXT在OC下启动好像有问题,可惜自己对驱动一窍不通,不然可以稍加改改,应该不是很大的问题。
回复

使用道具 举报

a615275791 发表于 2021-5-22 12:30 | 显示全部楼层
发现是我自己加驱动没有配置info.plist的路径,配合SleeperX 添加合盖事件,唤醒事件,再加个启动项已经完美使用了,机型是GS65  感谢楼主的分享
回复

使用道具 举报

a615275791 发表于 2021-5-22 12:37 | 显示全部楼层
现在温度升高了,EC默认的转速又太低,前几天热的时候温度太高都死机过一回,在win下可以改转速温度要好很多,搞得我都想换到win上用了。现在好了,macos上也舒服了。再顶一下贴
回复

使用道具 举报

fuyukang 发表于 2021-9-5 20:46 来自手机 | 显示全部楼层
谢谢楼主分享
回复

使用道具 举报

fuyukang 发表于 2022-1-26 20:06 来自手机 | 显示全部楼层
谢谢楼主分享
回复

使用道具 举报

2390363806 发表于 2022-7-1 16:35 | 显示全部楼层
a615275791 发表于 2021-5-22 12:30
发现是我自己加驱动没有配置info.plist的路径,配合SleeperX 添加合盖事件,唤醒事件,再加个启动项已经完美 ...

你好可以问下这个路径要怎么配吗,同GS65
回复

使用道具 举报

a615275791 发表于 2022-7-2 01:13 | 显示全部楼层
2390363806 发表于 2022-7-1 16:35
你好可以问下这个路径要怎么配吗,同GS65

就是检查下这个驱动的executePath和PlistPath,用工具加添加的时候,默认的路径是不对的

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

2390363806 发表于 2022-7-2 01:52 | 显示全部楼层
a615275791 发表于 2022-7-2 01:13
就是检查下这个驱动的executePath和PlistPath,用工具加添加的时候,默认的路径是不对的

感谢,老哥顺便问下,我三码注入的是15年的pro,但是关于本机里显示的是18年的pro,你有这种情况吗
回复

使用道具 举报

2390363806 发表于 2022-7-2 01:55 | 显示全部楼层
2390363806 发表于 2022-7-2 01:52
感谢,老哥顺便问下,我三码注入的是15年的pro,但是关于本机里显示的是18年的pro,你有这种情况吗

点进系统报告里看是MacBookPro15,2了,关于本机显示的就是2018,很奇怪
回复

使用道具 举报

a615275791 发表于 2022-7-2 02:33 | 显示全部楼层
2390363806 发表于 2022-7-2 01:55
点进系统报告里看是MacBookPro15,2了,关于本机显示的就是2018,很奇怪

这个显示应该只跟设置的机型有关系,机型还是不要随便改,会影响配置,gs65最合适的感觉还2018 15.1的,就是同cpu的那款。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋手机版联系我们

Copyright © 2005-2025 PCBeta. All rights reserved.

Powered by Discuz!  CDN加速及安全服务由「快御」提供

请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。

远景在线 ( 苏ICP备17027154号 )|远景论坛 |Win11论坛 |Win10论坛 |Win8论坛 |Win7论坛 |WP论坛 |Office论坛

GMT+8, 2025-4-25 12:50

快速回复 返回顶部 返回列表