Battery Device Status 1.39 -- UPDATED: 2026-05-25

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.

2026-05-14 - v. 1.34: UI/UX improvements.

2026-05-15 - v. 1.35: UI/UX improvement: the Hub column is now hideable, useful when only one hub is being monitored.

2026-05-15 - v. 1.38: The app now can be renamed in the "Report Type, Schedule & Logging" section, and the "lastBattery" date in the Current States for IKEA Parasoll Door/Window Sensors is considered to be the same as a "Last Battery Event" date.

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.

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:

https://raw.githubusercontent.com/JohnFLand/Battery-Device-Status/refs/heads/main/Battery_Device_Status.groovy

9 Likes

Looks like my curtain isn't closing tonight!

1 Like

Is that a real battery state for your curtain bot? I've found that some devices (including one mains powered device that has a battery backup, so it shows up on my list of battery powered devices) don't report battery level very accurately.

Yeah, unfortunately it's real. I have two of the Zemismart curtain motors and one has a flaky battery which drops twice as fast as the other one. It is on my radar but I just leave it until the Mrs complains before I react!

1 Like

I am WAF prompt-driven myself.

2026-05-04: new update posted, can not track battery status on 2 additional hubs via Maker API. See the Github link in the first post (read the README.MD file on Github).