Keypad battery life not accurate

Something odd: Hubitat was reporting my Iris V2 keypad's battery life was 50%. However, the keypad had ceased operating and some of the key lights were dimly flickering. I ordered new batteries and when I put them in, the keypad was back to normal operation.

I have a battery alert set up to report battery life when it reaches 25%. However, the keypad never reported the failing batteries (CR-123). What could have caused the keypad to not report an accurate battery life? With new batteries, it is currently reading 100% However, now I will be trying to keep a much closer eye on this.

The Energizer batteries that came out of it have a voltage reading of 2.65v. Brand new Rayovac batteries have a reading of 3.28v. It is evident that the old batteries were near the end of thier usefulness, but why did I not get a warning? Do I have my reporting level of 25% set too low? Where should I have my battery alert set for best reporting of low battery life before the device dies?

Edit: Battery life reporting would be good to have set up right for all my battery operated devices,
not just the keypad.

You can monitor with HSM or you can use Device Watchdog.

Currently, I have the Notifications app set up to send a Pushover alert for any battery device that gets down to 25%. I know it works because I got a message for one device that I knew starting out had a battery that was not new. When it hit 25%, I got a message. It should have worked for the keypad also, but didn't. Was the 25% too low for the keypad?

I honestly couldn't tell you. However, I have read/heard that many battery operated devices simply crap out below 50%. I have HSM set to notify me when any of my devices reach 50%.

1 Like

Thanks. That is helpful. I'll change my notification to send at 50%.

The reality is, percent is a useless number, arbitrarily computed by a formula in a DH. It would be so much easier for me if they all simply reported volts.

In ST my personal DTH for the Iris V2 and Centralite keypads was modified to report volts. Like you I found that around 2.6Volts was the kiss of death for the keypad.

This is the formula for the ST keypad DTH percentage. The keypad reports battery in volts 3 volts reports as rawValue 30

private getBatteryResult(rawValue) {
def linkText = getLinkText(device)

def result = [name: 'battery']

def volts = rawValue / 10
def descriptionText=""
if (volts > 3.5) {
	result.descriptionText = "${linkText} battery has too much power (${volts} volts)."
else {
	def minVolts = 2.5
	def maxVolts = 3.0
	def pct = (volts - minVolts) / (maxVolts - minVolts)
	result.value = Math.min(100, Math.round(pct * 100))
	descriptionText = "${linkText} battery was ${result.value}% $volts volts"
	result.descriptionText = descriptionText
	logdebug "$result"
sendNotificationEvent (descriptionText)
return result



Yes, but does this port over to Hubitat?

Even after converting I'm unsure it will work directly with HSM. You may want to ask Support for a % calculation fix so
2.6v = 0% (it may run for a bit but it's time to change batteries)
2.7v = 20%
2.8v= 50%
2.9v= 80%
3.0 and over = 100%

I'll update ours (the centralite OEM drivers anyway, the V3 uses different batteries), lately I've actually been testing devices using an adjustable power supply to find out where they start to fail, these drivers predate that methodology...


That is true dedication! Thank You

Thank you. Voltage should be somewhat constant across the versions though. If the V3 fails at 2.6V, and mine failed at 2.65, the 0% level should likely be set at the higher voltage. I would likely want to get a warning to change them no later than when they reach 2.7v.

across the same battery type and device probably, different battery types have different discharge curves, so unlikely AA's in the V3 will behave the same as the CR2's in the centraLite OEM's...

Even then using voltage is a crap shoot...
I've seen CentraLite sensors that will operate correctly on 1.5 volts from a regulated power supply, but go all stupid when the no load voltage on the battery hits 2.5 ish...

Okay, I did not think of it that way. Still though, it would be good to have a way to tweak the battery % level so that it isn't reporting 50% when it does not have enough power to run a device.

as I mentioned previously, the minimum value for the CentraLite OEM keypad drivers has been changed and will be available in platform version 2.0.9.

1 Like

Any timeline on when 2.0.9 is expected to be released (other than "when it is ready", that is)?

sure!, "soon"....

In any event, your batteries aren't going to go dead in the next week or so...


Hopefully not anyway. I do have a few devices that have been in use a while (used with Iris before) so some of them may be at risk of running short on power. The lowest is 70% so I should be good.

Battery reporting thresholds are very much device specific, there is no one size fits all here.
The only threshold being modified is the one I mentioned.

Thank you for helping with the battery situation.

1 Like