Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Changing the minimum fan speed from 1200 --> 0. #103

Open
jlehrer1 opened this issue Jul 13, 2020 · 1 comment
Open

Changing the minimum fan speed from 1200 --> 0. #103

jlehrer1 opened this issue Jul 13, 2020 · 1 comment

Comments

@jlehrer1
Copy link

Hi Hendrik.

I know this project hasn't been worked on for a while, so I am developing my own modern tool for the T2 chipped MacBooks.
Just one question -- how do I change the minimum fan speed from 1200 to zero? The 2019-2020 MacBook Pro's idle at 0 until ~40, and running the fans all the time even at low temperatures will add strain to the fan bearings, which I don't want to do unnecessarily.

Best,
Julian

@IChocked
Copy link

Hello @jlehrer1 ,

I'm not super familiar with the source code of this library, so if I'm wrong somebody please correct me, but I would take a look at smcFanControl/smc-command/README which has more detailed information about how the library works and which values you need to change to manipulate parts controlled in SMC.

Also, if you plan to use this tool in some way for your rewrite, you can force the fan speed to a certain value.

To set a fan to a specific speed:
FS!  - Sets "force mode" to fan.  Bit 0 (right to left) is fan 0, bit 1
       is fan 1, etc
F0Tg - Sets target speed, make sure you fp78 encode it (left shift by 2)

For example, to force both fans to 3500 RPM:
# python -c "print hex(3500 << 2)"
0x36b0
# smc -k "FS! " -w 0003
# smc -k F0Tg -w 36b0
# smc -k F1Tg -w 36b0

One thing I'm not sure of, though, is if the T2 chip will mess up this library. As described in Apple's description of the T2 chip, "By redesigning and integrating several controllers found in other Mac computers—such as the System Management Controller..." which may mean that you need to access SMC values in a different way that this library does. Will require some experimenting I think...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants