Generic Zigbee Outlet missing from RM (legacy) with Device Watchdog

I get watchdog reports from a few of my outlet devices of no activity (accurate report - items I haven't used for a few days).
If I hit the Refresh manually on the device inside the hubitat sw, or command it to go off and on, it is cleared.
All of the devices (4) experiencing this problem are using the same driver - that is: Generic Zigbee Outlet.

I have 11 of these outlets (they are eWeLink FWIW) - according to my reading, Device Watchdog sends scheduled refreshes to counteract items that aren't often used. Initially I thought Device Watchdog was at fault, but I don't believe that now.

The old method to force rarely used items to update was a 'Rule' that issued a refresh. So I tried to create a rule to do a refresh every 12 hours, but all of the Generic Zigbee Outlets are not listed in the Rule drop down for "Select device(s)".
I surmise this is why the Device Watchdog report is reflecting no activity and missing these items - because it can't refresh them either.
I read what I could find about this driver and AFAIK no ones reported this.

I use a few of those eWeLink outlets myself and use @dennypage 's Idle Node Refresher.
The app has no problem refreshing the outlets that use the Generic Zigbee Outlet driver.

The refresh commands get staggered so as to not overwhelm the mesh.

1 Like

Also, if you want to use RM, you'll need to run a custom action with a 'switch' capability.

Another user app to the rescue of my hubitat! thanks for the tip!

Is there a way to cause a trigger of that Refresher now? I don't see one anywhere....

Still - is it not odd that Generic Outlets are not visible to RM? Is that what the 'switch' trick is for? Why would that work? I'm not understanding.

In Rule Machine, for the device to be selectable for Refresh, it must have Capability Refresh. Most likely these devices of yours are not showing up because they don't have that capability. If the device has a Refresh command, you could use Custom Action to select the device, and then give it a Refresh command.

All of this above has nothing to do with whether the devices are actually awake, reporting, etc.

As always- thank you bravenel :slight_smile: I guess I'm confused as this has a 'refresh' button on the device page within hubitat, Doesn't that mean it has Capability Refresh? Or is this like the color temp on stuff on bulbs that don't have color temp - it's just there but it doesn't the physical device supports it?

Not necessarily. That means it has a Refresh command. If it doesn't show up in the list in RM for Refresh, it does not have the capability, just the command.

I"m so confused. how would the Idle Node Refresher accomplish the task then... and how does one learn what is Capability Refresh vs. Refresh??! Feel free to talk to me like a 2nd grader - thats how I feel right now!

When a driver lists a capability, such as "Switch", that brings with it certain automatically defined commands, such as "on" and "off". But, a driver can also have additional commands however its author decides. The capability wouldn't work without the basic automatic commands, so in effect, the driver author is forced to implement those automatic commands.

Every command results in a button on the device page. The only difference between the automatic ones and other commands is in the text that the author has to include in the text of the driver. Otherwise, a command is a command.

A device selector in an app is not looking for commands, it is looking for capabilities. In Rule Machine, the device selector for the Refresh commands says "capability.refresh". That means that only those devices that have that capability defined will show up in the list of devices. All of those devices are guaranteed to have the Refresh command, as described above. If the device selector said "capability.switch" instead, some devices that don't have a Refresh command could be available for selection. Trying to command them to Refresh would cause an error, because they don't have that command available.

I don't know anything about "Node Refresher" or how it works. If it uses some other capability to select devices, it too would be prone to throwing errors for devices that don't support a Refresh command. And, if it uses capability Refresh to select devices, yours won't show up there either.

I can confirm that Generic Zigbee Outlet has command Refresh, but does not have capability Refresh.

Thank you for such a well thought response. I get a bit more of it now. Since, as I understand it, the driver from hubitat is not public - I installed via HPMN "Zigbee - Generic Outlet (w/Presence)" from oh-lalalabs.
Once I got my devices off the generic driver the problems stopped and I seem to now have 'Capability.refresh' as the devices now show in RM. It's a wonder any of you are still sane.