diff --git a/silabs_examples/lighting-lite-app/lighting-lite-common/lighting-lite-app.zap b/silabs_examples/lighting-lite-app/lighting-lite-common/lighting-lite-app.zap index a8426f34317f55..fd0b9d1f3453e5 100644 --- a/silabs_examples/lighting-lite-app/lighting-lite-common/lighting-lite-app.zap +++ b/silabs_examples/lighting-lite-app/lighting-lite-common/lighting-lite-app.zap @@ -1,5 +1,5 @@ { - "featureLevel": 94, + "featureLevel": 95, "creator": "zap", "keyValuePairs": [ { diff --git a/silabs_examples/onoff-plug-app/onoff-plug-common/onoff-plug-app.zap b/silabs_examples/onoff-plug-app/onoff-plug-common/onoff-plug-app.zap index 3ba9d2ab7d49ee..b824c91321f370 100644 --- a/silabs_examples/onoff-plug-app/onoff-plug-common/onoff-plug-app.zap +++ b/silabs_examples/onoff-plug-app/onoff-plug-common/onoff-plug-app.zap @@ -1,5 +1,5 @@ { - "featureLevel": 94, + "featureLevel": 95, "creator": "zap", "keyValuePairs": [ { diff --git a/silabs_examples/silabs-sensors/efr32/data_model/contact-sensor/contact-thread-app.zap b/silabs_examples/silabs-sensors/efr32/data_model/contact-sensor/contact-thread-app.zap index 64d2cb1bf0fd2b..e7d71557190a0f 100644 --- a/silabs_examples/silabs-sensors/efr32/data_model/contact-sensor/contact-thread-app.zap +++ b/silabs_examples/silabs-sensors/efr32/data_model/contact-sensor/contact-thread-app.zap @@ -1,5 +1,5 @@ { - "featureLevel": 94, + "featureLevel": 95, "creator": "zap", "keyValuePairs": [ { diff --git a/silabs_examples/silabs-sensors/efr32/data_model/contact-sensor/contact-wifi-app.zap b/silabs_examples/silabs-sensors/efr32/data_model/contact-sensor/contact-wifi-app.zap index 3c988d11961605..6b9b519e9074ce 100644 --- a/silabs_examples/silabs-sensors/efr32/data_model/contact-sensor/contact-wifi-app.zap +++ b/silabs_examples/silabs-sensors/efr32/data_model/contact-sensor/contact-wifi-app.zap @@ -1,5 +1,5 @@ { - "featureLevel": 94, + "featureLevel": 95, "creator": "zap", "keyValuePairs": [ { diff --git a/silabs_examples/silabs-sensors/efr32/data_model/occupancy-sensor/occupancy-thread-app.zap b/silabs_examples/silabs-sensors/efr32/data_model/occupancy-sensor/occupancy-thread-app.zap index 8bc3a8b576ec46..e2f7716af30b12 100644 --- a/silabs_examples/silabs-sensors/efr32/data_model/occupancy-sensor/occupancy-thread-app.zap +++ b/silabs_examples/silabs-sensors/efr32/data_model/occupancy-sensor/occupancy-thread-app.zap @@ -1,5 +1,5 @@ { - "featureLevel": 94, + "featureLevel": 95, "creator": "zap", "keyValuePairs": [ { diff --git a/silabs_examples/silabs-sensors/efr32/data_model/occupancy-sensor/occupancy-wifi-app.zap b/silabs_examples/silabs-sensors/efr32/data_model/occupancy-sensor/occupancy-wifi-app.zap index f5ce076e96c556..b6e20488c2b802 100644 --- a/silabs_examples/silabs-sensors/efr32/data_model/occupancy-sensor/occupancy-wifi-app.zap +++ b/silabs_examples/silabs-sensors/efr32/data_model/occupancy-sensor/occupancy-wifi-app.zap @@ -1,5 +1,5 @@ { - "featureLevel": 94, + "featureLevel": 95, "creator": "zap", "keyValuePairs": [ { diff --git a/silabs_examples/silabs-sensors/efr32/data_model/temperature-sensor/temperature-thread-app.zap b/silabs_examples/silabs-sensors/efr32/data_model/temperature-sensor/temperature-thread-app.zap index 5a304bcf31f42a..13f44e9dc45461 100644 --- a/silabs_examples/silabs-sensors/efr32/data_model/temperature-sensor/temperature-thread-app.zap +++ b/silabs_examples/silabs-sensors/efr32/data_model/temperature-sensor/temperature-thread-app.zap @@ -1,5 +1,5 @@ { - "featureLevel": 94, + "featureLevel": 95, "creator": "zap", "keyValuePairs": [ { diff --git a/silabs_examples/silabs-sensors/efr32/data_model/temperature-sensor/temperature-wifi-app.zap b/silabs_examples/silabs-sensors/efr32/data_model/temperature-sensor/temperature-wifi-app.zap index 813974a00b8386..93edd4dcc19059 100644 --- a/silabs_examples/silabs-sensors/efr32/data_model/temperature-sensor/temperature-wifi-app.zap +++ b/silabs_examples/silabs-sensors/efr32/data_model/temperature-sensor/temperature-wifi-app.zap @@ -1,5 +1,5 @@ { - "featureLevel": 94, + "featureLevel": 95, "creator": "zap", "keyValuePairs": [ { diff --git a/silabs_examples/sl-newLight/newLight_DataModel_config/sl_newLight.zap b/silabs_examples/sl-newLight/newLight_DataModel_config/sl_newLight.zap index 02b511f3976d45..ba601f5464ddb4 100644 --- a/silabs_examples/sl-newLight/newLight_DataModel_config/sl_newLight.zap +++ b/silabs_examples/sl-newLight/newLight_DataModel_config/sl_newLight.zap @@ -1,5 +1,5 @@ { - "featureLevel": 94, + "featureLevel": 95, "creator": "zap", "keyValuePairs": [ { diff --git a/silabs_examples/template/template_DataModel_config/sl_template.zap b/silabs_examples/template/template_DataModel_config/sl_template.zap index 85751729f86b97..10cdabca8b7769 100644 --- a/silabs_examples/template/template_DataModel_config/sl_template.zap +++ b/silabs_examples/template/template_DataModel_config/sl_template.zap @@ -1,5 +1,5 @@ { - "featureLevel": 94, + "featureLevel": 95, "creator": "zap", "keyValuePairs": [ { diff --git a/silabs_examples/unify-matter-bridge/unify-matter-bridge-common/unify-matter-bridge.matter b/silabs_examples/unify-matter-bridge/unify-matter-bridge-common/unify-matter-bridge.matter index cc892d8e152795..91fb936235f2ee 100644 --- a/silabs_examples/unify-matter-bridge/unify-matter-bridge-common/unify-matter-bridge.matter +++ b/silabs_examples/unify-matter-bridge/unify-matter-bridge-common/unify-matter-bridge.matter @@ -6,6 +6,7 @@ struct LabelStruct { char_string<16> value = 1; } +/** Attributes and commands for putting a device into Identification mode (e.g. flashing a light). */ server cluster Identify = 3 { enum IdentifyEffectIdentifier : ENUM8 { kBlink = 0; @@ -51,6 +52,7 @@ server cluster Identify = 3 { command access(invoke: manage) TriggerEffect(TriggerEffectRequest): DefaultSuccess = 64; } +/** Attributes and commands for group configuration and manipulation. */ server cluster Groups = 4 { bitmap GroupsFeature : BITMAP32 { kGroupNames = 0x1; @@ -115,6 +117,7 @@ server cluster Groups = 4 { fabric command access(invoke: manage) AddGroupIfIdentifying(AddGroupIfIdentifyingRequest): DefaultSuccess = 5; } +/** The Descriptor Cluster is meant to replace the support from the Zigbee Device Object (ZDO) for describing a node, its endpoints and clusters. */ server cluster Descriptor = 29 { struct DeviceTypeStruct { devtype_id deviceType = 0; @@ -133,6 +136,7 @@ server cluster Descriptor = 29 { readonly attribute int16u clusterRevision = 65533; } +/** The Binding Cluster is meant to replace the support from the Zigbee Device Object (ZDO) for supporting the binding table. */ client cluster Binding = 30 { fabric_scoped struct TargetStruct { optional node_id node = 1; @@ -151,6 +155,10 @@ client cluster Binding = 30 { readonly attribute int16u clusterRevision = 65533; } +/** The Access Control Cluster exposes a data model view of a + Node's Access Control List (ACL), which codifies the rules used to manage + and enforce Access Control for the Node's endpoints and their associated + cluster instances. */ client cluster AccessControl = 31 { enum AccessControlEntryAuthModeEnum : ENUM8 { kPase = 1; @@ -220,6 +228,10 @@ client cluster AccessControl = 31 { readonly attribute int16u clusterRevision = 65533; } +/** The Access Control Cluster exposes a data model view of a + Node's Access Control List (ACL), which codifies the rules used to manage + and enforce Access Control for the Node's endpoints and their associated + cluster instances. */ server cluster AccessControl = 31 { enum AccessControlEntryAuthModeEnum : ENUM8 { kPase = 1; @@ -289,6 +301,9 @@ server cluster AccessControl = 31 { readonly attribute int16u clusterRevision = 65533; } +/** This cluster provides attributes and events for determining basic information about Nodes, which supports both + Commissioning and operational determination of Node characteristics, such as Vendor ID, Product ID and serial number, + which apply to the whole Node. Also allows setting user device information such as location. */ server cluster BasicInformation = 40 { struct CapabilityMinimaStruct { int16u caseSessionsPerFabric = 0; @@ -338,6 +353,10 @@ server cluster BasicInformation = 40 { readonly attribute int16u clusterRevision = 65533; } +/** Nodes should be expected to be deployed to any and all regions of the world. These global regions + may have differing common languages, units of measurements, and numerical formatting + standards. As such, Nodes that visually or audibly convey information need a mechanism by which + they can be configured to use a user’s preferred language, units, etc */ server cluster LocalizationConfiguration = 43 { attribute char_string<35> activeLocale = 0; readonly attribute CHAR_STRING supportedLocales[] = 1; @@ -349,6 +368,10 @@ server cluster LocalizationConfiguration = 43 { readonly attribute int16u clusterRevision = 65533; } +/** Nodes should be expected to be deployed to any and all regions of the world. These global regions + may have differing preferences for how dates and times are conveyed. As such, Nodes that visually + or audibly convey time information need a mechanism by which they can be configured to use a + user’s preferred format. */ server cluster TimeFormatLocalization = 44 { enum CalendarTypeEnum : ENUM8 { kBuddhist = 0; @@ -381,6 +404,10 @@ server cluster TimeFormatLocalization = 44 { readonly attribute int16u clusterRevision = 65533; } +/** Nodes should be expected to be deployed to any and all regions of the world. These global regions + may have differing preferences for the units in which values are conveyed in communication to a + user. As such, Nodes that visually or audibly convey measurable values to the user need a + mechanism by which they can be configured to use a user’s preferred unit. */ server cluster UnitLocalization = 45 { enum TempUnitEnum : ENUM8 { kFahrenheit = 0; @@ -401,6 +428,7 @@ server cluster UnitLocalization = 45 { readonly attribute int16u clusterRevision = 65533; } +/** This cluster is used to manage global aspects of the Commissioning flow. */ server cluster GeneralCommissioning = 48 { enum CommissioningError : ENUM8 { kOk = 0; @@ -464,6 +492,7 @@ server cluster GeneralCommissioning = 48 { fabric command access(invoke: administer) CommissioningComplete(): CommissioningCompleteResponse = 4; } +/** Functionality to configure, enable, disable network credentials and access on a Matter device. */ server cluster NetworkCommissioning = 49 { enum NetworkCommissioningStatus : ENUM8 { kSuccess = 0; @@ -589,6 +618,7 @@ server cluster NetworkCommissioning = 49 { command access(invoke: administer) ReorderNetwork(ReorderNetworkRequest): NetworkConfigResponse = 8; } +/** The cluster provides commands for retrieving unstructured diagnostic logs from a Node that may be used to aid in diagnostics. */ server cluster DiagnosticLogs = 50 { enum IntentEnum : ENUM8 { kEndUserSupport = 0; @@ -625,6 +655,7 @@ server cluster DiagnosticLogs = 50 { command RetrieveLogsRequest(RetrieveLogsRequestRequest): RetrieveLogsResponse = 0; } +/** The General Diagnostics Cluster, along with other diagnostics clusters, provide a means to acquire standardized diagnostics metrics that MAY be used by a Node to assist a user or Administrative Node in diagnosing potential problems. */ server cluster GeneralDiagnostics = 51 { enum BootReasonEnum : ENUM8 { kUnspecified = 0; @@ -729,6 +760,7 @@ server cluster GeneralDiagnostics = 51 { command access(invoke: manage) TestEventTrigger(TestEventTriggerRequest): DefaultSuccess = 0; } +/** The Software Diagnostics Cluster provides a means to acquire standardized diagnostics metrics that MAY be used by a Node to assist a user or Administrative Node in diagnosing potential problems. */ server cluster SoftwareDiagnostics = 52 { bitmap SoftwareDiagnosticsFeature : BITMAP32 { kWaterMarks = 0x1; @@ -760,6 +792,7 @@ server cluster SoftwareDiagnostics = 52 { readonly attribute int16u clusterRevision = 65533; } +/** The Ethernet Network Diagnostics Cluster provides a means to acquire standardized diagnostics metrics that MAY be used by a Node to assist a user or Administrative Node in diagnosing potential problems. */ server cluster EthernetNetworkDiagnostics = 55 { enum PHYRateEnum : ENUM8 { kRate10M = 0; @@ -796,6 +829,7 @@ server cluster EthernetNetworkDiagnostics = 55 { readonly attribute int16u clusterRevision = 65533; } +/** Commands to trigger a Node to allow a new Administrator to commission it. */ server cluster AdministratorCommissioning = 60 { enum CommissioningWindowStatusEnum : ENUM8 { kWindowNotOpen = 0; @@ -836,6 +870,7 @@ server cluster AdministratorCommissioning = 60 { timed command access(invoke: administer) RevokeCommissioning(): DefaultSuccess = 2; } +/** This cluster is used to add or remove Operational Credentials on a Commissionee or Node, as well as manage the associated Fabrics. */ server cluster OperationalCredentials = 62 { enum CertificateChainTypeEnum : ENUM8 { kDACCertificate = 1; @@ -951,6 +986,7 @@ server cluster OperationalCredentials = 62 { command access(invoke: administer) AddTrustedRootCertificate(AddTrustedRootCertificateRequest): DefaultSuccess = 11; } +/** The Group Key Management Cluster is the mechanism by which group keys are managed. */ server cluster GroupKeyManagement = 63 { enum GroupKeySecurityPolicyEnum : ENUM8 { kTrustFirst = 0; @@ -1022,6 +1058,8 @@ server cluster GroupKeyManagement = 63 { fabric command access(invoke: administer) KeySetReadAllIndices(KeySetReadAllIndicesRequest): KeySetReadAllIndicesResponse = 4; } +/** The Fixed Label Cluster provides a feature for the device to tag an endpoint with zero or more read only +labels. */ server cluster FixedLabel = 64 { readonly attribute LabelStruct labelList[] = 0; readonly attribute command_id generatedCommandList[] = 65528; @@ -1032,6 +1070,7 @@ server cluster FixedLabel = 64 { readonly attribute int16u clusterRevision = 65533; } +/** The User Label Cluster provides a feature to tag an endpoint with zero or more labels. */ server cluster UserLabel = 65 { attribute access(write: manage) LabelStruct labelList[] = 0; readonly attribute command_id generatedCommandList[] = 65528; @@ -1054,7 +1093,7 @@ endpoint 0 { callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; - ram attribute featureMap; + ram attribute featureMap default = 0; callback attribute clusterRevision default = 1; } @@ -1067,7 +1106,7 @@ endpoint 0 { callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } @@ -1079,23 +1118,23 @@ endpoint 0 { callback attribute productID; persist attribute nodeLabel; callback attribute location default = "XX"; - callback attribute hardwareVersion; + callback attribute hardwareVersion default = 0; callback attribute hardwareVersionString; - callback attribute softwareVersion; + callback attribute softwareVersion default = 0; callback attribute softwareVersionString; callback attribute manufacturingDate default = "20210614123456ZZ"; callback attribute partNumber; callback attribute productURL; callback attribute productLabel; callback attribute serialNumber; - persist attribute localConfigDisabled; + persist attribute localConfigDisabled default = 0; ram attribute reachable default = 1; callback attribute uniqueID; callback attribute capabilityMinima; callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } @@ -1105,23 +1144,23 @@ endpoint 0 { callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } server cluster TimeFormatLocalization { - persist attribute hourFormat; - persist attribute activeCalendarType; + persist attribute hourFormat default = 0; + persist attribute activeCalendarType default = 0; callback attribute supportedCalendarTypes; callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } server cluster UnitLocalization { - persist attribute temperatureUnit; + persist attribute temperatureUnit default = 0; callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; @@ -1130,10 +1169,10 @@ endpoint 0 { } server cluster GeneralCommissioning { - ram attribute breadcrumb; + ram attribute breadcrumb default = 0x0000000000000000; callback attribute basicCommissioningInfo; - callback attribute regulatoryConfig; - callback attribute locationCapability; + callback attribute regulatoryConfig default = 0; + callback attribute locationCapability default = 0; callback attribute supportsConcurrentConnection default = 1; ram attribute featureMap default = 6; ram attribute clusterRevision default = 1; @@ -1153,58 +1192,58 @@ endpoint 0 { } server cluster DiagnosticLogs { - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } server cluster GeneralDiagnostics { callback attribute networkInterfaces; - callback attribute rebootCount; - callback attribute upTime; - callback attribute totalOperationalHours; + callback attribute rebootCount default = 0x0000; + callback attribute upTime default = 0x0000000000000000; + callback attribute totalOperationalHours default = 0x00000000; callback attribute bootReason; callback attribute activeHardwareFaults; callback attribute activeRadioFaults; callback attribute activeNetworkFaults; - callback attribute testEventTriggersEnabled; + callback attribute testEventTriggersEnabled default = false; callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } server cluster SoftwareDiagnostics { callback attribute threadMetrics; - callback attribute currentHeapFree; - callback attribute currentHeapUsed; - callback attribute currentHeapHighWatermark; + callback attribute currentHeapFree default = 0x0000000000000000; + callback attribute currentHeapUsed default = 0x0000000000000000; + callback attribute currentHeapHighWatermark default = 0x0000000000000000; ram attribute featureMap default = 1; ram attribute clusterRevision default = 1; } server cluster EthernetNetworkDiagnostics { callback attribute PHYRate; - callback attribute fullDuplex; - callback attribute packetRxCount; - callback attribute packetTxCount; - callback attribute txErrCount; - callback attribute collisionCount; - callback attribute overrunCount; - callback attribute carrierDetect; - callback attribute timeSinceReset; + callback attribute fullDuplex default = 0x00; + callback attribute packetRxCount default = 0x0000000000000000; + callback attribute packetTxCount default = 0x0000000000000000; + callback attribute txErrCount default = 0x0000000000000000; + callback attribute collisionCount default = 0x0000000000000000; + callback attribute overrunCount default = 0x0000000000000000; + callback attribute carrierDetect default = 0x00; + callback attribute timeSinceReset default = 0x0000000000000000; ram attribute featureMap default = 3; ram attribute clusterRevision default = 1; } server cluster AdministratorCommissioning { - callback attribute windowStatus; + callback attribute windowStatus default = 0; callback attribute adminFabricIndex default = 1; - callback attribute adminVendorId; + callback attribute adminVendorId default = 0; callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } @@ -1218,7 +1257,7 @@ endpoint 0 { callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } @@ -1235,13 +1274,13 @@ endpoint 0 { server cluster FixedLabel { callback attribute labelList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } server cluster UserLabel { callback attribute labelList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } } @@ -1250,18 +1289,18 @@ endpoint 1 { binding cluster Binding; server cluster Identify { - ram attribute identifyTime; - ram attribute identifyType; + ram attribute identifyTime default = 0x0; + ram attribute identifyType default = 0x0; callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 4; } server cluster Groups { ram attribute nameSupport; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 4; } @@ -1273,7 +1312,7 @@ endpoint 1 { callback attribute generatedCommandList; callback attribute acceptedCommandList; callback attribute attributeList; - ram attribute featureMap; + ram attribute featureMap default = 0; ram attribute clusterRevision default = 1; } }