[RELEASE] Hub Watchdog - Simple way to monitor if your hub is slowing down or not

Introducing 'Hub Watchdog'
Simple way to monitor if your hub is slowing down or not.

Features:

  • Turns a device on/off and calculates the time it takes to happen
  • Gives a reference to go by to see if the hub is slowing down over time
  • Ability to notify by push, turn on a device or use Rule Machine
  • Track data points in custom virtual device
  • Tracks up to 80 data points with color coding
  • View custom reports in app or add the data to Dashboard
  • Parent/Child App structure
  • Create as many child apps as needed

App can be found on my Github:

Version:

Parent:
V1.0.1 - 09/29/19 - Added second type of child device - Hub Watchdog Examiner

Child:
V1.0.7 - 09/27/19 - Added a 'push all' option

Child - Examiner:
V1.0.1 - 09/30/19 - Lots of little changes

Driver:
V1.0.8 - 09/30/19 - Lots of little changes

12 Likes

Here's a sample log file...

Sample Report...

3 Likes

Holy CRAP that was fast!!! LOL Good job Bryan!

3 Likes

Now you can make a version that allows for not only a virtual device, but also a user assigned zwave device, and a user assigned zigbee device so we can measure hub performance, zwave network performance, and zigbee performance and see if they all take a crap at the same time or independently.

I'm mostly kidding. :smile:

I think this app is a neat idea and fully plan on trying it when I get home from business travel. No idea what it will show for me, as I haven't been having any slowdown issues, but maybe that is a useful data point too?

4 Likes

Okay.... DONE! lol. Make a child app for each type of device and then compare the delay. BOOM!

4 Likes

You know, I was actually thinking that might be the case as I was typing that.... You out foxed me once again!!! :smile:

That's cool as I have an extra zwave outlet and a zigbee outlet I can do this with... Again, I'm not having issues, but more data is gooder... Right?

3 Likes

The speed at which Bryan puts out apps makes me think that he's cloned himself about 20 times and then forces the clones to do his bidding for him in a code sweatshop.

LMAO

6 Likes

Hey, I actually went out for a few hours today too! :rofl:

5 Likes

No idea what good is, but my data (all on virtual switch devices) looks like:
Hub1 - 0.058s
Hub2 - 0.066s
Hub3 - 0.117s

It's funny to me, as Hub1 is my most heavily loaded hub (in terms of devices, apps, and RM rules), yet it was the fastest. But like most data the absolute value probably doesn't matter as much as the trend over time.

Exactly, I think we will see a wide range of numbers but the key is do they go up over time or remain steady. I should have the driver done tonight so we can start to track data points.

2 Likes

It works perfectly. This is just trying it out, not a fresh boot, on a peanut plug. I think my last reboot was Saturday. I always notice the slowdown on zigbee devices first. None seen so far.

1 Like

Works great. Created three child devices: virtual switch, a zigbee outlet, and a z-wave outlet:

Here's what I see:

  • HWD virtual - timeDiff: 0.374 msec
  • HWD zigbee (Couch outlet) - timeDiff: 0.188
  • HWD zwave (HVAC outlet) - timeDiff: 0.713 msec

The z-wave outlet is a Leviton outlet (not z-wave plus). Not far away from the hub either.

1 Like

I'd do a repeatibility test of 30 cycles and look at the std deviation and mean of the 30 runs. That would give you better insight.

2 Likes

You just answered my next question. :grin: How big of a pool do we need and then what do you want to do with it?

I have the driver collecting data, just need to put in the details.

1 Like

Well, that gives each individual a decent baseline of data. I would probably be looking at trends of doing this day after day, hour after hour, if I am that unstable. You could use it to bench new apps for the more intrusive apps..

Reproducibility across everyone is a whole other thing. How many apps, types of devices, etc, would come into play.

Are the zigbee and virtual device times reversed?

Nope. Virtual was slower than zigbee in that particular run.

Yikes, I think you might need more virtual repeaters.:wink:

10 Likes

:rofl:

Dumb question, I suppose to create a virtual device first, then create one child with that virtual device, then if I want to test zigbee and zwave I must create one child for each?