ZWare No Category from device


#1

we have successfully added a node by using the zwportald (querying it by sending serialized avro requests).
However, when we try to get the list of nodes, we get the following structure:

{
  "id": 7,
  "property": 8,
  "vendor_id": 134,
  "product_id": 29,
  "product_type": 2,
  "category": 0,
  "alive": 5,
  "secure": 0,
  "zwave_library_type": 3,
  "zwave_protocol_version": 835,
  "application_version": 274,
  "FLiRS": 0,
  "sleep_capable": 1,
  "wake_up_interval": 4080,
  "s2_keys_valid": 1,
  "s2_grant_key": 0,
  "s2_dsk": "",
  "external_version_info": {
    "is_external_supported": 0,
    "hardware_version": 0,
    "target_version_info_array": []
  }
}

This is a binary switch from Aeotec/Aeon. Why the category is 0 ? ( Where I can find the list of Manufactured ID/ Product Id/ Product Type for every vendor?)


#2

hi demarcogiu,

impressed that you are using the AVRO interface which is not even documented :blush:

‘category’ was a field we used before Z-Wave Plus was available to help identify the device beyond its device class. This information is picked directly from the device database file. so if this information is not populated in the file, it will be 0.

As strings are normally only used in the apps, you can find vendor strings in
src\zwave\zweb\zapps_local\lib\zwConstants.js


#3

Thank you miskit.
The use of AVRO was a must, beacuse we have a third-party application, and re-writing it in C++ to use ZWare-C is too much work.
Under src\zwave\zweb\zapps_local\lib I have

drwxr-xr-x 5 pi pi  4096 giu 13 13:14 .
drwxr-xr-x 4 pi pi  4096 apr 10 14:14 ..
-rw-r--r-- 1 pi pi   853 feb  1 05:02 common.css
drwxr-xr-x 2 pi pi  4096 apr 10 14:14 images
drwxr-xr-x 2 pi pi  4096 apr 10 14:14 jquery
-rw-r--r-- 1 pi pi  4207 feb  1 05:02 loggedin.css
drwxr-xr-x 2 pi pi  4096 giu 13 13:14 OOUI
-rw-r--r-- 1 pi pi  1065 feb  1 05:02 prelogin.css
-rw-r--r-- 1 pi pi 41108 feb  1 05:02 publicFunc.js
-rw-r--r-- 1 pi pi  5038 feb  1 05:02 style.css
-rw-r--r-- 1 pi pi     6 feb  1 05:02 VERSION
-rw-r--r-- 1 pi pi    58 feb  1 05:02 ZWareWebSite.css

Moreover, how can i get the category or the device category of the included device? Shall I consider the if_type and ep_type only?

However, we still do not understand how to insert or edit new devices info. I see that there is file called zwave_device_rec.txt in zwportal. One way to map sensor triplet (vid,pid,ptype) to a valid description of the sensor would be the inspection of that file by entering with the triplet, which is the only information we can get from get_list_node. Finally, I think this db file is edited by hand, isnt’it?


#4

Sorry, I must have used the wrong version. Which SDK are you on?
You can also get vendor id strings from:
src\zwave\zweb\zapps_local\ui\eng\zwNodeConst.js

the ep contains the generic & specific device class & zwaveplus information that can be used to categorize the device.

The device database is edited by hand. it is also part of our whitelisting process where we ensure partner devices work smoothly with z-ware even with older & less informative command classes or versions. the JSON structure is documented in the Z-Ware Library User Guide Section 4.3.5.