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


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

  • Like 18
  • Thanks 11




User Feedback

You may only provide a review once you have downloaded the file.


Sankotronic

   2 of 2 members found this review helpful 2 / 2 members

This script helped me to fine tune my network.

It is work of art. Thank you for this very useful script.

 

Share this review


Link to review
Bodyart

   2 of 2 members found this review helpful 2 / 2 members

Excellent piece of work. Graphical masterpeace :-D

 

Share this review


Link to review
amilanov

   1 of 1 member found this review helpful 1 / 1 member

Love your work. Keep it up!

 

I now have so many questions about devices and network traffic that I didn't have visibility into before. It's already helped me to resolve one issue.

 

This type of analysis should be part of the core offering from Fibaro. Well done for filling the gap.

Share this review


Link to review
unitedeurope007

  

This is great - provides a core functionality the orifinal fibaro system is missing.

Not only is the functionality gerat, but also the graphics.

Super well done!

  • Thanks 1

Share this review


Link to review
nicopret

  

Brilliant work! Helped me to identify inefficiencies in my code and now my HC2 runs much better. 

  • Thanks 1

Share this review


Link to review
net

  

Beautiful and usefull script!

  • Like 1

Share this review


Link to review
perjar

  

Brilliant piece of work! 

Very useful for monitoring how much your devices are communicating. 

 

Share this review


Link to review
twannieguitar

  

Absolutely a fantastic tool to identify zwave traffic, very, very usefull when systems getting bigger...

A very impressive piece of coding!

Share this review


Link to review
MHB-4

  

This looks verry nice

Share this review


Link to review
Eddievanh16

  

Fantastic work, easy to see whats going on visually. Thank you for sharing this. :)

Share this review


Link to review
gucio1234

  

@cag014  It is great tool.

 

Thank you very much 

Share this review


Link to review
AR27690

  

Perfecto...

Have found devices that send a huge amount of LUX level reports. 

Excellent Graphics. Nice way to view zwave traffic.

Share this review


Link to review
×
×
  • Create New...