Skip to content

Intel MacBook Pro shows incorrect battery power while charging #3577

Description

@ama156

Describe the bug

On my 2019 16-inch Intel MacBook Pro (MacBookPro16,1), Stats reports an incorrect battery power value while the battery is actively charging.

For example, while charging I see:

  • Battery current: 4471 mA
  • Battery voltage: 12.43 V
  • Battery power shown by Stats: 0.19 W
  • Power adapter input: 81.15 W / 94 W
  • Adapter voltage: 20.00 V
  • Adapter current: 4057 mA

The battery voltage and current indicate that the battery is actually charging at approximately:

12.43 V × 4.471 A ≈ 55.6 W

So the displayed 0.19 W battery power value does not represent the actual charging power.

Cause

I traced this to Modules/Battery/readers.swift.

The current code prefers the PPBR SMC value:

self.usage.batteryPower = SMC.shared.getValue("PPBR") ?? (self.usage.voltage * (Double(self.usage.current) / 1000))

On this Intel Mac, PPBR remains around 0.2 W while the battery is actively charging.

It appears that PPBR on this model represents battery discharge-side power rather than power being delivered into the battery. Because the SMC key exists, Stats never falls back to calculating battery power from battery voltage × current.

Proposed fix

For Intel Macs while connected to AC power, use battery voltage × current to calculate charging power.

Keep the existing PPBR behavior when running from battery and keep the existing behavior unchanged on Apple Silicon.

I tested this change locally:

let calculatedBatteryPower =
    self.usage.voltage * (Double(self.usage.current) / 1000)

if !isARM && !self.usage.isBatteryPowered {
    self.usage.batteryPower = calculatedBatteryPower
} else {
    self.usage.batteryPower =
        SMC.shared.getValue("PPBR") ?? calculatedBatteryPower
}

With this change, the Battery popup reports the expected charging power (~55 W in the example above) instead of ~0.19 W.

I also tested running from battery to make sure the existing PPBR discharge-power behavior is preserved.

I have the tested change committed in my fork and can provide the commit/branch. I attempted to open a PR, but pull requests to this repository are currently restricted to collaborators.

Steps to reproduce

  1. Use an Intel MacBook Pro with a partially discharged battery.
  2. Connect a sufficiently powerful USB-C charger.
  3. Open Stats → Battery.
  4. Observe that the battery has several amps of charging current, but Battery → Power remains around 0.2 W.
  5. Compare the displayed value with battery Voltage × Current.

Details:

  • Device: MacBook Pro 16-inch, 2019 (MacBookPro16,1, Intel)
  • macOS: 26.5.2
  • Application version: 3.0.13

Screenshots

Before Fix:

Image

After Fix:

Image

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions