Contribute
Register

[Guide] How to patch DSDT for working battery status

Read post #1, "Problem Reporting".
I've done it according to your "Problem Reporting". Please help me to solve the problem! thank you very much indeed!
7AFC0D21-9FAC-44EB-A632-1ECE11496618.png
kextstat|grep -y acpiplat:

13 2 0xffffff7f82ce2000 0x60000 0x60000 com.apple.driver.AppleACPIPlatform (5.0) 65E05472-6AE7-3308-8CC8-FA6CB0DB2AEE <12 11 7 6 5 4 3 1>


kextstat|grep -y applelpc

106 0 0xffffff7f8252f000 0x3000 0x3000 com.apple.driver.AppleLPC (3.1) F51595F0-F9B1-3B85-A1C3-F984DAD4107E <103 12 5 4 3>


083D1C5D-9752-4929-B892-23D412B77ED4.png
Last login: Thu Jul 27 00:00:37 on ttys000

Zhangs-MacBook-Pro:~ zhang$ sudo touch /System/Library/Extensions && sudo kextcache -u /

Password:

AppleBacklightInjector.kext has incorrect permissions; omitting.

kext-dev-mode allowing invalid signature -67054 0xFFFFFFFFFFFEFA12 for kext AppleHDA.kext

KernelCache ID: 6A563316DA9BA8CBA78382B3DB88B629

Zhangs-MacBook-Pro:~ zhang$

 

Attachments

  • Clover_EFI.zip
    5.9 MB · Views: 64
  • RehabMan_Ssurface Pro 3 DSDT&SSDT.zip
    29.6 KB · Views: 78
  • Zhang’s MacBook Pro.ioreg
    4.8 MB · Views: 79
  • DSDT_Original.dsl
    494.5 KB · Views: 104
  • problem videos.zip
    1.9 MB · Views: 74
Read post #1, "Problem Reporting".
I've uploaded a little video of the battery problem, upstairs, please check it out! Thank you! The name is "problem videos.zip""
 
I've done it according to your "Problem Reporting". Please help me to solve the problem! thank you very much indeed!
View attachment 268851
kextstat|grep -y acpiplat:

13 2 0xffffff7f82ce2000 0x60000 0x60000 com.apple.driver.AppleACPIPlatform (5.0) 65E05472-6AE7-3308-8CC8-FA6CB0DB2AEE <12 11 7 6 5 4 3 1>


kextstat|grep -y applelpc

106 0 0xffffff7f8252f000 0x3000 0x3000 com.apple.driver.AppleLPC (3.1) F51595F0-F9B1-3B85-A1C3-F984DAD4107E <103 12 5 4 3>


View attachment 268852
Last login: Thu Jul 27 00:00:37 on ttys000

Zhangs-MacBook-Pro:~ zhang$ sudo touch /System/Library/Extensions && sudo kextcache -u /

Password:

AppleBacklightInjector.kext has incorrect permissions; omitting.

kext-dev-mode allowing invalid signature -67054 0xFFFFFFFFFFFEFA12 for kext AppleHDA.kext

KernelCache ID: 6A563316DA9BA8CBA78382B3DB88B629

Zhangs-MacBook-Pro:~ zhang$


Please provide a clear/detailed description of the problem.
 
Please provide a clear/detailed description of the problem.
Hi, I follow the method above you to my Surface Pro 3 battery patch, and used ACPIBatteryManager.kext (the current version is RehabMan-Battery-2014-1016), and I found some bug, specifically a normal display power, while the emergence of a small battery fork. I have tried a higher version (including version 2017). For me, only a small battery fork is displayed after the boot (there is no indication of power at all). The system is macOS 10.12.6.

Note: it has been put on“Fix Mutex with non-zero SyncLevel” but still ineffective

Is that my patch problem or ACPIBatteryManager.kext's problem? Could you please take a look at it for me? Thank you very much.
 
Hi, I follow the method above you to my Surface Pro 3 battery patch, and used ACPIBatteryManager.kext (the current version is RehabMan-Battery-2014-1016), and I found some bug, specifically a normal display power, while the emergence of a small battery fork. I have tried a higher version (including version 2017). For me, only a small battery fork is displayed after the boot (there is no indication of power at all). The system is macOS 10.12.6.

Your description is not clear.
Perhaps you should use images to explain (please no video).
 
Your description is not clear.
Perhaps you should use images to explain (please no video).
It is my DSDT a patch according to above methods, and the use of "Fix Mutex with non-zero SyncLevel", but after the start of a normal battery can read power, 322C64E2-4896-421D-9F5C-9109C51A9460.png then it becomes a small fork0399A512-F054-4359-8A80-5CEF8F760BFC.png , changed a few versions of the "ACPIBatteryManager.kext" effect is not so good! What should I do?
4345CD57-6E14-4F6F-84B0-CEBAE440C377.png
 
I've done it according to your "Problem Reporting". Please help me to solve the problem! thank you very much indeed!
View attachment 268851
kextstat|grep -y acpiplat:

13 2 0xffffff7f82ce2000 0x60000 0x60000 com.apple.driver.AppleACPIPlatform (5.0) 65E05472-6AE7-3308-8CC8-FA6CB0DB2AEE <12 11 7 6 5 4 3 1>


kextstat|grep -y applelpc

106 0 0xffffff7f8252f000 0x3000 0x3000 com.apple.driver.AppleLPC (3.1) F51595F0-F9B1-3B85-A1C3-F984DAD4107E <103 12 5 4 3>


View attachment 268852
Last login: Thu Jul 27 00:00:37 on ttys000

Zhangs-MacBook-Pro:~ zhang$ sudo touch /System/Library/Extensions && sudo kextcache -u /

Password:

AppleBacklightInjector.kext has incorrect permissions; omitting.

kext-dev-mode allowing invalid signature -67054 0xFFFFFFFFFFFEFA12 for kext AppleHDA.kext

KernelCache ID: 6A563316DA9BA8CBA78382B3DB88B629

Zhangs-MacBook-Pro:~ zhang$


It is my DSDT a patch according to above methods, and the use of "Fix Mutex with non-zero SyncLevel", but after the start of a normal battery can read power, View attachment 268971 then it becomes a small forkView attachment 268970 , changed a few versions of the "ACPIBatteryManager.kext" effect is not so good! What should I do?

Your ioreg shows multiple battery objects active (BAT0, BAT1).
But there is only a battery attached to BAT0, not BAT1.
As per post #1, you must disable the BAT1 by returning zero from _STA.
 
Your ioreg shows multiple battery objects active (BAT0, BAT1).
But there is only a battery attached to BAT0, not BAT1.
As per post #1, you must disable the BAT1 by returning zero from _STA.
How should I change it? I'm a new hand, not very well. Could you direct me?
 
How should I change it? I'm a new hand, not very well. Could you direct me?

There are plenty of examples of patching _STA in the repo...
Code:
SPEEDY-NUC:battery rehabman$ grep into.*method.*_STA.*Return *.txt
battery_HP-Envy-14.txt:into method label _STA parent_label BAT1 replace_content begin Return (Zero) end;
battery_HP-ProBook-4x0s-G1.txt:into method label _STA parent_label BAT1 replace_content begin Return (Zero) end;
battery_HP-ProBook-Generic.txt:into method label _STA parent_label BAT1 replace_content begin Return (Zero) end;
battery_Lenovo-G50-70.txt:into method label _STA parent_label BAT1 replace_content begin Return (Zero) end;
battery_Lenovo-X201.txt:into method label _STA parent_label BAT1 replace_content begin Return(0) end;
battery_Lenovo-X220.txt:into method label _STA parent_label BAT1 replace_content begin Return(0) end;
battery_Lenovo-X230i.txt:into method label _STA parent_label BAT1 replace_content begin Return(0) end;
battery_Partaker_G3.txt:into method label _STA parent_label BAT2 replace_content begin Return(0) end;
battery_Sony-VAIO-S.txt:into method label _STA parent_label BAT1 replace_content begin Return (0x1F) end;
battery_Sony-VAIO-S.txt:into method label _STA parent_label BAT2 replace_content begin Return (Zero) end;
battery_Sony-VAIO-S.txt:into method label _STA parent_label H_EC replace_content begin Return (0x0F) end;
 
Back
Top