Yet another battery status app...
This one is based on 'Battery Notifier' by Bruce Ravenel, but heavily modified as a vehicle for me learning a bit about Groovy and ChatGPT (which admittedly did all the detail work).
Main features:
- Shows only devices that report a "battery" capability.
- Selectively shows devices based on low/critical battery, offline devices, last event (any type), last battery event, and last activity.
- Configurable reporting interval and reporting time.
- Output is in a sortable table for ease of reading.
- Parenthetical details in section headings can be suppressed.
- Multiple notification devices supported.
- Plain-text table for notifications (e.g., Pushover, Hubitat)
- Last run date displayed at bottom of UI.
- Configurable low battery warning and critical battery level.
- Users can select one or more reports via check-boxes.
- Each report has its own Sort By & Order.
- Tables automatically show when the app is opened.
- Can now suppress reporting devices in the "Last Battery Event" table if the device simply reports "NEVER" -- reduces table clutter.
- For Pushover notifications, can now specify that the first report goes to a "sound" device and other reports go to a "silent" device (must set that notification for that device to be "none").
- Now multi-hub: can track battery data, via Maker API, on 2 additional hubs.
2025-08-18 FIXES:
- Plain-text table for notification devices (e.g., Pushover, Hubitat)
- "[Never]" is red only in "Check Now" view, plain in notifications.
2025-08-19 FIXES:
- Some more cosmetic changes to the plain text "table" for notification devices
- More cosmetic changes to output tables
2025-08-22 Update
- Added "All Tables" option (sequentially outputs Any, Offline, Battery reports)
- Independent sorting per section when "All Tables" is selected
2025-09-05 Update
- Added a battery level table, configurable as to "low" and "critical" levels.
2025-09-06 Update: Fixed a bug that omitted reports when sent to a single notification device.
2025-09-19 Update: Cosmetic changes, and made the selected tables auto-generate when the app opens.
2025-10-24 Update: More cosmetic changes, and added a "Send Report Now" button.
2025-11-18 Update: Adds the ability to suppress reporting devices in the "Last Battery Event" table if the device simply reports "NEVER" -- reduces table clutter.
2026-01-01 Update: Mostly cosmetic fixes, plus a few minor bugs swatted.
2026-01-04 Update: Mostly cosmetic fixes, plus a few more minor bugs swatted.
2026-04-27 Update: Minor cosmetic fixes.
2026-05-04 Update: Can now track battery data, via Maker API, on 2 additional hubs.
CAVEAT: I'm a dabbler, not a professional programmer, and I have a VERY incomplete understanding of Groovy and the Hubitat API. Accordingly, constructive comments/critiques are welcome.
BTW, I tried (actually, ChatGPT tried multiple times) to get the table be sortable by clicking on the table column headings, but that didn't work at all. Any pointers on how that might be accomplished in the Groovy/Hubitat context would be appreciated.
Sample "Refresh Table" output:
The remote hub UI is a bit clunky because of limitation's in Hubitat's UI features, and I could not get the collapse/expand behavior to be well-behaved, but it works (for me at least).
Consider this to be a BETA app and use at your peril.
The code is now too large to post in this Forum, but you can fetch it (along with a User Guide document) from here:

