Jump to content
onemanosx

[Guide] Laptop Battery Indicator - The DSDT Patching Horror

Recommended Posts

onemanosx, First thank you for your support. Finally the battery icon appeared in Menu Bar but it stucks at 73%.

Before made that changes I, also, replaced FakeSMC with VirtualSMC and then I use SMCBatteryManager. May this the problem? :/

After make that changes with FakeSMC and SMCBatteryManager:

I removed SSDT-Olarila and i copied tha DSDT.aml at patched folder.

https://imgur.com/ZxpKog4 (screenshoots of battery icon in menu bar)

https://imgur.com/CBApTBK

This is my new dump if you need: http://s000.tinyupload.com/index.php?file_id=11655218359494358632

PS: Where are you from? I say that because "manos" in your username, at Greece is a men's name.


Glad to joined into your companionship!!




Thanks in advance!!

Link to comment
Share on other sites

[ref]enolic[/ref], any difference when using fakesmc and acpibatterymanager kext? What you can do is drain the battery to zero, clear nvram and charge to full. That might help.


I am not at my mac to look at your dump files right now.


I'd recommend to use applealc for audio. I have no experience in using applehda. However, its likely the new kexts you had installed via hackintool is the problem. Did you rebuild permissions and kextcache after installing kexts via hackintool?


Ps: I am from Singapore and that explains the time difference. But glad to know manos is a men's name :)

Donate

Gitter Chat


Acer Aspire V15 Nitro- Black Edition VN7-592G/HM170 Chipset

Intel i7-6700HQ, 8GB RAM (UEFI Clover Catalina)


MSI B360 Gaming Arctic

Intel i5-8600 16GB RAM Asus Radeon RX580 8GB (UEFI Clover Catalina)

Link to comment
Share on other sites

onemanosx After switched again to FakeSMC and ACPIBatteryManager... the AC Adapter is -finally- charging the battery. :D :D :D I love you man. I am searching for this problem more than 2 weeks.


For audio i installed the AppleALC but i have not audio from laptop speakers. But there is a volume icon in Menu Bar.

Anyway, im sure that im not in the right section to write for aaudio problems.


Thanks again and again my man!!!!


edit: the battery drained the time i was installing the FakeSMC, ACPIBatteryManager and AppleALC. When i opened the laptop with AC adapter plugged the battery charging works. But i try to reinstall this kext without the computer poweroff and now cant boot again :lol::lol:


boot up screen: https://imgur.com/undefined


edit 2: i boot up with -f argument and i rebuild kext cache after deleted AppleALC and i booted up normally after that


edit 3: the strange is the battery status now stucks at 14% and not charging again but im thinking this is because i powered off the laptop from the button (?)

Edited by Guest
Link to comment
Share on other sites

onemanosx, ok but why? I say why because i see in many kext installation tips to install the kexts at L/E. To install kexts on Clover/kexts/Other i need to drag the kext at the this path or i can use a program such as Hackintool?

Anyway, I have to say a big thanks again onemanosx!!

Link to comment
Share on other sites

[ref]enolic[/ref], I dont see any reason for users to use L/E if using Clover/kexts/other works well. Plus, using Clover/Kexts/Others avoids kextcache issues like what you had just experienced. :mrgreen:


Just copy whatever third party kexts from L/E to Clover/Kexts/Other. Remove third party kexts in L/E. Rebuild permissions and kextcache. Reboot.

Donate

Gitter Chat


Acer Aspire V15 Nitro- Black Edition VN7-592G/HM170 Chipset

Intel i7-6700HQ, 8GB RAM (UEFI Clover Catalina)


MSI B360 Gaming Arctic

Intel i5-8600 16GB RAM Asus Radeon RX580 8GB (UEFI Clover Catalina)

Link to comment
Share on other sites

onemanosx, i did all of this and i successfully boot on OS.So from now i will install all of the kexts in clover/kexts/other.

But,

after the battery stucks at 14%. I let the battery dry again, but after plug the AC Adapter the battery status is stucked at 1% and if i unplug and plug again the AC adapter it says "battery not charging". (Before unplag the AC Adapter it says "Calculating Time Until Full"


At ioreg says ischarging: false but before was true. What happens?

I'm trully interested in hackintosh but is chaotic hehe


new dump: http://s000.tinyupload.com/index.php?file_id=87448247225454227686



Thanks in advance!!

Link to comment
Share on other sites

"Calculating Time Until Full"

This is normal. Driver will need some time to update itself from the system.

 

At ioreg says ischarging: false but before was true. What happens?

No idea. At this stage, I would only suggest a fresh OS installation.

 

new dump: http://s000.tinyupload.com/index.php?fi ... 5454227686

I believe you will only need these kexts..


https://imgur.com/lplwTsu

Donate

Gitter Chat


Acer Aspire V15 Nitro- Black Edition VN7-592G/HM170 Chipset

Intel i7-6700HQ, 8GB RAM (UEFI Clover Catalina)


MSI B360 Gaming Arctic

Intel i5-8600 16GB RAM Asus Radeon RX580 8GB (UEFI Clover Catalina)

Link to comment
Share on other sites

onemanosx, Ok i reinstalled the OS with patched DSDT and all kexts I had, but the battery still stucked at 1% and not charging

I didn't run master-disable at post installation but I don't have any problem.


new dump after installation: http://s000.tinyupload.com/index.php?file_id=50616393742381970493


edit: I wait to load calculate the time until full charge but didn't load. (Cause in ioreg the "discharging" is False


edit 2: When I go to compile the patched DSDT to MaciSial I saw this error: https://imgur.com/0lKyx7T

Link to comment
Share on other sites

What is the problem then?

No idea. Maybe you should go back to using virtualsmc and its battery kext since it works better the first time. Plus, RH acpibatterymanager kext is kinda outdated. I guess, you'd have to hunt around for solution.

Donate

Gitter Chat


Acer Aspire V15 Nitro- Black Edition VN7-592G/HM170 Chipset

Intel i7-6700HQ, 8GB RAM (UEFI Clover Catalina)


MSI B360 Gaming Arctic

Intel i5-8600 16GB RAM Asus Radeon RX580 8GB (UEFI Clover Catalina)

Link to comment
Share on other sites

I went back to virtualsmc but still battery not charging.

But one time it was charging. This is the reason why still try to fix this problem


I notice that in EFI/CLOVER/drivers folder there are VBoxHFS.efi and VirtualSMC.efi.

May have to change VBoxHFS.efi with HFSPlus.efi, delete the VirtualSMC.efi and try again with FakeSMC and ACPIBatteryManager?

Link to comment
Share on other sites

onemanosx, I tried it out with FakeSMC and ACPIBatteryManager again but still battery not charging. When I opened the laptop with charger plugged into it the battery icon on menu bar says calculating time until full forever and when I unplugged the charger the battery status says it is not charging...

May can't fix that?


Thanks in advance!


Edit: i hold power button for 30s after fully discharge and after opened the battery says 78% instead of 1%, but still is stucked and not charging

I think the 78 is beacuse i let the laptop in charging all night..

Edit 2: What tools have to search to fix that problems? Im asking to make myself fix the problem and help the community and Olarila :D

Link to comment
Share on other sites

great work sir


i have installed macOS Catalina on my Lenovo IdeaPad L340-15IWL

i7 8565U / UHD 620


by Olarila help here

also i patched my files here to improve many and many in the system and a lot of thank for you for what i reached now


but still 2 major problems

1st the battery life time is only 2 hours

and i searched many and many to make it better but i did not

even in the guide here i can not walk through it cause there are not more than 8 bytes , and i have no experience

so please sir could you help me to make batter be better ?

 

DSDT.aml.zip

config.plist.zip

Link to comment
Share on other sites

[ref]m0ustafamahm0ud[/ref], Battery consumption is generally worst in hackintosh than in Windows. You simply cannot compare.

Donate

Gitter Chat


Acer Aspire V15 Nitro- Black Edition VN7-592G/HM170 Chipset

Intel i7-6700HQ, 8GB RAM (UEFI Clover Catalina)


MSI B360 Gaming Arctic

Intel i5-8600 16GB RAM Asus Radeon RX580 8GB (UEFI Clover Catalina)

Link to comment
Share on other sites

Hi,

can anyone help me with this problem?

I try to patch dsdt for battery and find this fields that are call in EC:


B1DC, 16,

B1FV, 16,

B1FC, 16,

B1CR, 16,

B1RC, 16,

BCYC, 16,


then patch as guide suggested :


into device label EC code_regex B1DC,\s+16, replace_matched begin 1DC0,8,1DC1,8, end;

into device label EC code_regex B1FV,\s+16, replace_matched begin 1FV0,8,1FV1,8, end;

into device label EC code_regex B1FC,\s+16, replace_matched begin 1FC0,8,1FC1,8, end;

into device label EC code_regex B1CR,\s+16, replace_matched begin 1CR0,8,1CR1,8, end;

into device label EC code_regex B1RC,\s+16, replace_matched begin 1RC0,8,1RC1,8, end;

into device label EC code_regex BCYC,\s+16, replace_matched begin CYC0,8,CYC1,8, end;


when i compile dsdt i receive this error :

18980, 6126, syntax error, unexpected PARSEOP_INTEGER, expecting ',' or '}'

and I don't know how to go on.


Pleasse help me!


Thinkbook 13 IWL:

CPU: i5-8265U

Display : 13,3" FHD 1920x1080

Ram : 8GB

SSD: 256GB Solid State Drive PCIe-NVMe M.2 Samsung

Audio: Alc257

DSDT.aml.zip

Link to comment
Share on other sites

I try to patch dsdt for battery and find this fields that are call in EC:


B1DC, 16,

B1FV, 16,

B1FC, 16,

B1CR, 16,

B1RC, 16,

BCYC, 16,


then patch as guide suggested :


into device label EC code_regex B1DC,\s+16, replace_matched begin 1DC0,8,1DC1,8, end;

into device label EC code_regex B1FV,\s+16, replace_matched begin 1FV0,8,1FV1,8, end;

into device label EC code_regex B1FC,\s+16, replace_matched begin 1FC0,8,1FC1,8, end;

into device label EC code_regex B1CR,\s+16, replace_matched begin 1CR0,8,1CR1,8, end;

into device label EC code_regex B1RC,\s+16, replace_matched begin 1RC0,8,1RC1,8, end;

into device label EC code_regex BCYC,\s+16, replace_matched begin CYC0,8,CYC1,8, end;


when i compile dsdt i receive this error :

18980, 6126, syntax error, unexpected PARSEOP_INTEGER, expecting ',' or '}'

and I don't know how to go on.

This is just one of the steps. Did you follow up with the subsequent steps as suggested in original post?

Donate

Gitter Chat


Acer Aspire V15 Nitro- Black Edition VN7-592G/HM170 Chipset

Intel i7-6700HQ, 8GB RAM (UEFI Clover Catalina)


MSI B360 Gaming Arctic

Intel i5-8600 16GB RAM Asus Radeon RX580 8GB (UEFI Clover Catalina)

Link to comment
Share on other sites

Hi onemanosx,


I have followed your guide to patch dsdt for HP Spectre X360 late 2019 laptop but I still cannot see the battery % and status. I have attached RunMe dump onedrive link (file too big to attach). I need battery status working so I can access touchpad settings properly. I2c trackpad and touchscreen work except tap to click and two tap for right clicking but clicking the trackpad physically, works for left mouse clicking.


link - https://1drv.ms/u/s!AgsMleu5IhjT-1pA17DpNG_h1Jrv?e=QrksZ0



Patches applied to dsdt prior to patching for battery status include the following

- remove _DSM methods

- Fix _IRC Error

- Fix ADBG Error

- Add MCHC

- Fix _WAK Arg0 v2

- Fix Mutex

- Fix HPET

- Fix IRQ

- OS Check Fix (Windows 10)

- USB 3_PRW 0X6D Skylake

- Brightness Fix

- GPIO Controller Enable [sKL+]


For battery patching, i did the following


*Variables greater than 8 bytes in EmbeddedControl


SMD0, 256 ——> x ---> Not called elsewhere in EC

BADC, 16 ———>X ----> Not called elsewhere in EC

BFCC, 16 ———> YES

MCUR, 16 ———>YES

MBRM, 16 ———>YES

MBCV, 16 ————>YES


*insert code below to patch window

into device label EC0 code_regex BFCC,\s+16, replace_matched begin FCC0,8,FCC1,8, end;

into device label EC0 code_regex MCUR,\s+16, replace_matched begin CUR0,8,CUR1,8, end;

into device label EC0 code_regex MBRM,\s+16, replace_matched begin BRM0,8,BRM1,8, end;

into device label EC0 code_regex MBCV,\s+16, replace_matched begin BCV0,8,BCV1,8, end;


* manually edit errors

^^PCI0.LPCB.EC0.BFCC -> B1B2(^^PCI0.LPCB.EC0.FCC0,^^PCI0.LPCB.EC0.FCC1) /* \_SB_.PCI0.LPCB.EC0_.BFCC */

^^PCI0.LPCB.EC0.MCUR -> B1B2(^^PCI0.LPCB.EC0.CUR0,^^PCI0.LPCB.EC0.CUR1) /* \_SB_.PCI0.LPCB.EC0_.MCUR */

^^PCI0.LPCB.EC0.MBRM -> B1B2(^^PCI0.LPCB.EC0.BRM0,^^PCI0.LPCB.EC0.BRM1) /* \_SB_.PCI0.LPCB.EC0_.MBRM */

^^PCI0.LPCB.EC0.MBCV -> B1B2(^^PCI0.LPCB.EC0.BCV0,^^PCI0.LPCB.EC0.BCV1) /* \_SB_.PCI0.LPCB.EC0_.MBCV */


*insert code below to patch window

into method label B1B2 remove_entry;

into definitionblock code_regex . insert

begin

Method (B1B2, 2, NotSerialized) { Return(Or(Arg0, ShiftLeft(Arg1, 8))) }\n

end;



*Insert code below in patch window

#utility methods to read/write buffers from/to EC......


No luck, any advice would be greatly appreciated!!

Thank you

Link to comment
Share on other sites

BADC, 16

Add patch for BADC.


For I2C, You should remove VoodooI2CELAN from wherever folder that you had installed it. Only use VoodooI2CHID and VoodooI2C kexts.

Donate

Gitter Chat


Acer Aspire V15 Nitro- Black Edition VN7-592G/HM170 Chipset

Intel i7-6700HQ, 8GB RAM (UEFI Clover Catalina)


MSI B360 Gaming Arctic

Intel i5-8600 16GB RAM Asus Radeon RX580 8GB (UEFI Clover Catalina)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.





×
  • Create New...