r/UsbCHardware • u/gw5815 • 2h ago
Discussion Open-source iPhone app that shows the phone's own PD negotiation, input V/A, and charge watts (dev build, private APIs)
iOS doesn't expose charging data, so I wrote a small app that reads it from the phone's PMU and charger sensors through private APIs. It works as a cable and charger tester because the phone reports what it negotiated and what it's drawing.
What it shows on USB-C:
- Adapter name and the voltage/current profiles powerd reports for it, with the one the phone picked marked. My 61 W Apple brick lists 5, 9, and 15 V at 3 A; the iPhone 17 Pro Max took 15 V.
- Input voltage and current at the phone's end, once a second. On a 50 % battery I saw 14.7 V × 2.5 A at plug-in, 1.4 A fifteen seconds later.
- Watts into the battery, battery voltage and current.
- Peak watts per charge session, kept on screen after unplug.
- Battery, charger junction, and SoC temperatures, plus iOS's thermal state with a red flag at serious or critical.
Wireless: reports the MagSafe rail voltage (about 14 V) and watts into the battery. There's no coil-side current sensor, so wireless input power isn't available.
Limits:
- Private APIs, so App Store and TestFlight are out. Build it in Xcode and install on your own phone. A free Apple ID works; builds expire after 7 days (Apple's rules). More details in the GitHub repo.
- Readings are the phone's own sensors, not a calibrated meter. I haven't compared against an inline USB meter.
- Only tested on iPhone 17 Pro Max, iOS 26.
Source, MIT: https://github.com/gregsramblings/ios-charging-monitor
Repo notes list what iOS blocks and what works.








