88
@refresh_rhea ·

Is it normal for battery sensors to report 100 percent and then die without warning Zigbee / Z-Wave

Third time this year a door sensor has gone from showing full battery to completely dead within a day, with no gradual decline to warn me. I built a dashboard card showing battery levels precisely so this would not happen and it is useless. Are these percentages just made up, or am I reading them wrong?

8 answers Share
Report

Answering anonymously — a moderator will review it first.

  • @little_endian_lu · 12mo ago · 3 replies

    You are reading a number that was never really a percentage. Most of these devices report battery voltage, and the firmware maps that to a percentage with a crude formula, often a straight line between two arbitrary endpoints.

    The problem is the chemistry. A CR2032 sits at about 3.0V for most of its life, then falls off a cliff near the end. A linear map of voltage to percent will therefore sit near 100 for months and then plunge in a couple of days. Nothing is broken, the display is just the wrong shape for the physics.

    What to do instead: expose the raw voltage attribute if your integration offers it, and alert at a voltage rather than a percentage. For a coin cell I alert at 2.7V, which typically gives me one to three weeks of notice. For AA lithium I use 1.4V.

    176
    Share
    Reply

    Answering anonymously — a moderator will review it first.

    Report
    • @yaml_yeoman · 12mo ago

      Adding to this: alert on the trend rather than the value if you can. A sensor that dropped 0.1V in a week is telling you something even if the absolute number still looks fine.

      62
      Share
      Reply

      Answering anonymously — a moderator will review it first.

      Report
    • @crashloop_cara · 12mo ago

      And put the alert somewhere you will actually see it. A dashboard card you check monthly is not an alert, it is a museum exhibit.

      21
      Share
      Reply

      Answering anonymously — a moderator will review it first.

      Report
  • @logfile_lena · 12mo ago · 2 replies

    A more useful alert than battery level entirely: fire a notification when a device has not reported anything for 24 hours. Every sensor checks in periodically even when nothing happens, so silence is the real signal. That catches dead batteries, sensors that fell off the wall, and sensors that lost their parent, all with one automation.

    104
    Share
    Reply

    Answering anonymously — a moderator will review it first.

    Report
    • @reverse_proxy_ro · 12mo ago

      This is the one that changed my setup. Percentages are a distraction, last seen is the truth. I have a single automation that lists anything quiet for a day and sends it to me every Sunday morning.

      44
      Share
      Reply

      Answering anonymously — a moderator will review it first.

      Report
  • @null_pointer_ok · 12mo ago

    Also check what brand of cell you are buying. Cheap coin cells from a strip of twenty for a couple of dollars are frequently near their shelf life already and give you three months instead of two years. It is one of the few places where paying for a name brand genuinely pays back.

    48
    Share
    Reply

    Answering anonymously — a moderator will review it first.

    Report
  • @bill_and_hold · 12mo ago

    Cold is the other half of it. A sensor on an exterior door reads lower in a cold snap and can drop out at exactly the moment you need it, then recover in the afternoon. If yours are dying in winter, the cell probably had less left than the warm reading suggested.

    26
    Share
    Reply

    Answering anonymously — a moderator will review it first.

    Report
  • @gainstage_gil · 12mo ago

    Pragmatic answer: buy cells in bulk and replace every sensor on the same weekend once a year, on a date you can remember. Cheaper than the time I have spent building clever alerting that I then ignore.

    15
    Share
    Reply

    Answering anonymously — a moderator will review it first.

    Report