Contribute
Register

Fan speed control on High Sierra

Status
Not open for further replies.
Joined
Jun 23, 2013
Messages
48
CPU
Intel Core i5
Graphics
Intel HD4000
It means even more may be wrong.
USB type-C uses UsbConnector=9 or UsbConnector=10 and may use 1x or 2x SSxx ports.
Any suggestions on how I can determine the SSxx ports? My phone only showed up on the HS port when I plugged it in. Its a non-charging USB C port if that matters.
 
Joined
Jun 23, 2013
Messages
48
CPU
Intel Core i5
Graphics
Intel HD4000
Probably you didn't have all ports enabled when you tested...
See guide:
https://www.tonymacx86.com/threads/guide-creating-a-custom-ssdt-for-usbinjectall-kext.211311/

Requirements:
- EHC1->EH01 and EHC2->EH02 rename (in config.plist), if applicable (your chipset may not have EHCI, or it may be disabled)
- XHCI controller must be named XHC (for most PCs it is default)
- port limit patch (in config.plist)
- install USBInjectAll.kext (install to the system volume)

- if you plan to use it, install FakePCIID.kext + FakePCIID_XHCIMux.kext
- if you have an existing SSDT for USBInjectAll, use -uia_ignore_rmcf
- XHCI injector kext, if required (200-series need XHCI-200-series-injector.kext)

I followed the steps above in bold when going through discovery. I don't have EHCI. I used -uia_ignore_rmcf after creating my initial SSDT when I realized I forgot to test the card reader.
 

RehabMan

Moderator
Joined
May 2, 2012
Messages
183,933
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
Requirements:
- EHC1->EH01 and EHC2->EH02 rename (in config.plist), if applicable (your chipset may not have EHCI, or it may be disabled)
- XHCI controller must be named XHC (for most PCs it is default)
- port limit patch (in config.plist)
- install USBInjectAll.kext (install to the system volume)

- if you plan to use it, install FakePCIID.kext + FakePCIID_XHCIMux.kext
- if you have an existing SSDT for USBInjectAll, use -uia_ignore_rmcf
- XHCI injector kext, if required (200-series need XHCI-200-series-injector.kext)

I followed the steps above in bold when going through discovery. I don't have EHCI. I used -uia_ignore_rmcf after creating my initial SSDT when I realized I forgot to test the card reader.

You have two laptops in your signature, one can be expected to have EHCI, the other not.
If you have an issue, you must specify which computer it happens with and attach "problem reporting" files as per FAQ.
 
Joined
Jun 23, 2013
Messages
48
CPU
Intel Core i5
Graphics
Intel HD4000

RehabMan

Moderator
Joined
May 2, 2012
Messages
183,933
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
Joined
Jun 3, 2017
Messages
174
Motherboard
N/A
CPU
N/A
Graphics
N/A
Mac
  1. iMac
  2. MacBook
  3. MacBook Air
  4. MacBook Pro
  5. Mac mini
  6. Mac Pro
Classic Mac
  1. 128K
  2. 20th Anniv. Mac
  3. 512K
  4. Apple
  5. Centris
  6. Classic
  7. Color Classic
  8. eMac
  9. iBook
  10. iMac
  11. LC
  12. Lisa
  13. Performa
  14. Plus
  15. Portable
  16. Power Mac
  17. PowerBook
  18. Quadra
  19. SE
  20. Workgroup Server
  21. XL
  22. Xserve
  23. SE/30
Mobile Phone
  1. Android
  2. iOS
  3. Other
Well, apparently my \_SB.PCI0.LPCB.EC0 doesn't have an ECAV (just by looking at my DSDT), and the following in console log.
I have no clue what FCPU is.

Code:
default    13:09:51.798497 -1000    kernel    ACPI Error:
default    13:09:51.798512 -1000    kernel    ACPI Error:
default    13:09:51.798519 -1000    kernel    [\_SB_.PCI0.LPCB.EC0_.ECAV]
default    13:09:51.798520 -1000    kernel    [\_SB_.PCI0.LPCB.EC0_.ECAV]
default    13:09:51.798523 -1000    kernel     Namespace lookup failure, AE_NOT_FOUND
default    13:09:51.798525 -1000    kernel     Namespace lookup failure, AE_NOT_FOUND
default    13:09:51.798529 -1000    kernel     (20140828/psargs-1d1)
default    13:09:51.798531 -1000    kernel     (20140828/psargs-1d1)
default    13:09:51.798534 -1000    kernel    ACPI Error:
default    13:09:51.798536 -1000    kernel    ACPI Error:
default    13:09:51.798540 -1000    kernel    Method parse/execution failed
default    13:09:51.798541 -1000    kernel    Method parse/execution failed
default    13:09:51.798545 -1000    kernel    [\SMCD.FCPU] (Node ffffff80484bc890)
default    13:09:51.798547 -1000    kernel    [\SMCD.FCPU] (Node ffffff80484bc890)

Same debug files as my previous post; attaching them here as well.
 

Attachments

  • debug_7251.zip
    5.2 MB · Views: 67
Last edited:

RehabMan

Moderator
Joined
May 2, 2012
Messages
183,933
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
Well, apparently my \_SB.PCI0.LPCB.EC0 doesn't have an ECAV (just by looking at my DSDT),

Not sure why you have that impression... this is from your DSDT.aml:
Code:
            Method (ECAV, 0, NotSerialized)
            {
                If (LGreaterEqual (SLPT, 0x04))
                {
                    Return (Zero)
                }

                If (LEqual (NVLK, One))
                {
                    Return (Zero)
                }

                If (LEqual (ECFL, Ones))
                {
                    If (LGreaterEqual (_REV, 0x02))
                    {
                        Return (One)
                    }
                    Else
                    {
                        Return (Zero)
                    }

                    Return (Zero)
                }

                Return (ECFL)
            }

and the following in console log.
I have no clue what FCPU is.

Code:
default    13:09:51.798497 -1000    kernel    ACPI Error:
default    13:09:51.798512 -1000    kernel    ACPI Error:
default    13:09:51.798519 -1000    kernel    [\_SB_.PCI0.LPCB.EC0_.ECAV]
default    13:09:51.798520 -1000    kernel    [\_SB_.PCI0.LPCB.EC0_.ECAV]
default    13:09:51.798523 -1000    kernel     Namespace lookup failure, AE_NOT_FOUND
default    13:09:51.798525 -1000    kernel     Namespace lookup failure, AE_NOT_FOUND
default    13:09:51.798529 -1000    kernel     (20140828/psargs-1d1)
default    13:09:51.798531 -1000    kernel     (20140828/psargs-1d1)
default    13:09:51.798534 -1000    kernel    ACPI Error:
default    13:09:51.798536 -1000    kernel    ACPI Error:
default    13:09:51.798540 -1000    kernel    Method parse/execution failed
default    13:09:51.798541 -1000    kernel    Method parse/execution failed
default    13:09:51.798545 -1000    kernel    [\SMCD.FCPU] (Node ffffff80484bc890)
default    13:09:51.798547 -1000    kernel    [\SMCD.FCPU] (Node ffffff80484bc890)

Same debug files as my previous post; attaching them here as well.

The error is your mistake. You are renaming EC0 to EC via config.plist/ACPI/DSDT/Patches, but SSDT-FAN.aml still refers to EC0 instead of EC.

Please note that renaming EC0->EC is completely invalid/wrong as you have an ECDT that refers to the path...
 
Joined
Jun 3, 2017
Messages
174
Motherboard
N/A
CPU
N/A
Graphics
N/A
Mac
  1. iMac
  2. MacBook
  3. MacBook Air
  4. MacBook Pro
  5. Mac mini
  6. Mac Pro
Classic Mac
  1. 128K
  2. 20th Anniv. Mac
  3. 512K
  4. Apple
  5. Centris
  6. Classic
  7. Color Classic
  8. eMac
  9. iBook
  10. iMac
  11. LC
  12. Lisa
  13. Performa
  14. Plus
  15. Portable
  16. Power Mac
  17. PowerBook
  18. Quadra
  19. SE
  20. Workgroup Server
  21. XL
  22. Xserve
  23. SE/30
Mobile Phone
  1. Android
  2. iOS
  3. Other
Not sure why you have that impression... this is from your DSDT.aml:
Code:
            Method (ECAV, 0, NotSerialized)
            {
                If (LGreaterEqual (SLPT, 0x04))
                {
                    Return (Zero)
                }

                If (LEqual (NVLK, One))
                {
                    Return (Zero)
                }

                If (LEqual (ECFL, Ones))
                {
                    If (LGreaterEqual (_REV, 0x02))
                    {
                        Return (One)
                    }
                    Else
                    {
                        Return (Zero)
                    }

                    Return (Zero)
                }

                Return (ECFL)
            }



The error is your mistake. You are renaming EC0 to EC via config.plist/ACPI/DSDT/Patches, but SSDT-FAN.aml still refers to EC0 instead of EC.

Please note that renaming EC0->EC is completely invalid/wrong as you have an ECDT that refers to the path...
And I thought that I didn't have ECDT, for some reason :/
Added fake EC (removed rename), and I can now see my fan RPM in HWMonitor, Thanks!
EDIT
It works fine - I think my fan is simply put not very quiet.. unless it is turned off.
I am unsure on how to add a FAN1 for my secondary fan, though - adding "1" to where it is recommended in the SSDT changes the HWMonitor to that second fan, replacing the first one. I assume that adding a FAN1 Method and "System Fan 2", "FAN1" to the TACH would do the trick? I assume that I'd need to modify the RPM handling as well..
 
Last edited:
Status
Not open for further replies.
Top