You will need to use ACPIDebug.kext to debug/troubleshoot your _BIF/_BST/_BST methods.
Hi Rehabman,
So I managed to get some output from battery related methods _STA, _BST and others and I've attached a log (plus comments) of both ACPIDebug output as well as ACPISmartBattery. I have also attached a DSDT file so that you can see what lines are causing the output. Could you please have a look at them when you can because even after reading up on some of those methods in the ACPI spec, I'm still quite unsure :/
What I've learnt so far about this situation:
- macOS boots
- ACPISmartBattery tries to poll battery
- _STA in BAT0 reports that there is no battery (maybe due to MIS0 which is mentioned in a different place in DSDT that checks what power the laptop is getting).
- ACPISmartBattery continues to poll with the same result
- I press brightness up/down key on my laptop and - boom - ACPISmartBattery says that I've inserted a battery and immediately gets battery information.
- Battery icon shows the current status however the percentage does not update and AC plug status is stuck as well.
- Stats update in IOReg correctly in realtime
P.S.: Would changing the _STA method in BAT0 so it reports so that there is always a battery cause an issue in your opinion? Cause after 1 is returned (i.e. a battery is present) the laptop has no problems reading the battery status. It's kind of a janky fix though.
If you need more info, please let me know.
Sorry to bother you so much,
Thanks in advance!