finds.dev← search

// the find

andrew-codechimp/HA-Battery-Notes

★ 1,170 · Python · MIT · updated Sep 2026

A Home Assistant integration to provide battery details of devices

A Home Assistant custom integration that layers battery metadata on top of existing battery sensors: it tracks battery type, replacement date, and reporting staleness per device, and auto-fills battery type via a community-maintained device library on discovery. It's for HA users with a pile of Zigbee/Z-Wave devices who want a single place to know which battery goes where and when it was last swapped.

Discovery against a growing JSON library pre-fills battery type for many known devices instead of making you enter it manually for every entity. Low/replaced/not-reported states are exposed as HA events and actions, and the docs ship ready-made blueprints for the common automations (low battery notification, stale reporting, etc). Integration hygiene is solid for a custom component - config_flow, repairs, diagnostics, and translations into 25+ languages via Crowdin, all backed by CI that validates the library JSON and translation files on every change.

Test coverage is thin relative to what the component does - only binary_sensor, library, and translations have tests, while coordinator.py, config_flow.py, and services.py (the actual state-tracking logic) have none. The library's coverage depends entirely on community submissions, so anything not yet contributed falls back to manual entry, and the README explicitly tells you not to consume the library directly from this repo if you're building your own tooling, which is real friction for reuse. It's purely a metadata layer on top of a battery sensor HA already has - it does nothing for devices that don't already report battery percentage, so it doesn't solve the underlying problem for those.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →