Third Reality Smart Button

My hub is up to date and I've managed to successfully pair a Zigbee Third Reality Smart Button. It basically has a single push, double push, and hold to config 3 different actions. It is paired, but never seems to actually register button pushes. I've reset and repaired about a dozen times (seriously) with the same result. If I check the debug logs after pushing the button, all I see is:

Screenshot_20221130_143158

Each time represents a push and a release within under a second, so it appears to be talking, somewhat. Any suggestions? For $14.99 on Amazon, I'm about to throw it across the street :slight_smile:

When paired it does initially pair with a generic Zigbee motion sensor driver (no temp). I changed that to the HE driver, saved, and hit configure, but that didn't seem to make any difference.

Is this the "Third Reality Smart Button (3RSB22BZ)" ?

That was supposed to be added in release 2.3.2.123 back in June.

It sounds like the fingerprint needs to be updated to pick up the correct driver. As to why it's not working - I have no clue but it seems worth tagging @support_team for input/suggestions.

1 Like

That's the exact one, I bought it specifically because I saw it in the release notes, and well, it was cheap!

Can you post the device fingerprint of the non working unit?

I just got one from Amazon the other day (https://www.amazon.com/dp/B09ZQGZX3G) .

However, it had no problem correctly pairing with my Hubitat C-7 running 2.3.4.114. The system selected the "Third Reality Smart Button" driver itself - I didn't have to change it. I've had no problem with it registering push, double push, or held.

image

I like that it uses 2xAAs. But it doesn't have any sort of active reporting, like sending the battery level once a day. That thwarts using Device Activity Check for last update, and makes me rely upon it's battery level. That means I won't know the battery is dead until I go to press it.

But I don't know how to address your problem.

When I had debug logging on, the descMap is filled in:

My working one says:

fingerprint profileId:"0104", endpointId:"01", inClusters:"0000,0001,0012", outClusters:"0019,0006,0008", model:"3RSB22BZ", manufacturer:"Third Reality, Inc"
ZCL version:03
Software Build Id:1.00.16
Model:3RSB22BZ
Manufacturer:Third Reality, Inc

It appears mine looks identical:

I'm not sure how to get the remaining info from the previous post?

ZCL version:03
Software Build Id:1.00.16
Model:3RSB22BZ
Manufacturer:Third Reality, Inc

fingerprint profileId:"0104", endpointId:"01", inClusters:"0000,0001,0500", outClusters:"0019", model:"3RSB22BZ", manufacturer:"Third Reality, Inc"

Is that better?

1 Like

That's perfect, as it's the line that typically gets added to the driver's fingerprint section, at least with most drivers I've seen. Unless Mike maybe using some secret sauce format for his drivers....

As a typical example from a random driver:

1 Like

Is there a way for me to modify the driver, or create a new test driver to make the device work?

That finger print is completely different from the fingerprint in the production driver.
Your device: inClusters:0000,0001,0500
Production device: inClusters:0000,0001,0012

The production driver uses cluster 0012 for the button events, it looks like third reality changed the new device to use cluster 0x0500 (and they could have easily left the cluster 0012 functions in the firmware), so this device isn't going to work at all with the current driver and I would need a sample of this specific unit to make a driver work for it.

Changing the device function like this is a very bad practice.
We've removed devices from the compatibility list in the past for doing this crap...

3 Likes

Consider sending it to @mike.maxwell for him to update the driver, instead of throwing it across the street.

Absolutely, I didn't really know that was an option. @mike.maxwell, how can I send this to you?

On a side note, I did buy two of them and the 2nd one paired right away and got the right driver. Works perfectly, all pushes are properly recognized.

what is the model listed in the data section for the second one that you purchased?

Data screenshot attached:

Screenshot_20230616_114901

This one paired fine and has been working perfectly since then.

OK, the model number didn't populate in the driver for some reason, what's the model number on the back of the actual device?

The model you posted is the same as the model you sent me.
and so third reality is very confused as to which firmware is supposed to be for these.
I updated the firmware on the one you sent and it turned it into a door sensor...
I've contacted third reality on getting the correct firmware for these, once that's done I can figure out what clusters the device is supposed to use and update the drivers ect.
I'll ping them again tomorrow as I've not heard back since communicating with them last week.

2 Likes

OK, so here's the scoop on these, per Third Reality:
The button has two zigbee pairing modes, the standard ZigBee pairing mode is used to pair most ZigBee hubs such as hubitat, while the Echo ZigBee pairing mode is specifically used to pair to Amazon Echo speakers.

If the button is in standard Zigbee pairing mode, the LED indicator will blink quickly in blue. If the button is in Echo ZigBee pairing mode, the LED indicator will blink quickly in blue and red.

In versions before 1.00.22, to change between 2 ZigBee pairing modes, press the front button and reset button simultaneously for 5 seconds.

In versions 1.00.22 and later, to change between 2 ZigBee pairing modes, press the reset button 5 times within 5 seconds.

So the unit I had was initially blinking red and blue.
When it joins Hubitat in this mode, only one button event is registered and the wrong driver gets selected.
After changing the pairing mode, the correct driver is selected and the device functions as expected.
Button headed back your way...

7 Likes

Very interesting mystery solved. Nice work, Mike. And geez Third Reality, can't you guys just find a way to keep it a little simpler, please. :pray: :wink: