ChargeSpeed: live charging power on an iPhone, read from the phone's PMU and charger sensors via private APIs. Build it yourself, install on your own phone. Cannot ship on the App Store because of the private APIs it uses (see below).
To compare chargers and cables. iOS shows a lightning bolt and nothing else. Seeing the wattage exposed a few bad charging setups I'd been using.
Tried and blocked by the sandbox on iOS 26; the simulator shows them because it reads the Mac:
Details in CLAUDE.md.
They estimate from the percent climb times rated capacity: minutes of delay, battery side only, wrong under throttling or holds. This reads the sensors. The same estimate is kept as a fallback ("% rate"). Private APIs are why this can't be published: Guideline 2.5.1, and TestFlight scans too.
Xcode and XcodeGen. A free Apple ID is enough; no paid Apple Developer Program membership needed.
xcodegen generate
open ChargeSpeed.xcodeproj
DEVELOPMENT_TEAM in project.yml, regenerate).Free Apple ID: 7-day expiry, 3 sideloaded apps, own devices only. Paid Apple Developer Program: 1-year signing, ad hoc distribution to 100 devices. Simulator works but reads the Mac's battery.
Private APIs can change or disappear in any iOS update.
MIT. See LICENSE.
2 commits
Swift
81.4%
Objective-C
18.6%
ChargeSpeed: live charging power on an iPhone, read from the phone's PMU and charger sensors via private APIs. Build it yourself, install on your own phone. Cannot ship on the App Store because of the private APIs it uses (see below).
To compare chargers and cables. iOS shows a lightning bolt and nothing else. Seeing the wattage exposed a few bad charging setups I'd been using.
Tried and blocked by the sandbox on iOS 26; the simulator shows them because it reads the Mac:
Details in CLAUDE.md.
They estimate from the percent climb times rated capacity: minutes of delay, battery side only, wrong under throttling or holds. This reads the sensors. The same estimate is kept as a fallback ("% rate"). Private APIs are why this can't be published: Guideline 2.5.1, and TestFlight scans too.
Xcode and XcodeGen. A free Apple ID is enough; no paid Apple Developer Program membership needed.
xcodegen generate
open ChargeSpeed.xcodeproj
DEVELOPMENT_TEAM in project.yml, regenerate).Free Apple ID: 7-day expiry, 3 sideloaded apps, own devices only. Paid Apple Developer Program: 1-year signing, ad hoc distribution to 100 devices. Simulator works but reads the Mac's battery.
Private APIs can change or disappear in any iOS update.
MIT. See LICENSE.
2 commits
Swift
81.4%
Objective-C
18.6%