Skip to content

Conversation

@ArekBalysNordic
Copy link
Contributor

When arguments have a custom type (such as struct or enum), they must be added to the attributeAccessInterfaceAttributes list in the zcl.json file. If this is not done, the generated Accessors.h/.cpp files will not have access to these custom types.

This commit introduces a new add_custom_attributes function to the west zap-generate command to handle updating the zcl file with all custom-type attributes.

The second improvement is the ability to synchronize the zcl file with the "base" zcl file located in the Matter SDK. This is useful if the base file has changed, for example, due to a new Matter SDK version, and the custom zcl file does not contain all the "base" clusters.

Both improvements are necessary only when calling west zap-generate with the --full argument.

Testing

NRF

When arguments have a custom type (such as struct or enum), they
must be added to the `attributeAccessInterfaceAttributes` list in
the `zcl.json` file. If this is not done, the generated
Accessors.h/.cpp files will not have access to these custom types.

This commit introduces a new `add_custom_attributes` function to
the west `zap-append`/`zap-gui` command to handle updating the
zcl file with all custom-type attributes.

The second improvement is the ability to synchronize the zcl file
with the "base" zcl file located in the Matter SDK.
This is useful if the base file has changed, for example due to a
new Matter SDK version, and the custom zcl file does not contain
all the "base" clusters.

Both improvements are necessary only when calling west
`zap-generate` with the `--full` argument.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
@ArekBalysNordic ArekBalysNordic merged commit e5f2a2f into nrfconnect:master Nov 4, 2025
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants