[RELEASE] Hub Information Driver

I wonder if it's because zigbeeStatus is reporting that the service itself is enabled (allowed to run) while online/offline is the service's current state (running or not running)?

2 Likes

Ultimately both conditions should agree, but they are derived from different sources. The hub alerts come from the UI Alerts (generally crash/threshold conditions or update notices), while the status is querying the hub's zigbee data to see if the channel is still actively assigned.

High CPU or temperature warnings tend to generate a zigbeeOffline alert, and may eventually lead to the zigbee channel being disabled if the condition remains unchanged long enough; this would then trigger the zigbee status. Whereas the user can decide to turn off the zigbee radio setting the zigbee status to disabled, but will not generate a zigbeeOffline warning.

3 Likes

Note that the Zigbee radio actually does not turn off when 'Zigbee Status' is set to disabled. It stays up and running at the PHY and MAC layers.

When you set Zigbee status to disabled, even when the Zigbee Details page shows 'Zigbee Network State: OFFLINE' , a sniffer trace still shows the coordinator broadcasting to the 0xFFFC destination address on its assigned channel (this is the 'all routers' reserved address). However, until you set Zigbee Status back to 'enabled', the hub won't directly address any individual routers (at least for the duration of the traces I tried). Apparently the OFFLINE Zigbee state is an indicator of the application layer's status.

2 Likes

@thebearmay Maybe I missed something, but don't see any obvious options nor any comments in here about it. Is there any way to log certain attributes (or all of them)? I use Splunk for monitoring, but that relies on getting a feed from the hub logs.

I use MakerAPI to feed Node Red and my graphing, but there is probably another way out there.

2 Likes

I'm using the syslog driver to forward the logs over to Splunk. So if it doesn't show in the event logs, then I won't be able to pull it in.

Should see an event anytime there is a change in the attribute value.

Sorry...wrong wording. I meant to say I won't be able to see the data in Splunk unless the attribute value is also logged.

Every event should have a value

Right, but not here:

And what is generating that? It looks like it’s a modified version of the driver.

This driver, unmodified, installed via HPM. Even did an update today because I was a few versions behind. I just had debug logging enabled. With debug logging turned off, the driver doesn't generate any logs.

I obviously haven’t run it in full debug mode for quite a while. Didn’t remember having many of those debug lines in there, but their purpose is to help diagnose logic issues or broken connections. Would actually be a simple 2 line modification to produce a log entry when an attribute changed (one to capture a prefence switch and one to log).

OK, I loaded this through HPM. Now what?

Create a virtual device with it, select a polling rate, and what options you want attributes updated for.

1 Like

Do an update to v2.6.36 and turn on Log all attribute changes

1 Like

Boom...perfect! Thank you very much!

1 Like

I meant to mention this a few weeks ago -
If I disable Zigbee - the HubInfo driver doesn't show zigbee offline or disabled. I waited more than 10 minutes in case it was a delay thing.
I noticed it one day when Alexa told my my Zigbee was down but my dashboard gave no indication. Switching to the native dashboard shows the same - so I don't thing it's refresh rate on my Android emulator.

You’re still showing an active channel which is what it is keying on (I have another option but it doesn’t respond as quickly). Are you on a C7 or ???

yes. a c7. i'm that wierd guy who only uses zigbee - and am currently loosing my zigbee network about once a week during a device check where about 25 devices are toggled... Since there is no way to turn the 'overloaded' zigbee back on without a reboot I'd love to see my monitor tile show it's gone down in case I don't heard the verbal notifier I get through my Alexa - come to think of it, I wonder how I've got Alexa triggering...
I have an XTCU, maybe I can code it to watch for the C device going offline and force a power cycle.. hmm. nah. to much work.
Yea. so alexa's pulling from an internal variable -


To bad I can't find a way to zigbeeOn in a Rule!