Fan speed not detected by SMC monitor, HWMonitor, iStat Menus, iStat Pro.
The super I/O seems to be it8502e by RW everything.
my Laptop is dell inspiron 1464.
chipset HM55
CPU:i5-430m (c-state p-state enabled)
ATI 4330 512MB (QE/CI enabled)
Lion 10.7.2
Chameleon v2.1svn r1618
FakeSMC v4 rev530
Tried add Device (SMCD) and Method (FAN0, and add ACPISensor.kext or ITEIT87x.kext to /S/L/E, but still not working.
Here is the code I used before the Device (EC0):
Device (SMCD)
{
Name (_HID, "MONITOR")
Method (FAN0, 0, NotSerialized)
{
Store (^^EC0.FANH, Local0)
Store (^^EC0.FANL, Local1)
And (Local0, 0xFFFF, Local0)
And (Local1, 0xFFFF, Local1)
If (LNotEqual (Local0, Zero))
{
If (LEqual (Local0, 0xFFFF))
{
Store (Zero, Local0)
}
Else
{
Store (0x0100, Local2)
Multiply (Local0, Local2, Local3)
Add (Local1, Local3, Local4)
Divide (0x03938700, Local4, Local5, Local6)
Store (Local6, Local0)
}
}
Else
{
Store (Zero, Local0)
}
Return (Local0)
}
}
Here FANH and FANL are the high bits and low bits of fan speed that I can confirm in Win7 using everest, for example, FANH=0x0C, FANL=0x85, then fan speed=0x0C85 = 3205 rpm. but I couldn't understand why Divide (0x03938700, Local4, Local5, Local6).
so i changed it to below, seems correct and compile passed, but still not detecting fan speed.
Device (SMCD)
{
Name (_HID, "MONITOR")
Method (FAN0, 0, NotSerialized)
{
Store (^^EC0.FANH, Local0)
Store (^^EC0.FANL, Local1)
And (Local0, 0xFFFF, Local0)
And (Local1, 0xFFFF, Local1)
If (LNotEqual (Local0, Zero))
{
If (LEqual (Local0, 0xFFFF))
{
Store (Zero, Local0)
}
Else
{
Store (0x0100, Local2)
Multiply (Local0, Local2, Local3)
Add (Local1, Local3, Local4)
Store (Local4, Local0)
}
}
Else
{
Store (Zero, Local0)
}
Return (Local0)
}
}



Sign In
Create Account









