Jump to content

Welcome to Smart Home Forum by FIBARO

Dear Guest,

 

as you can notice parts of Smart Home Forum by FIBARO is not available for you. You have to register in order to view all content and post in our community. Don't worry! Registration is a simple free process that requires minimal information for you to sign up. Become a part of of Smart Home Forum by FIBARO by creating an account.

 

As a member you can:

  •     Start new topics and reply to others
  •     Follow topics and users to get email updates
  •     Get your own profile page and make new friends
  •     Send personal messages
  •     ... and learn a lot about our system!

 

Regards,

Smart Home Forum by FIBARO Team


Z-wave monitor 3.0

   (13 reviews)

7 Screenshots

About This File

This scene monitors and catches Z-wave commands traffic between controller and devices. The data displayed to user as a table which includes total commands and their properties per device, in addition same data displayed at graphical chart and shows system activities over the time. Since Z-wave protocol is not a fastest one  (in many case it's just freeze) this code helps to analyze the data and to take necessary actions to reduce overall Z-wave traffic and system load.

Scene functionality

1. This is not an auto started scene. You need to start it manually. While the scene is running, you can switch views  between table/chart and  monitor (follow instructions on screen).

2. User configurable parameters are:

gVar = true-- Create and use global predefined variable. The scene could work with local table as well, but by using global parameter you can keep history of the traffic. It very helpful when you're updating the system to new release, to compare Z-wave performance. In case you have decided to use global variable, copy the data to other variable to keep the history. To view data of saved variable please download and use Z-wave Viewer scene.  Z-wave Viewer could be executed in parallel to Z-wave Monitor as well (when using global variable only)

logRate = 5     -- Time rate in minutes to log Z-wave activity. Used as axis X scale in charts view. Reasonable value 5 to15 minutes for 24 hours of monitoring. In case to achieve better resolution the value could be decreased down to 1 minute.
time2monitor = 6   -- Time-slot in hours to monitor z-wave traffic, after that time, table and chart will be displayed on debug window and scene will stopped. Value of  0 hours disables auto ending. User needs to stop the monitoring. If less than hour monitoring required please use decimal fraction. For example to set monitor time to 15 minutes set, time2monitor = .25

 markId = "|0|0|", " Cyan" -- Devices (IDs) list and text color to display specific devices in defined color at monitor view for follow up purpose. In few cases you need to monitor specific device, so fill-in the device ID and it will be highlighted by different color from other devices.
deadOnTop = {true, "maroon"}  -- Display DEAD devices on top of the monitor view list in defined text color. Since we're not always looking on the screen, so in case the system will identify dead device it will continuously display the device (in red) on debug window.

 

All variables below are the same for Z-wave Monitor  and  Z-wave Viewer
chartHeight = 100        -- Chart height in percents (%). Chart's default height fits debug window.  The variable changes height of all charts (devices.scenes and events)
chartWidth = 100         -- Chart width in percents (%). Chart's default width expands according to number of samples.  User could expand the width  to get better detail view or to stretch to visualize the load on time axis or to take snap shot of entire time line. The variable changes width of all charts (devices.scenes and events)

 

topDev2disp = 6          -- Number of most active devices to display on devices chart.  If set to zero chart won't be displayed.
topScene2disp= 10        -- Number of most active scenes to display on scenes chart. If set to zero chart won't be displayed.

darkSkinMode = true      -- Charts display skin mode. Set false for light (white) skin.

dev2review={false,"|470|804"} -- Generate chart for every device in list of actual device readings over the monitoring time. For devices with two results (like power and energy) both reading will be displayed. On left and right sides of the chart  applicable scale displayed. Please note, no chart is generated for devices like motion, door and any other sensors, which provide values of true/false.
userDev={false,"|504|_531|"} -- User defined devices and scenes IDs to generate specific combined chart. Please write underscore before scene ID |_531| 

stackedChart=true        --  A stacked line chart is an line chart in which lines do not overlap because they are cumulative at each point. Set to false to view standard line char. All charts except ZKG chart (events,CPU and RAM) will be displayed according to this variable.

 

 

 

Brief explanation what is displayed:

1. Monitor view

Spoiler

Monitor.thumb.PNG.03a79c7e67f6ed17b938e4a6816358cc.PNG

This snap shot includes top and dead devices marked in different color from other devices.

Two main sections in this view:

Header

             1:08:07/ 6:00:00               1824 events/77 devices            event/2.3s               (Click Start for )

    Elapsed Time/Monitoring time             Number of Z-wave events/devices          Z-wave traffic rate        Click to switch to table/chart view

               

Devices list

Every device displayed at follow format -

 #2/34TV509@Salon(216.7 power

#2/34 -First number is number of events during logRate slot. Second number is total number for events so far.

TV509@Salon - device name, ID and room name

(216.7 power) - actual reading and reading property

 

 

2. Table view

Spoiler

Capture.thumb.PNG.b5997f3c8e4aa29e1831a47c8ede2f31.PNG

total # - number of total Z-wave events on device

total %  - Percentage of device's events of total system Z-wave events.

All yellow marked headers are received Z-wave properties, except two properties, dead and deadReason which are marked in red. For each device displayed the total number of this specific properties. Red marked ID, means that device was or is "dead" 

By hovering mouse over device IDs, device and room names will be display (tool-tip) at popup box.

At the end displayed few extra summaries 

Spoiler

Capture1.PNG.8065d5ab4803b5c68ddef7ddcf2a9871.PNG

 Elapsed time and Start-End timestamps

Sample log rate as defined by user. Total samples during monitoring time

Total Z-wave events and total number of active devices

Average Z-wave traffic rate

Z-traffic range. Shows the highest and lowest z-wave activities during monitoring time.

If dead devices have found, list of them is displayed

 

3. Most active devices chart

Spoiler

Capture.PNG.e90b7a56fa3058c789857fa0fb5ffdc1.PNG

Spoiler

Capture.thumb.PNG.f369d5fdde5948a8cabf0de9622d4d68.PNG

Example of stacked chart

This chart shows events number of most active devices ( up to number of all active devices allowed by setting topDevNum variable ) on monitoring time-line. On the right-upper corner displayed ID, name and room of the device. By hovering mouse on diagrams or legend, selected item will emphasized in bold to make the item more visible.

 

4. Most active scenes chart

Spoiler

Capture1.thumb.PNG.e38fafcb73177760815771169191cb2e.PNG

This chart shows triggers number of most active scenes ( up to number of all triggered scenes allowed by setting topDevNum variable ) on monitoring time-line. On the right-upper corner displayed ID, name and room of the scenes. By hovering mouse on diagrams or legend, selected item will emphasized in bold to make the item more visible.

5. Review device's actual readings - (dev2review)

Spoiler

Capture.thumb.PNG.f1fd2093d8d91a7f1dec7382596a7170.PNG

For devices with two results (like power and energy) both reading will be displayed. On left and right sides of the chart  applicable scale displayed.

This chart most useful to identify  if device configured to send reports interval at high rate and " differ in readings to send report" set to very low value.

By hovering mouse over the chart, will scale down the diagram to make visible entire range. In case the horizontal scrollbar is not in the middle of the chart , the diagram will flicker.

  

 

 

6. User defined combined chart

Spoiler

Capture.thumb.PNG.f2aa40a059c15f756bf6a3c7416ec0c9.PNG

In some cases we  need to inspect behavior of some devices and scene that triggered by the device. This chart shows user defined devices and scenes on monitoring time-line. On the right-upper corner displayed ID, name and room of the scenes and/or device. By hovering mouse on diagrams or legend, selected item will emphasized in bold to make the item more visible.

 

 

 

7. ZKG Chart View

Spoiler

Capture.thumb.PNG.70eb773105c5db8d90d4045e1c22b3a2.PNG

Chart view shows Z-wave traffic and system load on time line (based on logRate value). You actually could see your smart home beating heart (like EKG). I have named as ZKG (Z-wave cardiogram). Now it's possible to see the "rush" and "quiet" hours of the system.

Chart view includes 5 diagrams displayed over time-line of monitoring period. The diagrams are:

  1. Z-wave events
  2. Triggered scenes
  3. CPU1  percentage
  4. CPU2  percentage
  5. RAM  percentage

At top-right corner of the screen, displayed legend of the diagrams and colors.

Events total number in same color as a diagram line.

CPU1 min  > avg < max in same color as a diagram line.

CPU2 min  > avg < max in same color as a diagram line.

RAM min  > avg < max  in same color as a diagram line.

Triggered scenes total in same color as a diagram line.

Most triggered scene ID  and scene's name in same color as a triggered scenes

In case dead devices have found during the monitoring period, the time stamp where it happened will colored red and at the top of the screen, directly above the time stamp, dead device(s) ID displayed.

Axis Y has two scales. Left scale  represents occurrence numbers of Z-wave events and triggered scenes. Right scale is a percentage and it related to CPU1, CPU2 and RAM measured values.

By hovering mouse on diagrams or legend, selected item will emphasized in bold to make the item more visible.

I'm strongly advising to use global variable and to view the data using Z-wave Viewer in parallel to Z-wave Monitor

The idea behind, that you can change parameters to view different devices/scenes on the fly.

By changing user configurable parameters in Z-wave Monitor you'll need to start the scene all over again.

Note:

The debug text of these scenes is very big, so If you're using Clear Debug scene, please remove these scenes from the list.

 

Please let me know if extra info is required.

Please report if any bug occurred.


What's New in Version 3.0   See changelog

Released

Bug fix:

1. System reboot initializes Zwave global variable to blank.

 

New features:

Added monitoring of "hidden" communication for repeated,report and pooling Zwave traffic.

The data displayed as "rpt", new column in table

Repeated traffic, means that the user code sends same command over and over to device. In this case device broadcasts back with report status of all his logical endpoints and creates unnecessary load on Zwave traffic. ( Please see Reduce Ztraffic  file at download center https://forum.fibaro.com/files/file/246-reduce-ztraffic-fibaro_call/ ).

Added monitoring of failed communication packets between device and controller (Transfer failed). The data displayed on the table at " nack " new column. This data implies on bad communication to device due to range or something blocks the Zwave ( like walls).

 

Added at end of the table summary of prt and nack measurements



User Feedback

Recommended Comments



@johndeere IIRC @cag014 suggested more or less to "start from scratch". I cannot find this post, but I remember thinking: "that is a valid option given the history of that system". But that is a lot of work. I mean, really start from scratch so that is first properly excluding your devices, save your scenes, factory reset.... I mean, possibly your Zniffer only confirms that data on your HC2 is somehow "damaged" and you end up doing that anyway. I've done that a few times, but that was before 2016 without any tools. In hindsight, one of the issues I had may have been power reporting and bad range on Wall Plug and I could have worked around the problem by using a different setup, or buy the newer version (it has better range). I was stumbling in the dark at that time ;)

Link to comment
Share on other sites

On 2/3/2020 at 5:25 PM, johndeere said:

This is what it shows now:

image.png.7f23e8e6eceb7933c86f064f69ef2292.png

 

Since I don't have anything to compare it with, I'm asking if you think the failed transfers are too high or normal...?

 

looking on your data it looks like you have a period of time when your traffic goes crazy... I never saw such a huge range 1.7 to 75 seconds!

Please try to identify following last graph when it happens. It might shed a light where your problem...

Link to comment
Share on other sites

2 hours ago, petergebruers said:

@johndeere IIRC @cag014 suggested more or less to "start from scratch". I cannot find this post, but I remember thinking: "that is a valid option given the history of that system". But that is a lot of work. I mean, really start from scratch so that is first properly excluding your devices, save your scenes, factory reset.... I mean, possibly your Zniffer only confirms that data on your HC2 is somehow "damaged" and you end up doing that anyway. I've done that a few times, but that was before 2016 without any tools. In hindsight, one of the issues I had may have been power reporting and bad range on Wall Plug and I could have worked around the problem by using a different setup, or buy the newer version (it has better range). I was stumbling in the dark at that time ;)

Just to make you laugh a bit, let me show you one of my parameters:

 

image.png.c227ce2ceff26496426ff449cdba16e6.png

image.png.fb59ec8b4cce69e2dbd0930386b41647.png

image.png.14d9e2d2763f3d7755f3ac2d13d6b024.png

 

I live with this for a long time now, and I cannot do anything about it. Just hoping someday a FW update will fix it :D 

This is a typical example of waiting for sync - soft reconf - ID or name or association lost - rename - read configuration - waiting for sync - wake-up 100x - stick the device to HC2 antenna - soft reconf - ID lost - device delete - re add it again - rename - assign it to room - sync - waiting for sync endlessly - etc etc in an andless loop for days.

 

I think I would not have so many problems if HC2 would let me set the parameters I want. If it would let me sync, if it would not get stuck on waiting to sync, if it would not get completely frozen on "stopping services" when I do a backup, if it would not arm random sensors after a backup, etc etc.

Fibaro guys promised me they will try to fix it. I really hope they will be able to.

Edited by johndeere
Link to comment
Share on other sites

11 hours ago, johndeere said:

Just to make you laugh a bit, let me show you one of my parameters:

 

image.png.c227ce2ceff26496426ff449cdba16e6.png

 

You did not tell, but I guess this is a MultiSensor 6. This is not a problem with your HC2, it is a calculation error, caused by error in Aeotec manual.

 

It is safe to ignore it...

 

I have the correct formula somewhere, it is about setting a temperature threshold, it is not too important. Don't worry about it.

 

 

Link to comment
Share on other sites

2 minutes ago, petergebruers said:

 

You did not tell, but I guess this is a MultiSensor 6. This is not a problem with your HC2, it is a calculation error, caused by error in Aeotec manual.

 

It is safe to ignore it...

 

I have the correct formula somewhere, it is about setting a temperature threshold, it is not too important. Don't worry about it.

 

 

OK, thank you. Can I ignore the 0.1 C threshold too? Isn't it too low?

Link to comment
Share on other sites

1 minute ago, johndeere said:

Can I ignore the 0.1 C threshold too? Isn't it too low?

Ignore. It is the "131097.6" that's important. De default threshold is 1.0 °C. The formula is here:

 

 

  • Thanks 1
Link to comment
Share on other sites

3 hours ago, petergebruers said:

Ignore. It is the "131097.6" that's important. De default threshold is 1.0 °C. The formula is here:

 

 

Thank you for clarification and for the solution. I will play with this a bit later, after I solved my urgent problems, like Zniffer :D

Link to comment
Share on other sites

Wow amazing, I'm experiencing some trouble that  could be solved with this fantastic program

 

?

Edited by Fyase
Link to comment
Share on other sites


Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...