So, now we can read the value from these registers in some units and then we will have to use some formula to convert that unit to RPM. So, searching for TAH0 or TAH1 we can see that they are located at offset 0x93 Note: Instead of using RWEverything if you have a look at method TACH you can see that it stores the values in TAH0 and TAH1 depending upon the Args supplied. TSTP, 16, // TSTP stores current fan value in some bytes TAH1, 16, // TAH1 stands for FAN2 (in case your laptop has 2 fans) So, when we search for Offset 0x93 in the DSDT we get a result like this: If you observe, the FAN speed is at offset 0x93 of EC (Use RWEverything to find out) There are multiple methods in our DSDT that allow us to read and control system FAN.įor example to read FAN speed, there are two ways. But in ASUS machines there is a method that takes arguments and does this job automatically. Write a value to the EC and then release the object. Like, if it was HP instead of ASUS you would have to acquire a mutex object. The system FAN is generally controlled by the embedded controller (EC) but there are methods in ACPI that can let you read and control your system FAN.Īs you might know, ASUS machines are the best for hackintosh as they have the best written ACPI code. If someone get's it working using this SSDT on machines prior to haswell. I do not have hardware below Haswell so can't test. After a lot of playing around with ASUS acpi tables I have finally come up with a SSDT that will work nearly on all ASUS laptops (Haswell or above) for reading FAN RPM, CPU TEMP and also Custom Controlling FAN.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |