Contribute
Register

OC 0.6.7 macOS Big Sur 11.2 Battery Drain

Status
Not open for further replies.
Joined
Jul 17, 2015
Messages
185
Motherboard
HP Pavilion 15 dk0xxx
CPU
i7-9750H
Graphics
UHD 630 + GTX 1650, 1920x1080
Mac
  1. MacBook Air
  2. MacBook Pro
Mobile Phone
  1. iOS
Title says it all. I have a working Hackintosh setup. However, the battery drains like crazy. It just last for 1hr. Can someone please have a look at what I'm doing wrong here?

Thanks
 

Attachments

  • Archive.zip
    346.5 KB · Views: 56
Have you patched your DSDT.aml so your battery is compatible and functions correctly with macOS?

Have a read of one of the Laptop Battery guides written by Rehabman, they are still current for anyone using a laptop with macOS, no matter which version. As the issues that need to be fixed are ACPI related, as well as OS related.

 
Have you patched your DSDT.aml so your battery is compatible and functions correctly with macOS?

Have a read of one of the Laptop Battery guides written by Rehabman, they are still current for anyone using a laptop with macOS, no matter which version. As the issues that need to be fixed are ACPI related, as well as OS related.

Hi @Edhawk. I know about this guide. However it doesn't apply in my case because I already have all field of size 8 bits. Also I have working battery percentage.
 
Which kext are you using for the battery readings/settings in macOS, SMCBatteryManager.kext or ACPIBatteryManager.kext?

Could be the disabled Nvidia GTX 1650 is draining the battery, it may be calling/using power if it is disabled by a boot argument. An SSDT-DGPU-OFF may work better, if it also deals with the possible power draw from the dGPU. Which option are you using?

Did you need to replace the WiFi/BT card in your laptop with a macOS compatible card or are you using the Intel WiFi/BT? If you haven't changed the WiFi/BT card, what sort of power draw does the Intel card call/use?

Are there any other devices built-in to the laptop that are not compatible with macOS?
 
Which kext are you using for the battery readings/settings in macOS, SMCBatteryManager.kext or ACPIBatteryManager.kext?

Could be the disabled Nvidia GTX 1650 is draining the battery, it may be calling/using power if it is disabled by a boot argument. An SSDT-DGPU-OFF may work better, if it also deals with the possible power draw from the dGPU. Which option are you using?

Did you need to replace the WiFi/BT card in your laptop with a macOS compatible card or are you using the Intel WiFi/BT? If you haven't changed the WiFi/BT card, what sort of power draw does the Intel card call/use?

Are there any other devices built-in to the laptop that are not compatible with macOS?

1. I'm using SMCBatteryManager.kext

2. I have added SSDT-DGPU-OFF for GTX 1650 but it seemed to not be making much of a difference.

3. Apart from that, I have a card reader and a USB C port. They won't be making much of a difference. Right?

I have attached the updated EFI folder. Please have a look at it. Thanks!
 

Attachments

  • OC.zip
    24.6 MB · Views: 74
You are right about the card reader and USB C port, they won't be using any power like would be required to drain your battery so quickly.

You have a couple of SSDT's that are trying to do the same job, disable your discrete GPU.
  • Spoof-SSDT.aml, and
  • SSDT-dGPU-Off.aml
They both have the same ACPI address for the dGPU. That may be what is wrong. They may be calling for a discrete GPU that is not at that ACPI address.

Can you post a copy of your IOReg, use the version linked in this guide - https://www.tonymacx86.com/threads/guide-how-to-make-a-copy-of-ioreg.58368/

That way I will be able to confirm the ACPI address for the DGPU and we can edit the SSDT to match if needed.
 
You are right about the card reader and USB C port, they won't be using any power like would be required to drain your battery so quickly.

You have a couple of SSDT's that are trying to do the same job, disable your discrete GPU.
  • Spoof-SSDT.aml, and
  • SSDT-dGPU-Off.aml
They both have the same ACPI address for the dGPU. That may be what is wrong. They may be calling for a discrete GPU that is not at that ACPI address.

Can you post a copy of your IOReg, use the version linked in this guide - https://www.tonymacx86.com/threads/guide-how-to-make-a-copy-of-ioreg.58368/

That way I will be able to confirm the ACPI address for the DGPU and we can edit the SSDT to match if needed.

So I removed one of the conflicting SSDTs Spoof-SSDT, only kept SSDT-dGPU-Off. As you said, I attached IOREG as well as Windows Device Manager's Boot Device Name for GPU. Turns out I have same ACPI address in SSDT as reported by Boot Device Name of GPU, at least as per my understanding.
 

Attachments

  • EFI+Debug.zip
    25.4 MB · Views: 94
Discrete GPU:
Your IOReg shows the (_SB.PCI0.PEG0) entry but the 'PEGP' device is missing.

So I would assume SSDT-dGPU-Off.aml is working correctly and disabling your GTX 1650 graphics card.

Screenshot 2021-03-23 at 18.28.50.png _SB.PCI0.PEG0 acpi-address in IOReg.

I would leave this as it currently stands.

USB port Config:
The IOReg shows your USBPorts.kext is set incorrectly as it is only activating these USB2 ports:

Screenshot 2021-03-23 at 18.20.36.png HS01, HS02, HS03, HS04, HS05, HS06, HS13 and HS14

None of the physical USB3 ports are being activated, which is wrong.

All of the ports in the kext are set with the USB connector type 0x3, which equates to them all being set as USB3 ports. This is again wrong.

HS05 and HS14 are most likely both internal USB ports, serving the built-in Bluetooth and Webcam, these should be set with the connector type 'Internal' or '255' in Hackintool.

You need to revisit the USB Configuration guide and create a new USBPorts.kext.

CPU:
For some reason I can't fathom, the CPU entries in your IOReg are to be found two-thirds of the way through the IOReg. Usually the Processor entries are found close to the top of the file, as they are one of the first devices discovered and activated.

Screenshot 2021-03-23 at 18.32.42.png Processor located after USB, IGPU and other devices

Maybe someone with a bit more knowledge about this this type of issue may be able to give a reason for this anomaly.

Battery:
I am not sure if your laptop is using SMCBattteryManager.kext.

Screenshot 2021-03-23 at 18.37.44.png AppleSmartBatteryManager Within SMCBatteryManager

From the information in the IOReg I would say the laptop battery is being managed by AppleSmartBatteryManager. Which may be why your battery drains as quickly as it does.

Again I am not sure about this so maybe one of the other Mod's can confirm if this is the correct way the battery should be setup and displayed in the IOReg.
 
@Edhawk Thank you very much for the detailed explanation. As per your advice I'm fixing the USB. Does this seem correct?

Screenshot 2021-03-24 at 12.32.24 AM.png


For CPU and Battery, I'm not too sure how to contact other moderators. Guessing I just hope they reply here? Because in the past, I just used to add SMCBatteryManager in the Kexts folder and do SSDT Patching (if required). How AppleSmartBattery is dealt in this entire process is beyond my understanding though.

Thanks!
 
Yes, that looks a lot better for the USB Configuration.

Have you tried using Rehabman's ACPIBatteryManager.kext, to see if it makes any difference. Copy attached below.

If the (EmbeddedControl) battery entries are all 8bit in the DSDT, this kext should work just as well as the SMC version.
 

Attachments

  • ACPIBatteryManager.kext.zip
    21.8 KB · Views: 95
Status
Not open for further replies.
Back
Top