davieees Posted August 5, 2021 Share Posted August 5, 2021 (edited) Good afternoon, members. I am new to this website, so I will start with the issue. I saw a lot of people on the internet (hackintosh forums) with this battery issue and haven't seen a fix for it. I would highly appreciate your patience to help me. So, yesterday I updated from Big Sur to Monterey (for the new features, but only for the low power mode thing). I want to mention that the issue was before I upgraded the system, even on Big Sur. First, cycle count in the System Report on 'About This Mac', it's with the value of 0. Which is pretty strange.. Also, I got the 'Service Recommended' notification in Settings -> Battery. Even in System Report. The only thing I want to do about this situation is to have the Low Power Mode feature on this hackintosh, which I think it has to do with the notification pop up. What can I do? Full DSDT Patch? How? I am kinda a newbie in the process of making a DSDT Patch and I would like some help (I don't understand some details on old forums, the forum with RehabMan). If someone wanna help a newbie, I would appreciate a lot. I want to mention too that I used the ECEnabler fix, didn't work. What can I do more? Please let me know down in the comments. Also, the EFI is fully configured and almost everything is working on the laptop. Specifications: Proccessor -> Intel i5 5200U Memory -> 8GB RAM DDR3 iGPU -> Intel HD 5500 eGPU -> nVIDIA 920m (disabled in the SSDT) Storage -> Some kind of Kingston SSD Drive. Working properly. Battery -> Some kind of Sanyo Battery. Battery status working. Notification issue. **LAPTOP: Acer Aspire E5-573G** *If you want any other information about this laptop, let me know down below in the comments.* Edited August 5, 2021 by davieees Quote Link to comment Share on other sites More sharing options...
chris1111 Posted August 6, 2021 Share Posted August 6, 2021 (edited) Welcome @davieees I never have issue Battery on my Probook 6570b from Big Sur even on Monterey 12 EDIT ** I am using rehabman DSDT patch battery for probook with SMCBatteryManager anyway I have two more spare Edited August 7, 2021 by chris1111 1 Quote Link to comment Share on other sites More sharing options...
davieees Posted August 7, 2021 Author Share Posted August 7, 2021 hello chris! i am a big fan of you. okie thankies for the suggestions. sorry for bothering you with my stupid questions but i am needed to. what patches should I use on my DSDT? i need to add the DSDT only in the ACPI section, or do I need to do something extra? yeah, i know that you'll say i need to watch tutorials on youtube, but i don't know how to fix some errors. i can't find them on internet tho. i just want to remove the service recommended thing. uhm, should I use the Acer Aspire E1-571 battery dsdt patch? I mean, i think i need to try one by one. anyways, thanks for your fast reply. again, sorry for annoying you with my stupid questions. regards, dave. Quote Link to comment Share on other sites More sharing options...
davieees Posted August 7, 2021 Author Share Posted August 7, 2021 On 8/6/2021 at 2:14 AM, Hervé said: Afaik, many Hackintosh laptops have that under Big Sur. All mines certainly do. Could be the result of using ACPIBatteryManager/FakeSMC rather than VirtualSMC & PlugIns. hello herve! even on big sur i have this issue. haven't tried on catalina. i am not using acpi thing or fakesmc. i am using the virtualsmc kext and the smcbatterymanager one. what could be the issue? i just wanna have the low power mode thing and the optimized battery charging thing. i heard you can get them once you have your battery fully configured or fully working. thanks anyways for your reply. i hope there's someone who could help me fix this. would appreciate everyone's patience. have a great day<3 Quote Link to comment Share on other sites More sharing options...
Slice Posted August 7, 2021 Share Posted August 7, 2021 4 hours ago, davieees said: hello herve! even on big sur i have this issue. haven't tried on catalina. i am not using acpi thing or fakesmc. i am using the virtualsmc kext and the smcbatterymanager one. what could be the issue? i just wanna have the low power mode thing and the optimized battery charging thing. i heard you can get them once you have your battery fully configured or fully working. thanks anyways for your reply. i hope there's someone who could help me fix this. would appreciate everyone's patience. have a great day<3 There are two way to fix the issue: acpi patching or choose other set of kexts. How else you propose to get a help? 1 Quote Link to comment Share on other sites More sharing options...
1Revenger1 Posted August 7, 2021 Share Posted August 7, 2021 My Dell M4700 has that message, but it's battery is atrocious (60% of original life I think?) so the messaging isn't too far off there My X1 Extreme doesn't though, and I'm using VirtualSMC + SMCBatteryManager + ECEnabler (no ACPI patches at all needed) I'm not quite how it determines if a battery needs servicing, but depending on how old it is, it might be accurate? Quote Link to comment Share on other sites More sharing options...
davieees Posted August 8, 2021 Author Share Posted August 8, 2021 On 8/7/2021 at 8:59 PM, Slice said: There are two way to fix the issue: acpi patching or choose other set of kexts. How else you propose to get a help? hi slice! i don't mind. one which I can understand, i guess? i can do patching too. but i just need some tips, i am not an expert. kinda a newbie. i mean, i am watching tutorials on youtube, but it seems kinda hard. maybe some help, i would appreciate a lot. i tried one time to patch the dsdt but no luck. eh.. kexts? sure, but i dunno which ones. thanks for the reply. waitin' for your response. i mean, anything. i just want the optimized battery charging thing, or maybe if it's possible, the low power mode. thanks again. regards, dave. On 8/7/2021 at 10:18 PM, 1Revenger1 said: My Dell M4700 has that message, but it's battery is atrocious (60% of original life I think?) so the messaging isn't too far off there My X1 Extreme doesn't though, and I'm using VirtualSMC + SMCBatteryManager + ECEnabler (no ACPI patches at all needed) I'm not quite how it determines if a battery needs servicing, but depending on how old it is, it might be accurate? it is kinda new. this laptop is almost new. just changed the hard drive to a faster ssd. the battery is fully working on windows though. never had an issue with the battery on my other hackintoshes, but as i said, this thing is new to me. would appreciate someone's help. have a great day! thanks for your reply. regards, dave. 20 hours ago, STLVNUB said: @1Revenger1wow I had to look twice I thought you where RevoGirl (RIP) hey stlvnub. i would and i think everyone will appreciate only help replies. thanks. regards, dave. Quote Link to comment Share on other sites More sharing options...
Slice Posted August 9, 2021 Share Posted August 9, 2021 10 hours ago, davieees said: hi slice! i don't mind. one which I can understand, i guess? i can do patching too. but i just need some tips, i am not an expert. kinda a newbie. i mean, i am watching tutorials on youtube, but it seems kinda hard. maybe some help, i would appreciate a lot. i tried one time to patch the dsdt but no luck. eh.. kexts? sure, but i dunno which ones. thanks for the reply. waitin' for your response. i mean, anything. i just want the optimized battery charging thing, or maybe if it's possible, the low power mode. thanks again. regards, dave. Hi, I just want to propose very other solution. To use it you have to exclude all kexts from previous solutions. Not use VirtualSMC, SMCBattery Not use FakeSMC with plugins from Rehabman. Not use ACPIBatteryManager, not edit DSDT. I want to propose you to use FakeSMC3+VoodooBattery. The link is in my signature. You also must install HWMonitor.app because it produces polling to change battery status. Quote Link to comment Share on other sites More sharing options...
davieees Posted August 9, 2021 Author Share Posted August 9, 2021 (edited) 6 hours ago, Slice said: Hi, I just want to propose very other solution. To use it you have to exclude all kexts from previous solutions. Not use VirtualSMC, SMCBattery Not use FakeSMC with plugins from Rehabman. Not use ACPIBatteryManager, not edit DSDT. I want to propose you to use FakeSMC3+VoodooBattery. The link is in my signature. You also must install HWMonitor.app because it produces polling to change battery status. hi slice. yeah, i tried. samething but i also have a new option under settings -> battery -> power adapter: (you can see it in the image below) i remvoed virtualsmc, and the battery thing. haven't used fakesmc with plugins from rehabman. i used the fakesmc3 with the battery one. i installed the app, and nothing changed. what can i do more? also, new information in system report -> power (it has been changed due to the kexts i think, see the image below). should i do a dsdt patch? what patches to apply? i am a newbie as i said and would appreciate some help. thankies! regards, dave. Edited August 9, 2021 by davieees *battery -> power* Quote Link to comment Share on other sites More sharing options...
Slice Posted August 9, 2021 Share Posted August 9, 2021 Yes, it looks like the battery is near to end of life. Consider to replace it. Quote Link to comment Share on other sites More sharing options...
davieees Posted August 9, 2021 Author Share Posted August 9, 2021 35 minutes ago, Slice said: Yes, it looks like the battery is near to end of life. Consider to replace it. oh okie. thanks anyways for your patience to figure it out. i'll try to replace it with a new battery, maybe over 2000 mAh. thanks! wish you a wonderful day! you can consider this case as resolved. regards, dave. 1 Quote Link to comment Share on other sites More sharing options...
deeveedee Posted February 11, 2023 Share Posted February 11, 2023 (edited) I believe that _BIF is the ACPI method for battery information and _BST is the ACPI method for battery status. Leaving the post below for historical purposes. The following from MBP6,2 ACPI shows the returned package sizes/formats for _BIF and _BST: _BIF returns Package (0x0D) { 0x00, 0xFFFFFFFF, 0xFFFFFFFF, 0x01, 0xFFFFFFFF, 0xFA, 0x64, 0x0A, 0x0A, " ", " ", " ", " " } _BST (Battery Status) returns Package (0x04) { 0x00, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF } ============================================ Resurrecting this old post with the same issue of my own. Does anyone know what ACPI method is used to read battery status? Specifically, what method is used to read CurrentCapacity and DesignCapacity? It seems to me that macOS is incorrectly reading either my battery's CurrentCapacity or DesignCapacity (or both). Details below... On my HackBookPro6,2, I am using FakeSMC3 and VoodooBatterySMC.kext. I just noticed that battery status in my Menu Bar reports "Service Recommended." Addition of ECEnabler.kext does not change the reported battery status. I do not implement any battery ACPI patching. Battery charge level (with percentage) seems to be properly displayed in my Menu Bar. Inspection of my IORegistry reveals that Current Capacity (fully charged) is much less than Design Capacity, so I suspect this is why macOS reports "Service Recommended." Battery attributes in IORegistry Spoiler When I boot Windows 10, battery health is reported as OK. It's a fairly new battery and the battery holds a charge for hours (which is amazing given that this is a 2010 laptop). When running macOS, battery charges normally and battery discharge rate seems normal and battery level is displayed as what seems to be normally in the Menu Bar. EDIT: The DesignCapacity 0x19c8 is 6600 decimal. I think it is a 6600 mAh battery, so DesignCapacity appears to be read correctly. EDIT2: Interesting ... This M$ document indicates that _BIX returns DesignCapacity, etc. Neither my Dell ACPI nor a real MBP6,2 ACPI implement _BIX. EDIT3: This document indicates that the method is _BIF. _BIF looks to be the correct method common to PC and Mac ACPI. Edited February 12, 2023 by deeveedee 1 Quote Link to comment Share on other sites More sharing options...
CloverLeaf Posted February 13, 2023 Share Posted February 13, 2023 I got "Service recommended" recently on my 7490. Battery holds good 5+ hours daily tasks. BIOS says "Excellent" condition. MacOS is either too sensitive in terms of battery health or just give us wrong information 😆 1 Quote Link to comment Share on other sites More sharing options...
Slice Posted February 13, 2023 Share Posted February 13, 2023 7 hours ago, Jazzoo said: I got "Service recommended" recently on my 7490. Battery holds good 5+ hours daily tasks. BIOS says "Excellent" condition. MacOS is either too sensitive in terms of battery health or just give us wrong information 😆 macOS is not able to read battery status. It is a hackintosh driver for battery affair. 1 1 Quote Link to comment Share on other sites More sharing options...
deeveedee Posted February 13, 2023 Share Posted February 13, 2023 (edited) 1 hour ago, Slice said: macOS is not able to read battery status. I was hoping to learn something by comparing my Dell Latitude E6410 ACPI to the ACPI of a real MBP6,2, but only ended up more confused. In the ACPI of a real MBP6,2, there is a single battery device, BAT0, and BAT0._STA returns 0 when running macOS: BAT0._STA from real MBP6,2 Spoiler Scope (\_SB) { Device (BAT0) { Method (_STA, 0, NotSerialized) { If (OSDW ()) { Return (0x00) } . . . } This is consistent with the IOReg from a real MBP6,2: MBP6,2 IOReg Spoiler Looking further in the MBP6,2 IOReg shows where SmartBattery appears Spoiler Looking again at the MBP6,2 ACPI reveals two battery related methods that reference SMB0: Spoiler Method (UBIF, 0, NotSerialized) { \_SB.PCI0.LPCB.EC.SMB0.SBRW (0x0B, 0x18, RefOf (Local0)) Multiply (Local0, 0x0A, Index (PBIF, 0x01)) \_SB.PCI0.LPCB.EC.SMB0.SBRW (0x0B, 0x10, RefOf (Local0)) Multiply (Local0, 0x0A, Index (PBIF, 0x02)) \_SB.PCI0.LPCB.EC.SMB0.SBRW (0x0B, 0x19, RefOf (Local0)) Store (Local0, Index (PBIF, 0x04)) \_SB.PCI0.LPCB.EC.SMB0.SBRB (0x0B, 0x21, RefOf (Local0)) Store (Local0, Index (PBIF, 0x09)) Store (Buffer (0x01) { 0x00 }, Index (PBIF, 0x0A)) \_SB.PCI0.LPCB.EC.SMB0.SBRB (0x0B, 0x22, RefOf (Local0)) Store (Local0, Index (PBIF, 0x0B)) \_SB.PCI0.LPCB.EC.SMB0.SBRB (0x0B, 0x20, RefOf (Local0)) Store (Local0, Index (PBIF, 0x0C)) } Method (UBST, 0, NotSerialized) { \_SB.PCI0.LPCB.EC.SMB0.SBRW (0x0B, 0x09, RefOf (Local2)) Store (Local2, Index (PBST, 0x03)) \_SB.PCI0.LPCB.EC.SMB0.SBRW (0x0B, 0x0A, RefOf (Local0)) If (And (Local0, 0x8000)) { Not (Local0, Local0) And (Increment (Local0), 0xFFFF, Local0) } Multiply (Local0, Local2, Local0) Divide (Local0, 0x03E8, , Index (PBST, 0x01)) \_SB.PCI0.LPCB.EC.SMB0.SBRW (0x0B, 0x0F, RefOf (Local0)) Multiply (Local0, 0x0A, Index (PBST, 0x02)) Store (0x00, Local1) If (PWRS) { \_SB.PCI0.LPCB.EC.SMB0.SBRW (0x0B, 0x16, RefOf (Local0)) If (LNot (And (Local0, 0x40))) { Store (0x02, Local1) } } Else { Store (0x01, Local1) } Store (Local1, Index (PBST, 0x00)) } It does appear that macOS is having no problem finding the battery information, since my hacks IOReg shows AppleSmartBattery. Whether it is reading the battery information correctly is not clear. Spoiler Edited February 13, 2023 by deeveedee Quote Link to comment Share on other sites More sharing options...
1Revenger1 Posted February 13, 2023 Share Posted February 13, 2023 Check the acpi specification docs. Macs do battery status differently compared to other devices. The driver communicates over SMBus (through the EC) in the AppleECBusController driver if I’m remembering right. It’s not worth trying to compare the two’s acpi in this case. 1 1 Quote Link to comment Share on other sites More sharing options...
deeveedee Posted February 13, 2023 Share Posted February 13, 2023 (edited) 19 hours ago, 1Revenger1 said: Check the acpi specification docs. Macs do battery status differently compared to other devices. The driver communicates over SMBus (through the EC) in the AppleECBusController driver if I’m remembering right. It’s not worth trying to compare the two’s acpi in this case. My posted info here seems to validate your SMBUS/EC statement. It is interesting that AppleSmartBattery is "attached" to my hack's BAT0 in IORegistry, so macOS is finding the battery info. EDIT: I'm developing a better understanding/appreciation of VoodooBatterySMC.kext. Without the kext, AppleSmartBattery does not discover my hack's battery info (no AppleSmartBattery appears under BAT0 in IORegistry). Forgive my remedial posts about this, but I'm just learning this stuff. IORegistry: BAT0 without VoodooBatterySMC.kext Spoiler EDIT: I have a HackBookPro15,2 that uses VirtualSMC and SMCBatteryManager. With the Acidanthera kexts, AppleSmartBattery is not "attached" to BAT0, so clearly SMCBatteryManager's implementation of the SMC Battery spoofing is different than that of VoodooBatterySMC. Edited February 14, 2023 by deeveedee Quote Link to comment Share on other sites More sharing options...
deeveedee Posted February 13, 2023 Share Posted February 13, 2023 @Slice Does VoodooBatterySMC.kext read battery info using ACPI methods _BIF and _BST? Is VoodooBatterySMC.kext interrupt driven or does it poll battery status? Quote Link to comment Share on other sites More sharing options...
Slice Posted February 14, 2023 Share Posted February 14, 2023 19 hours ago, deeveedee said: @Slice Does VoodooBatterySMC.kext read battery info using ACPI methods _BIF and _BST? Is VoodooBatterySMC.kext interrupt driven or does it poll battery status? Yes, it uses ACPI methods. It polls battery status but I am not sure if effectively so I propose to use HWMonitorSMC application which make additional polling 1 per second. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.