Device Temperature Not Updating Often Enough

Hello All,

Is there a way to have the system update the temperature of a device on shorter intervals? I have an AC unit using the temp from a button in that room and it is not adjusting fast enough to keep up with the room temp changes.

Thank You
Matt

Depends on the device. If the device driver has that capability it would be on the device page. But, generally speaking the devices report temp on a temp change, not time intervals. The temp change trigger can be modified on some devices. What button are you using for the temp? I have a smartthings button I use to trigger an A/C on only. But the logs show it reported a temp change of .91 degrees. It could be a placement issue of the button or it just takes a while for the button to change temps.

1 Like

Yes I am using a Smartthings Button in this case also :slight_smile:

I have several of the ST buttons. One was reporting temper much more frequently than the other, at least multiple times per hour, and I'm not sure why. Then I decided to press the "Configure" button on the driver page and then, bam, it went to reporting with about the same frequency as my others. They were all in the same room, albeit not in the exact same spot, but I wouldn't considner significant temperature differences to have played a factor here. (For the actual intervals: it's more dependent on temperature difference than time, I think, but right now mine tend to report in about once or twice per hour. This one seemed to report 4-5 times per hour or so, but again likely depending on actual change.)

Given this experience, I have reason to believe that the button does accept Zigbee configuration that can set some sort of threshold for reporting. This is a guess but consistent with a "Configure" seeming to change the behavior. A "Refresh" will also update the temperature, but if you do that too often (e.g., with a periodic rule) I imagine it would rain the battery faster than necessary. Unfortunately, the Hubitat driver does not expose anything to change this.

EDIT: I did some searching after and found the ST DTH for this device. The configuration guess was apparently correct. Line 289 (as of the current version) reads:
configCmds += zigbee.temperatureConfig(30, 300)
I have no idea what Hubitat's driver does but imagine it sends something similar but with a different range (the signature of the method on ST is temperatureConfig(minReportTime=30, maxReportTime=3600, reportableChange=0x0064), so these would be the min and max report times, it appears).

Any properly written zigbee device firmware will accept and honor reporting configuration settings for it's attributes.

So is there a "Basic Zigbee Tool" we can use to set these? :wink: I don't think there's an easy way for users to actually send these to the device, certainly nothing I can see for most devices with stock drivers. (I must have been playing around with this one on a custom driver before, which I assume sent that configuration--and the device kept it--until I switched drivers and did a configure.)

Yeah, it's sitting, half done in dev, there's really no easy way to simplify zigbee reporting at the user level without building some canned option combos, but think about it some more...

3 Likes

If you need a hand testing anything send me a message, I led large testing teams for large companies in my previous life before working full time for myself :slight_smile:

If you'd like a fast reporting, accurate, non-battery powered temperature/humidity/illuminance/pressure sensor, try one of @iharyadi's Zigbee Environment Sensors. They work much better than Motion, Contact, and Button devices.

Oh interesting, is there a parts list available to building this?

He builds them and sells them from time to time. I have three of them working great in my home. Not the prettiest things, but I just stick them in out of the way outlets. I have had one outside on a screened in porch for over a year, with no issues.

OK thank you.

I have 2 temp sensors that do not let you pick the update frequency so I have created a button on my "Temperatures" Dashboard to "Refresh" the temperatures:
4 General Steps; 1-Create Button, 2-Create Rule, 3-Enbale Button on Dashboard, 4-Add Button to Dashboard.

1-Go To :

Devices-->+Add Virtual Device-->Device Name-->Type-->Virtual Button-->Save Device

2-Go To:

Rule Machine-->Create New Rule-->Name Rule-->What Ever You Want-->Done-->Select Trigger Events-->

Select Capability of New Trigger-->Button-->Button Device-->Select the One you named above-->Update-->

Button Nember-->1-->Button-->Pushed-->Done With This Trigger Event-->Done With Trigger Events-->

Define A Rule-->Select Actions To Run-->Select Action Type To Add-->Capture/Restore, Device Refresh or Polling-->

Select Which Action-->Refresh Devices-->Refresh These Devices-->Select All You Want Refreshed-->Update-->

Done With Actions-->Done

3-Go to Dashboard App:

Select Dashboard to add button to-->Choose Devices-->Select Your Button-->Update-->Done

4-Go to the Dashboard you want to add the button to:

+Add Tile-->Select the button you want to add-->Button Number-->1-->Button Command-->Push-->Pick Tile Location-->

Add Tile-->Now Test the Button