Open michisha1 opened 2 years ago
After some more tests with the EC probing tool, i figuered out, that 0x08 or 0x60 are following the actual fan speed. The fans stopped exactly when 0x08 or 0x60 changed to 22. Before that 0x09 and 0x7f also change to 22, so i guess that they are the Registers for the target fan speed. I tried it several times and each time i got the same results. Here are some of the new readings. Ec-Register.txt
The problem is, that changing the value of register 0x09 or 0x7f didn't change the actual fan speeds, because 0x08 or 0x60 didn't respond to the changed values of Register 0x09 or 0x7f...
Now i also got the DSDT with RW, but i didnt discover the register to control the fan. The "qfan" register (0x61), which i discovered before with the ec-probing tool, is the one to switch between the standart (00), performance (02) and silent (01) fan mode. Perheps someone else can help me with this. DSDT.txt
In the SSDT i also found code for the Thermalzone and Fans, but unfortunately i dont understand it. Thermal zone, Fans (SSDT).txt
The values for the fan control are stored on SRAM2 (0xC200) which is not directly accessible by NBFC.
However, we can use this ite-ec tool to adjust the fan speed values manually.
ite-ec /W /4E4F 0xC2D1 0x0A
ite-ec /W /4E4F 0xC2D2 0x0A
ite-ec /W /4E4F 0xC2D3 0x0A
ite-ec /W /4E4F 0xC2D4 0x0A
ite-ec /W /4E4F 0xC2D5 0x0A
ite-ec /W /4E4F 0xC2D6 0x0A
ite-ec /W /4E4F 0xC2D7 0x0A
ite-ec /W /4E4F 0xC2D8 0x0A
ite-ec /W /4E4F 0xC2D9 0x0A
ite-ec /W /4E4F 0xC2DA 0x0A
ite-ec /W /4E4F 0xC2DB 0x0A
ite-ec /W /4E4F 0xC2DC 0x0A
ite-ec /W /4E4F 0xC2DD 0x0A
ite-ec /W /4E4F 0xC2DE 0x0A
I noticed that the ACPI accesses the embedded controller via the shared memory interface:
The size of the window is controlled by HRAMW1S:
If the window size is increased from 256byte to 512byte it is possible to also access the fan control profile via memory:
ite-ec /W /4E4F 0x105E 0x05
Thanks for your Input! On my Asus the OperationRegion is different.
In the memory Interface i get almost the same values as in the EC-Controller. Especially the TSR1-5 are the same and the ec-controller follows the memory. So if i change the Memory value the ec also changes like 1-2 sec later... But this doesn't help.
With the increased window size (256byte to 512byte) i only see a full window of "FF"s.
Furthermore i found some SSDT lines were FAN1 and FNCL is mentioned...
The values for the fan control are stored on SRAM2 (0xC200) which is not directly accessible by NBFC.
May i ask, how to open that SRAM interface in PowerShell and how you figuered out which adresses are connected to the fancontrol? Did the values change with the fan behavoir?
Hi, i tried to make nfc work with my Laptop to compensate for it's bad fan control. Therefore i've tried like all config's for Asus Laptops but no Config worked.
So i tried to to get the read and writing registers for this Laptop with the EC probing tool. I've tried to change some of the offsets that i got from the ec probing tool but nothing worked. I hope sb. can help me with this.
These were some of the Readings i got: EC-Readings.txt
I figuered out, that 0x0C was the temperature. It startet with no fan noise. Then with moderate prime95 the fan started spinning a little bit untill 0x0C at 37 then it went down again. After that and real stresstest with prime95 the temperature got up to like 85 to 90 degrees (0x0C = 45) and the fan ran at 100%. After that the fan slowly got slower until it stopped again at the End (0x0C = 24)
Sadly i wasn't able to figure out which one of the eh-registers was the read or write register ...
mfg Michael