Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

From Where to find which cluster attributes are supported by various clusters in esp-matter (CON-1462) #1199

Open
bilalmalik76 opened this issue Dec 9, 2024 · 17 comments

Comments

@bilalmalik76
Copy link

From where to find which cluster attributes are supported by various clusters in esp-matter. I need to create PICS XML files for the followings manually because PICS generator does not generate these files:

Access Control Enforcement Test Plan.xml
Group Communication.xml
Groups Cluster Test Plan.xml
Wi-Fi Network Diagnostics Cluster Test Plan.xml

@github-actions github-actions bot changed the title From Where to find which cluster attributes are supported by various clusters in esp-matter From Where to find which cluster attributes are supported by various clusters in esp-matter (CON-1462) Dec 9, 2024
@jadhavrohit924
Copy link
Contributor

@bilalmalik76 You can check the esp-matter components cluster create() API.

@VaishaliAvhale
Copy link
Contributor

@bilalmalik76

Please find the attached updated PICS file and the steps to update it:
PICS.zip

Note: In the attached PICS, I have selected all the mandatory items. If your application supports any optional features, please enable them as well.

Steps to update PICS:

Refer to the Core Matter Specification for core clusters and the Application Cluster Specification for application-specific clusters.
Open the PICS XML file using the PICS tool provided by CSA. Navigate to the specific cluster and select the mandatory items (optional items are not enabled in the Matter product but can be enabled by the end user) as per the PICS template. If any optional items are supported by your application, select them as well.
Validate the file and click the "Generate" button.

@bilalmalik76
Copy link
Author

@VaishaliAvhale The PICS files which you share do no have any attributes selected in any of these files:
Access Control Enforcement Test Plan.xml
Group Communication.xml
Groups Cluster Test Plan.xml
Wi-Fi Network Diagnostics Cluster Test Plan.xml

@bilalmalik76
Copy link
Author

In esp_matter_attribute.h for wifi_network_diagnotics, these attributed are being created. Does this mean all these attributes are supported?

https://github.com/espressif/esp-matter/blob/main/components/esp_matter/esp_matter_attribute.h#L209

image

@VaishaliAvhale
Copy link
Contributor

VaishaliAvhale commented Dec 9, 2024

It's my bad. Here are the updated PICS files:
updated-PICS.zip

In esp_matter_attribute.h for wifi_network_diagnotics, these attributed are being created. Does this mean all these attributes are supported?

Yes!

Note:

The Wi-Fi Network Diagnostics is an optional cluster, and optional things are not enabled in the Matter product by default. If you have enabled it, you can proceed with testing.

@bilalmalik76
Copy link
Author

bilalmalik76 commented Dec 9, 2024

@VaishaliAvhale how can I enabled this:

The Wi-Fi Network Diagnostics is an optional cluster, and optional things are not enabled in the Matter product by default. If you have enabled it, you can proceed with testing.

From this file it looks like core attributes are enabled for diagnostics_network_wifi (esp-matter/components/esp_matter/esp_matter_cluster.cpp

image

@VaishaliAvhale
Copy link
Contributor

How can I enable this?

Please refer to this link to add the Wi-Fi Network Diagnostics cluster:
Adding Clusters - ESP Matter Documentation.

From this file, it looks like core attributes are enabled for diagnostics_network_wifi (esp-matter/components/esp_matter/esp_matter_cluster.cpp)

Yes, the implementation is already present. You just need to call it.

@bilalmalik76
Copy link
Author

@VaishaliAvhale I think it is already being called when node config is passed to create node and it checks if it is wifi enabled device it adds diagnostics_network_wifi cluster also.
image

@VaishaliAvhale
Copy link
Contributor

After the Node Configuration is passed, a Matter node is created, and the mandatory Root Node device type along with its mandatory clusters, attributes, events, and features are added on endpoint 0.

The diagnostics_network_wifi cluster is optional, and optional features are not enabled by default. Therefore, it needs to be added explicitly.

@bilalmalik76
Copy link
Author

Yes but I think line is adding it explicitly:

#if CHIP_DEVICE_CONFIG_ENABLE_WIFI
    diagnostics_network_wifi::create(endpoint, &(config->diagnostics_network_wifi), CLUSTER_FLAG_SERVER);
#endif

@bilalmalik76
Copy link
Author

@VaishaliAvhale is this possible to get all PICS files for base endpoint0, on_off_plugin_unit and dimmable_plugin_unit end points. We tried generated with PICS tool and then tried to modify manually but still looks like some additional optional are enabled and some are missing, we did not enable any optional but used only those enabled by default in esp-matter.

@bilalmalik76
Copy link
Author

For example, we root node endpoint0, there is not group cluster. do we need group communication and group cluster test plan?
image

@bilalmalik76
Copy link
Author

Following tests are failing, I am not sure if this is because of incorrect selection in PICS files:
image

@bilalmalik76
Copy link
Author

@VaishaliAvhale can you please provide base.xml file for matter over WiFi according to esp-matter default clusters and attributes which are enabled?

@VaishaliAvhale
Copy link
Contributor

Please find the attached base.xml
Base.zip

@bilalmalik76
Copy link
Author

@VaishaliAvhale I am getting this error with PICS tool:
image

@bilalmalik76
Copy link
Author

this does not seems to be a correct file with a lot items marked true for client:
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants