Contribute
Register

[Guide] How to patch DSDT for working battery status

It appears to work as well, although when I restarted, the trackpad and buttons stopped working (probably unrelated) but when i restarted a second time, everything appears to be working. As to which works better I can't really tell but the battery seems to be draining faster withN55SL/VivoBook patch (or maybe its giving a more accurate reading) I have yet to patch for native power management but its next on the list.

Battery status does not affect power usage. That is a function of power management.

The G75vw patch has patches that are to non-EC fields with your DSDT.
 
I have successfully patched my dsdt but my battery status is still not showing. The battery only works for coconut battery version 2.6.6. It does not show in any energy saver settings and does not allow me to add battery percentage to the taskbar. Atached is my ioreg file.
 

Attachments

  • Anthony’s MacBook Pro.ioreg
    5.3 MB · Views: 97
I have successfully patched my dsdt but my battery status is still not showing. The battery only works for coconut battery version 2.6.6. It does not show in any energy saver settings and does not allow me to add battery percentage to the taskbar. Atached is my ioreg file.

From ioreg, battery status is working.

But much is wrong with your setup:
- why did you install VoodooTSCSync?
- why did you install a rollback AppleACPIPlatform?
- you installed 10.10.0 Only 10.10.5 is available from the MAS. From where did you download Yosemite?
- GenericUSBXCHI.kext is installed, but may not be a build appropriate for Yosemite. Also, GenericUSBXHCI.kext should be avoided... it is buggy on 10.10, and doesn't work at all on 10.11 (for future)
- you have NullCPUPowerManagement.kext in EFI/Clover kexts, but it is never needed with Clover

Suggest fresh install.

Follow guide: http://www.tonymacx86.com/yosemite-...de-booting-os-x-installer-laptops-clover.html
 
Thanks for all the help rehabman. I was able to get everything working perfectly after a fresh install. It was difficult due to the fact that my computer does not have ahci support. I can upload my DSDT if you want. Its for an hp envy touchsmart with ivybridge i5, hd4000.
 
Thanks for all the help rehabman. I was able to get everything working perfectly after a fresh install. It was difficult due to the fact that my computer does not have ahci support. I can upload my DSDT if you want. Its for an hp envy touchsmart with ivybridge i5, hd4000.

No need for DSDT (only you can use your DSDT), but if you have a new/unique battery patch to contribute or facts regarding applicability of an existing patch towards a new laptop model, please provide details.
 
Good day Rehabman!
Just a quick note:
Your patch - Laptop Patches
#battery_ASUS-N55SL.txt
is working great for ASUS UX32V
___________________________
The only error untreatable by SYN patches block was:
Invalid object type for reserved name (_ROM: found Integer, Buffer required)
it was invoked by the line
Code:
Return (Zero)

in this Code block:
Code:
        Method (_ROM, 2, NotSerialized)  // _ROM: Read-Only Memory
        {
            If (RBUF)
            {
                Add (Arg0, RBUF, Local0)
                Name (VBUF, Buffer (Arg1) {})
                OperationRegion (VROM, SystemMemory, Local0, 0x1000)
                Field (VROM, ByteAcc, NoLock, Preserve)
                {
                    ROMI,   32768
                }

                Store (ROMI, VBUF)
                Return (VBUF)
            }
            Else
            {
                Return (Zero)
            }
        }

My fix was:

Code:
Method (_ROM, 2, NotSerialized)  // _ROM: Read-Only Memory
        {
            If (RBUF)
            {
                Add (Arg0, RBUF, Local0)
                Name (VBUF, Buffer (Arg1) {})
                OperationRegion (VROM, SystemMemory, Local0, 0x1000)
                Field (VROM, ByteAcc, NoLock, Preserve)
                {
                    ROMI,   32768
                }

                Store (ROMI, VBUF)
                Return (VBUF)
            }
            Else
            {
                Store (0,VBUF)
                Return (VBUF)
            }
        }

after that DSDT compiled and now is working OK.

Thanks for your work!
 
Good day Rehabman!
Just a quick note:
Your patch - Laptop Patches
#battery_ASUS-N55SL.txt
is working great for ASUS UX32V

Asus laptops share a lot regarding battery status...

And '# ASUS ZenBook UX32VD' is already there...

Will add a comment...

___________________________
The only error untreatable by SYN patches block was:
Invalid object type for reserved name (_ROM: found Integer, Buffer required)
it was invoked by the line
Code:
Return (Zero)

in this Code block:
Code:
        Method (_ROM, 2, NotSerialized)  // _ROM: Read-Only Memory
        {
            If (RBUF)
            {
                Add (Arg0, RBUF, Local0)
                Name (VBUF, Buffer (Arg1) {})
                OperationRegion (VROM, SystemMemory, Local0, 0x1000)
                Field (VROM, ByteAcc, NoLock, Preserve)
                {
                    ROMI,   32768
                }

                Store (ROMI, VBUF)
                Return (VBUF)
            }
            Else
            {
                Return (Zero)
            }
        }

My fix was:

Code:
Method (_ROM, 2, NotSerialized)  // _ROM: Read-Only Memory
        {
            If (RBUF)
            {
                Add (Arg0, RBUF, Local0)
                Name (VBUF, Buffer (Arg1) {})
                OperationRegion (VROM, SystemMemory, Local0, 0x1000)
                Field (VROM, ByteAcc, NoLock, Preserve)
                {
                    ROMI,   32768
                }

                Store (ROMI, VBUF)
                Return (VBUF)
            }
            Else
            {
                Store (0,VBUF)
                Return (VBUF)
            }
        }

after that DSDT compiled and now is working OK.

Thanks for your work!

I would probably just remove the 'Else' case entirely.
 
Back
Top