Repository navigation
Releases: LondonVista/iPhoneBatteryWidget
Releases · LondonVista/iPhoneBatteryWidget
Release list
v1.0.24 - History file 6x smaller with calmer logging
What's new
- History file about 6x smaller. Device details are stored once instead of in every reading, so a reading takes about 108 bytes instead of 494.
- History is kept for good. Readings older than 30 days keep one per hour per device, which is plenty for monthly and yearly charts. Old data is no longer deleted when a limit is hit.
- Calmer logging. A new reading is saved on a 1 °C or 1% change, soon after you plug in or unplug, and otherwise every 5 minutes.
- Less memory. Live memory use is about half of v1.0.23.
Your existing history converts automatically on first launch.
Install
Download iPhoneBatteryWidget-Installer.dmg and drag the app to Applications.
v1.0.23 - Half the memory and far fewer disk writes
What's new
- About half the memory. The widget dropped from about 107 MB to about 48 MB in testing.
- Far fewer disk writes. Battery history now lives in its own file and saves at most every 5 minutes, plus straight away on sleep and quit. Before, every new reading rewrote about 9 MB of settings.
- Your existing history moves over automatically on first launch.
Install
Download iPhoneBatteryWidget-Installer.dmg and drag the app to Applications.
v1.0.22 - Low CPU, honest charger readings and a weekly usage graph
The widget is much lighter on your Mac, and its charger and temperature readings tell the truth.
- Uses about 2% CPU when idle instead of 50-70%. The lid history is read far more efficiently, plugging in an iPhone no longer re-reads it, and the break reminder glow is drawn by macOS itself.
- "On AC" shows only when power is actually flowing in. If a charger is connected but delivers nothing, the USB-PD row shows "0 W in" in orange.
- Mac power keeps its real sign: orange minus when the battery drains, green plus when it charges. A new "Draining on AC" status shows when the Mac uses more than the charger gives.
- Mac temperature updates in 0.1 °C steps, and its arrow now follows the last minute instead of the last half hour.
- New weekly usage graph in the Lid Sessions tab, with week total, daily average, peak day and days worked.
v1.0.21 - Break reminder and correct lid sessions
The widget now reminds you to take a break, and lid sessions start and end where they should.
- After the lid has been open for your chosen time, a "Time for a break" banner appears on the widget. Choose 30 min, 45 min, 1 h, 1.5 h or 2 h under Sound & Look, or turn it off there.
- The banner shows the current session with ticking seconds, plus the previous session and today's total. It gently pulses and stays until you click ✕ or close the lid.
- Closing the lid ends the session. The next session can show the reminder again.
- Starting the Mac counts as opening the lid, so "Today Lid Open" shows after a restart.
- Shutting down closes the open session, and sessions are no longer listed twice.
v1.0.20 - Live Mac temperature and correct iPhone percent
The Mac battery temperature updates live, and the iPhone shows the same percent as its own screen.
- Mac battery temperature follows the live sensor every few seconds, in 0.1 °C steps. It used to update about once a minute and trail by about 1 °C.
- The iPhone percent comes from the live battery gauge. It no longer sticks at 100% while the phone drains.
- If the iPhone's diagnostics connection fails, the phone stays in the list instead of disappearing.
v1.0.19 - Wake crash fix and lower idle CPU
History opens reliably after sleep, and the widget uses far less CPU when idle.
- Clicking History after waking from sleep no longer crashes the app.
- The lid session log is read on wake and every 15 minutes instead of every minute, which saves about 3 seconds of CPU per minute.
- Launch and quit no longer stall for 1.5 seconds, and leftover iPhone probes are cleaned up.
- A failed Mac battery read keeps the last real value instead of showing an invented 66%.
- With volume override on, chimes keep their volume until they finish.
- History saves stay in order and finish before the app quits.
- Macs other than the MacBook Air show their real product name.
v1.0.18 - Wired iPhone 18 Pro and a steadier Settings window
The wired iPhone 18 Pro is the main phone. The iPhone 15 and iPhone 17 Pro stay in the archive.
- Settings opens on top of other windows from the gear, then drops behind when you click another window. Closing it hides the window instead of destroying it.
- The battery panel resizes on the next turn, which was crashing the app on the main queue.
- The iPhone 18 Pro health chart shows the last 3 days. Older phones keep the month ranges.
v1.0.17 - Cycle overlay and faster snapshots
What's Changed in v1.0.17
- Retired iPhone compare: The iPhone 15 shows in Settings. Its health line sits on the same cycle numbers as the current phone. 1, 3, 6, and 12 months follow the current phone's cycles.
- iPhone 18 Pro: Recognized when it is the connected phone. The 17 Pro then moves into the retired row.
- Snapshot Database: Click a day to see one reading per hour. Switching between the iPhone and the Mac uses lists that are already built.
v1.0.10 - Month charts and native Mac battery
What's Changed in v1.0.10
- 1, 3, 6, and 12 month charts: The health degradation graph and the daily temperature graph can each show the last month, 3 months, 6 months, or 12 months, alongside the full history.
- Native Mac battery reads: Battery, adapter, and temperature now come from IOKit instead of launching
ioregevery second. - No idle Python probes: An empty usbmux device list means nothing is plugged in. Python only runs when that check fails, or about every 3 seconds while an iPhone is actually connected.
- One banner per alert: Charge and charger notifications no longer post a second copy.
v1.0.8 - Isolated Notification Subprocess & AppleScript Stability Fix
What's Changed in v1.0.8
- Eliminated NSAppleScript Background Thread Crash: Replaced in-process
NSAppleScriptexecution with an isolatedProcess()calling/usr/bin/osascript, permanently preventing legacy AppleScript component memory corruption /EXC_BAD_ACCESScrashes on background dispatch queues. - Robust System Notifications: System banner delivery is fully decoupled from the app process memory space for guaranteed stability.