diff --git a/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter b/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter index 72d0a2fe9bc8c9..4ec59939789acb 100644 --- a/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter +++ b/examples/all-clusters-app/all-clusters-common/all-clusters-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AccessControl = 31 { @@ -43,7 +43,7 @@ server cluster AccessControl = 31 { struct ExtensionEntry { fabric_idx fabricIndex = 0; - OCTET_STRING data = 1; + OCTET_STRING<254> data = 1; } info event AccessControlEntryChanged = 0 { @@ -115,12 +115,12 @@ server cluster ApplicationBasic = 1293 { kActiveVisibleNotFocus = 3; } - readonly attribute char_string vendorName = 0; + readonly attribute char_string<32> vendorName = 0; readonly attribute int16u vendorId = 1; - readonly attribute char_string applicationName = 2; + readonly attribute char_string<32> applicationName = 2; readonly attribute int16u productId = 3; readonly attribute ApplicationStatusEnum applicationStatus = 5; - readonly attribute char_string applicationVersion = 6; + readonly attribute char_string<32> applicationVersion = 6; readonly attribute vendor_id allowedVendorList[] = 7; readonly global attribute int16u clusterRevision = 65533; } @@ -154,7 +154,7 @@ server cluster AudioOutput = 1291 { struct OutputInfo { INT8U index = 0; OutputTypeEnum outputType = 1; - CHAR_STRING name = 2; + CHAR_STRING<32> name = 2; } readonly attribute OutputInfo audioOutputList[] = 0; @@ -193,24 +193,24 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; - readonly attribute char_string manufacturingDate = 11; - readonly attribute char_string partNumber = 12; - readonly attribute long_char_string productURL = 13; - readonly attribute char_string productLabel = 14; - readonly attribute char_string serialNumber = 15; + readonly attribute char_string<64> softwareVersionString = 10; + readonly attribute char_string<16> manufacturingDate = 11; + readonly attribute char_string<32> partNumber = 12; + readonly attribute long_char_string<256> productURL = 13; + readonly attribute char_string<64> productLabel = 14; + readonly attribute char_string<32> serialNumber = 15; attribute boolean localConfigDisabled = 16; readonly attribute boolean reachable = 17; - readonly attribute char_string uniqueID = 18; + readonly attribute char_string<32> uniqueID = 18; readonly global attribute int16u clusterRevision = 65533; command MfgSpecificPing(): DefaultSuccess = 0; @@ -284,7 +284,7 @@ server cluster BridgedActions = 37 { struct ActionStruct { INT16U actionID = 0; - CHAR_STRING name = 1; + CHAR_STRING<32> name = 1; ActionTypeEnum type = 2; INT16U endpointListID = 3; INT16U supportedCommands = 4; @@ -293,7 +293,7 @@ server cluster BridgedActions = 37 { struct EndpointListStruct { INT16U endpointListID = 0; - CHAR_STRING name = 1; + CHAR_STRING<32> name = 1; EndpointListTypeEnum type = 2; ENDPOINT_NO endpoints[] = 3; } @@ -313,7 +313,7 @@ server cluster BridgedActions = 37 { readonly attribute ActionStruct actionList[] = 0; readonly attribute EndpointListStruct endpointList[] = 1; - readonly attribute long_char_string setupUrl = 2; + readonly attribute long_char_string<512> setupUrl = 2; readonly global attribute int16u clusterRevision = 65533; } @@ -334,9 +334,9 @@ server cluster Channel = 1284 { struct ChannelInfo { INT16U majorNumber = 0; INT16U minorNumber = 1; - CHAR_STRING name = 2; - CHAR_STRING callSign = 3; - CHAR_STRING affiliateCallSign = 4; + CHAR_STRING<32> name = 2; + CHAR_STRING<32> callSign = 3; + CHAR_STRING<32> affiliateCallSign = 4; } readonly attribute ChannelInfo channelList[] = 0; @@ -396,7 +396,7 @@ server cluster ColorControl = 768 { readonly attribute int16u currentX = 3; readonly attribute int16u currentY = 4; readonly attribute enum8 driftCompensation = 5; - readonly attribute char_string compensationText = 6; + readonly attribute char_string<254> compensationText = 6; readonly attribute int16u colorTemperature = 7; readonly attribute enum8 colorMode = 8; attribute bitmap8 colorControlOptions = 15; @@ -976,7 +976,7 @@ server cluster DoorLock = 257 { readonly attribute int8u maxPINCodeLength = 23; readonly attribute int8u minPINCodeLength = 24; readonly attribute bitmap8 credentialRulesSupport = 27; - attribute char_string language = 33; + attribute char_string<3> language = 33; attribute int32u autoRelockTime = 35; attribute int8u soundVolume = 36; attribute DlOperatingMode operatingMode = 37; @@ -1233,11 +1233,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -1287,17 +1287,17 @@ server cluster GroupKeyManagement = 63 { INT16U fabricIndex = 0; INT16U groupId = 1; INT16U endpoints[] = 2; - CHAR_STRING groupName = 3; + CHAR_STRING<16> groupName = 3; } struct GroupKeySet { INT16U groupKeySetID = 0; GroupKeySecurityPolicy securityPolicy = 1; - OCTET_STRING epochKey0 = 2; + OCTET_STRING<16> epochKey0 = 2; INT64U epochStartTime0 = 3; - OCTET_STRING epochKey1 = 4; + OCTET_STRING<16> epochKey1 = 4; INT64U epochStartTime1 = 5; - OCTET_STRING epochKey2 = 6; + OCTET_STRING<16> epochKey2 = 6; INT64U epochStartTime2 = 7; } @@ -1687,7 +1687,7 @@ server cluster LevelControl = 8 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -1716,8 +1716,8 @@ server cluster MediaInput = 1287 { struct InputInfo { INT8U index = 0; InputTypeEnum inputType = 1; - CHAR_STRING name = 2; - CHAR_STRING description = 3; + CHAR_STRING<32> name = 2; + CHAR_STRING<32> description = 3; } readonly attribute InputInfo mediaInputList[] = 0; @@ -1753,7 +1753,7 @@ server cluster MediaPlayback = 1286 { server cluster ModeSelect = 80 { struct ModeOptionStruct { - CHAR_STRING label = 0; + CHAR_STRING<32> label = 0; INT8U mode = 1; INT32U semanticTag = 2; } @@ -1762,7 +1762,7 @@ server cluster ModeSelect = 80 { readonly attribute ModeOptionStruct supportedModes[] = 1; attribute int8u onMode = 2; readonly attribute int8u startUpMode = 3; - readonly attribute char_string description = 4; + readonly attribute char_string<32> description = 4; readonly global attribute int16u clusterRevision = 65533; request struct ChangeToModeRequest { @@ -1828,7 +1828,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -2092,11 +2092,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -2182,7 +2182,7 @@ server cluster OperationalCredentials = 62 { server cluster PowerSource = 47 { readonly attribute enum8 status = 0; readonly attribute int8u order = 1; - readonly attribute char_string description = 2; + readonly attribute char_string<60> description = 2; readonly attribute int32u batteryVoltage = 11; readonly attribute int8u batteryPercentRemaining = 12; readonly attribute int32u batteryTimeRemaining = 13; @@ -2412,7 +2412,7 @@ server cluster Scenes = 5 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -2479,7 +2479,7 @@ server cluster TargetNavigator = 1285 { struct TargetInfo { INT8U identifier = 0; - CHAR_STRING name = 1; + CHAR_STRING<32> name = 1; } readonly attribute TargetInfo targetNavigatorList[] = 0; @@ -2505,7 +2505,7 @@ server cluster TestCluster = 1295 { struct TestListStructOctet { INT64U fabricIndex = 0; - OCTET_STRING operationalCert = 1; + OCTET_STRING<32> operationalCert = 1; } struct NullablesAndOptionalsStruct { @@ -2584,13 +2584,13 @@ server cluster TestCluster = 1295 { attribute enum16 enum16 = 22; attribute single floatSingle = 23; attribute double floatDouble = 24; - attribute octet_string octetString = 25; + attribute octet_string<10> octetString = 25; attribute INT8U listInt8u[] = 26; attribute OCTET_STRING listOctetString[] = 27; attribute TestListStructOctet listStructOctetString[] = 28; - attribute long_octet_string longOctetString = 29; - attribute char_string charString = 30; - attribute long_char_string longCharString = 31; + attribute long_octet_string<1000> longOctetString = 29; + attribute char_string<10> charString = 30; + attribute long_char_string<1000> longCharString = 31; attribute epoch_us epochUs = 32; attribute epoch_s epochS = 33; attribute vendor_id vendorId = 34; @@ -2628,8 +2628,8 @@ server cluster TestCluster = 1295 { attribute enum16 nullableEnum16 = 32790; attribute single nullableFloatSingle = 32791; attribute double nullableFloatDouble = 32792; - attribute octet_string nullableOctetString = 32793; - attribute char_string nullableCharString = 32798; + attribute octet_string<10> nullableOctetString = 32793; + attribute char_string<10> nullableCharString = 32798; attribute SimpleEnum nullableEnumAttr = 32804; attribute SimpleStruct nullableStruct = 32805; attribute int8u nullableRangeRestrictedInt8u = 32806; @@ -2859,10 +2859,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -2917,7 +2917,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; @@ -2932,7 +2932,7 @@ server cluster UserLabel = 65 { } server cluster WakeOnLan = 1283 { - readonly attribute char_string wakeOnLanMacAddress = 0; + readonly attribute char_string<32> wakeOnLanMacAddress = 0; readonly global attribute int16u clusterRevision = 65533; } @@ -2980,7 +2980,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/examples/bridge-app/bridge-common/bridge-app.matter b/examples/bridge-app/bridge-common/bridge-app.matter index f8504f25addfa8..5ec65851ef1a4f 100644 --- a/examples/bridge-app/bridge-common/bridge-app.matter +++ b/examples/bridge-app/bridge-common/bridge-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AdministratorCommissioning = 60 { @@ -58,16 +58,16 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; + readonly attribute char_string<64> softwareVersionString = 10; readonly global attribute int16u clusterRevision = 65533; } @@ -255,11 +255,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -375,7 +375,7 @@ server cluster LevelControl = 8 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -435,7 +435,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -544,11 +544,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -634,7 +634,7 @@ server cluster OperationalCredentials = 62 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -769,10 +769,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -827,7 +827,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; @@ -883,7 +883,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/examples/door-lock-app/door-lock-common/door-lock-app.matter b/examples/door-lock-app/door-lock-common/door-lock-app.matter index 2dbd6bc86aa468..6e591f838c5aae 100644 --- a/examples/door-lock-app/door-lock-common/door-lock-app.matter +++ b/examples/door-lock-app/door-lock-common/door-lock-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AdministratorCommissioning = 60 { @@ -58,16 +58,16 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; + readonly attribute char_string<64> softwareVersionString = 10; readonly global attribute int16u clusterRevision = 65533; } @@ -359,7 +359,7 @@ server cluster DoorLock = 257 { readonly attribute int8u maxPINCodeLength = 23; readonly attribute int8u minPINCodeLength = 24; readonly attribute bitmap8 credentialRulesSupport = 27; - attribute char_string language = 33; + attribute char_string<3> language = 33; attribute int32u autoRelockTime = 35; attribute int8u soundVolume = 36; attribute DlOperatingMode operatingMode = 37; @@ -588,11 +588,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -627,7 +627,7 @@ server cluster GeneralDiagnostics = 51 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -687,7 +687,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -772,11 +772,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -862,12 +862,12 @@ server cluster OperationalCredentials = 62 { server cluster PowerSource = 47 { readonly attribute enum8 status = 0; readonly attribute int8u order = 1; - readonly attribute char_string description = 2; + readonly attribute char_string<60> description = 2; readonly attribute int32u wiredAssessedCurrent = 6; readonly attribute enum8 batteryChargeLevel = 14; readonly attribute boolean batteryReplacementNeeded = 15; readonly attribute enum8 batteryReplaceability = 16; - readonly attribute char_string batteryReplacementDescription = 19; + readonly attribute char_string<60> batteryReplacementDescription = 19; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; } @@ -880,7 +880,7 @@ server cluster PowerSourceConfiguration = 46 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -977,10 +977,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -1035,7 +1035,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; @@ -1091,7 +1091,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/examples/lighting-app/lighting-common/lighting-app.matter b/examples/lighting-app/lighting-common/lighting-app.matter index b2e216e95e5504..76c31b86d02b30 100644 --- a/examples/lighting-app/lighting-common/lighting-app.matter +++ b/examples/lighting-app/lighting-common/lighting-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AdministratorCommissioning = 60 { @@ -58,24 +58,24 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; - readonly attribute char_string manufacturingDate = 11; - readonly attribute char_string partNumber = 12; - readonly attribute long_char_string productURL = 13; - readonly attribute char_string productLabel = 14; - readonly attribute char_string serialNumber = 15; + readonly attribute char_string<64> softwareVersionString = 10; + readonly attribute char_string<16> manufacturingDate = 11; + readonly attribute char_string<32> partNumber = 12; + readonly attribute long_char_string<256> productURL = 13; + readonly attribute char_string<64> productLabel = 14; + readonly attribute char_string<32> serialNumber = 15; attribute boolean localConfigDisabled = 16; readonly attribute boolean reachable = 17; - readonly attribute char_string uniqueID = 18; + readonly attribute char_string<32> uniqueID = 18; readonly global attribute int16u clusterRevision = 65533; } @@ -504,11 +504,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -669,7 +669,7 @@ server cluster LevelControl = 8 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -729,7 +729,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -1029,11 +1029,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -1119,7 +1119,7 @@ server cluster OperationalCredentials = 62 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -1251,10 +1251,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -1309,7 +1309,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; @@ -1367,7 +1367,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/examples/lock-app/lock-common/lock-app.matter b/examples/lock-app/lock-common/lock-app.matter index fe6fecc6a9dd26..39b212425bbdcc 100644 --- a/examples/lock-app/lock-common/lock-app.matter +++ b/examples/lock-app/lock-common/lock-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AdministratorCommissioning = 60 { @@ -58,16 +58,16 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; + readonly attribute char_string<64> softwareVersionString = 10; readonly global attribute int16u clusterRevision = 65533; } @@ -255,11 +255,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -294,7 +294,7 @@ server cluster GeneralDiagnostics = 51 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -354,7 +354,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -468,11 +468,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -558,12 +558,12 @@ server cluster OperationalCredentials = 62 { server cluster PowerSource = 47 { readonly attribute enum8 status = 0; readonly attribute int8u order = 1; - readonly attribute char_string description = 2; + readonly attribute char_string<60> description = 2; readonly attribute int32u wiredAssessedCurrent = 6; readonly attribute enum8 batteryChargeLevel = 14; readonly attribute boolean batteryReplacementNeeded = 15; readonly attribute enum8 batteryReplaceability = 16; - readonly attribute char_string batteryReplacementDescription = 19; + readonly attribute char_string<60> batteryReplacementDescription = 19; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; } @@ -576,7 +576,7 @@ server cluster PowerSourceConfiguration = 46 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -673,10 +673,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -731,7 +731,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; @@ -787,7 +787,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/examples/log-source-app/log-source-common/log-source-app.matter b/examples/log-source-app/log-source-common/log-source-app.matter index e30623a820f786..1280aec975ace0 100644 --- a/examples/log-source-app/log-source-common/log-source-app.matter +++ b/examples/log-source-app/log-source-common/log-source-app.matter @@ -236,11 +236,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute FabricDescriptor fabricsList[] = 1; diff --git a/examples/ota-provider-app/ota-provider-common/ota-provider-app.matter b/examples/ota-provider-app/ota-provider-common/ota-provider-app.matter index 09b4f798d20c84..24c3902d15b0d1 100644 --- a/examples/ota-provider-app/ota-provider-common/ota-provider-app.matter +++ b/examples/ota-provider-app/ota-provider-common/ota-provider-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster FixedLabel = 64 { @@ -70,7 +70,7 @@ server cluster GeneralCommissioning = 48 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -130,7 +130,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -280,11 +280,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; diff --git a/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.matter b/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.matter index fae07dd1a603d8..c523bf72140131 100644 --- a/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.matter +++ b/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster Basic = 40 { @@ -22,16 +22,16 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; + readonly attribute char_string<64> softwareVersionString = 10; readonly global attribute int16u clusterRevision = 65533; command MfgSpecificPing(): DefaultSuccess = 0; @@ -101,7 +101,7 @@ server cluster GeneralCommissioning = 48 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -161,7 +161,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -380,11 +380,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; diff --git a/examples/placeholder/linux/apps/app1/config.matter b/examples/placeholder/linux/apps/app1/config.matter index 07f3fde86630e9..017ff384f4d258 100644 --- a/examples/placeholder/linux/apps/app1/config.matter +++ b/examples/placeholder/linux/apps/app1/config.matter @@ -17,24 +17,24 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; - readonly attribute char_string manufacturingDate = 11; - readonly attribute char_string partNumber = 12; - readonly attribute long_char_string productURL = 13; - readonly attribute char_string productLabel = 14; - readonly attribute char_string serialNumber = 15; + readonly attribute char_string<64> softwareVersionString = 10; + readonly attribute char_string<16> manufacturingDate = 11; + readonly attribute char_string<32> partNumber = 12; + readonly attribute long_char_string<256> productURL = 13; + readonly attribute char_string<64> productLabel = 14; + readonly attribute char_string<32> serialNumber = 15; attribute boolean localConfigDisabled = 16; readonly attribute boolean reachable = 17; - readonly attribute char_string uniqueID = 18; + readonly attribute char_string<32> uniqueID = 18; readonly global attribute int16u clusterRevision = 65533; } @@ -405,7 +405,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -508,11 +508,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute FabricDescriptor fabricsList[] = 1; diff --git a/examples/placeholder/linux/apps/app2/config.matter b/examples/placeholder/linux/apps/app2/config.matter index 07f3fde86630e9..017ff384f4d258 100644 --- a/examples/placeholder/linux/apps/app2/config.matter +++ b/examples/placeholder/linux/apps/app2/config.matter @@ -17,24 +17,24 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; - readonly attribute char_string manufacturingDate = 11; - readonly attribute char_string partNumber = 12; - readonly attribute long_char_string productURL = 13; - readonly attribute char_string productLabel = 14; - readonly attribute char_string serialNumber = 15; + readonly attribute char_string<64> softwareVersionString = 10; + readonly attribute char_string<16> manufacturingDate = 11; + readonly attribute char_string<32> partNumber = 12; + readonly attribute long_char_string<256> productURL = 13; + readonly attribute char_string<64> productLabel = 14; + readonly attribute char_string<32> serialNumber = 15; attribute boolean localConfigDisabled = 16; readonly attribute boolean reachable = 17; - readonly attribute char_string uniqueID = 18; + readonly attribute char_string<32> uniqueID = 18; readonly global attribute int16u clusterRevision = 65533; } @@ -405,7 +405,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -508,11 +508,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute FabricDescriptor fabricsList[] = 1; diff --git a/examples/pump-app/pump-common/pump-app.matter b/examples/pump-app/pump-common/pump-app.matter index 058c65c234e391..77cdb21d6c9d85 100644 --- a/examples/pump-app/pump-common/pump-app.matter +++ b/examples/pump-app/pump-common/pump-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AdministratorCommissioning = 60 { @@ -58,16 +58,16 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; + readonly attribute char_string<64> softwareVersionString = 10; readonly global attribute int16u clusterRevision = 65533; command MfgSpecificPing(): DefaultSuccess = 0; @@ -244,11 +244,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -350,7 +350,7 @@ server cluster LevelControl = 8 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -410,7 +410,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -519,11 +519,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -719,7 +719,7 @@ server cluster PumpConfigurationAndControl = 512 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -830,10 +830,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -888,7 +888,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; diff --git a/examples/pump-controller-app/pump-controller-common/pump-controller-app.matter b/examples/pump-controller-app/pump-controller-common/pump-controller-app.matter index fcc69efb730f52..799b1a2f3c2f8d 100644 --- a/examples/pump-controller-app/pump-controller-common/pump-controller-app.matter +++ b/examples/pump-controller-app/pump-controller-common/pump-controller-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AdministratorCommissioning = 60 { @@ -58,16 +58,16 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; + readonly attribute char_string<64> softwareVersionString = 10; readonly global attribute int16u clusterRevision = 65533; command MfgSpecificPing(): DefaultSuccess = 0; @@ -264,11 +264,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -370,7 +370,7 @@ client cluster LevelControl = 8 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -430,7 +430,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -539,11 +539,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -714,7 +714,7 @@ client cluster PumpConfigurationAndControl = 512 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -818,10 +818,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -876,7 +876,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; @@ -932,7 +932,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter b/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter index 1943328215ef9a..b006355438a7df 100644 --- a/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter +++ b/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AdministratorCommissioning = 60 { @@ -58,16 +58,16 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; + readonly attribute char_string<64> softwareVersionString = 10; readonly global attribute int16u clusterRevision = 65533; } @@ -255,11 +255,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -294,7 +294,7 @@ server cluster GeneralDiagnostics = 51 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -354,7 +354,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -433,11 +433,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -586,7 +586,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/examples/thermostat/thermostat-common/thermostat.matter b/examples/thermostat/thermostat-common/thermostat.matter index 08678f8f9dd7f5..78dae4064c3ebd 100644 --- a/examples/thermostat/thermostat-common/thermostat.matter +++ b/examples/thermostat/thermostat-common/thermostat.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AdministratorCommissioning = 60 { @@ -58,24 +58,24 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; - readonly attribute char_string manufacturingDate = 11; - readonly attribute char_string partNumber = 12; - readonly attribute long_char_string productURL = 13; - readonly attribute char_string productLabel = 14; - readonly attribute char_string serialNumber = 15; + readonly attribute char_string<64> softwareVersionString = 10; + readonly attribute char_string<16> manufacturingDate = 11; + readonly attribute char_string<32> partNumber = 12; + readonly attribute long_char_string<256> productURL = 13; + readonly attribute char_string<64> productLabel = 14; + readonly attribute char_string<32> serialNumber = 15; attribute boolean localConfigDisabled = 16; readonly attribute boolean reachable = 17; - readonly attribute char_string uniqueID = 18; + readonly attribute char_string<32> uniqueID = 18; readonly global attribute int16u clusterRevision = 65533; command MfgSpecificPing(): DefaultSuccess = 0; @@ -286,11 +286,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -340,7 +340,7 @@ server cluster GroupKeyManagement = 63 { INT16U fabricIndex = 0; INT16U groupId = 1; INT16U endpoints[] = 2; - CHAR_STRING groupName = 3; + CHAR_STRING<16> groupName = 3; } readonly attribute GroupKey groupKeyMap[] = 0; @@ -482,7 +482,7 @@ server cluster Identify = 3 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -542,7 +542,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -692,11 +692,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -882,7 +882,7 @@ server cluster Scenes = 5 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -1046,10 +1046,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -1104,7 +1104,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; @@ -1160,7 +1160,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/examples/tv-app/tv-common/tv-app.matter b/examples/tv-app/tv-common/tv-app.matter index 2b896b3e017f27..5c437528c9034e 100644 --- a/examples/tv-app/tv-common/tv-app.matter +++ b/examples/tv-app/tv-common/tv-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AccountLogin = 1294 { @@ -76,13 +76,13 @@ server cluster ApplicationBasic = 1293 { CHAR_STRING applicationId = 1; } - readonly attribute char_string vendorName = 0; + readonly attribute char_string<32> vendorName = 0; readonly attribute int16u vendorId = 1; - readonly attribute char_string applicationName = 2; + readonly attribute char_string<32> applicationName = 2; readonly attribute int16u productId = 3; attribute ApplicationBasicApplication applicationApp = 4; readonly attribute ApplicationStatusEnum applicationStatus = 5; - readonly attribute char_string applicationVersion = 6; + readonly attribute char_string<32> applicationVersion = 6; readonly attribute vendor_id allowedVendorList[] = 7; readonly global attribute int16u clusterRevision = 65533; } @@ -144,7 +144,7 @@ server cluster AudioOutput = 1291 { struct OutputInfo { INT8U index = 0; OutputTypeEnum outputType = 1; - CHAR_STRING name = 2; + CHAR_STRING<32> name = 2; } readonly attribute OutputInfo audioOutputList[] = 0; @@ -180,23 +180,23 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; - readonly attribute char_string manufacturingDate = 11; - readonly attribute char_string partNumber = 12; - readonly attribute long_char_string productURL = 13; - readonly attribute char_string productLabel = 14; - readonly attribute char_string serialNumber = 15; + readonly attribute char_string<64> softwareVersionString = 10; + readonly attribute char_string<16> manufacturingDate = 11; + readonly attribute char_string<32> partNumber = 12; + readonly attribute long_char_string<256> productURL = 13; + readonly attribute char_string<64> productLabel = 14; + readonly attribute char_string<32> serialNumber = 15; attribute boolean localConfigDisabled = 16; - readonly attribute char_string uniqueID = 18; + readonly attribute char_string<32> uniqueID = 18; readonly global attribute int16u clusterRevision = 65533; command MfgSpecificPing(): DefaultSuccess = 0; @@ -257,9 +257,9 @@ server cluster Channel = 1284 { struct ChannelInfo { INT16U majorNumber = 0; INT16U minorNumber = 1; - CHAR_STRING name = 2; - CHAR_STRING callSign = 3; - CHAR_STRING affiliateCallSign = 4; + CHAR_STRING<32> name = 2; + CHAR_STRING<32> callSign = 3; + CHAR_STRING<32> affiliateCallSign = 4; } struct LineupInfo { @@ -628,11 +628,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -682,7 +682,7 @@ server cluster GroupKeyManagement = 63 { INT16U fabricIndex = 0; INT16U groupId = 1; INT16U endpoints[] = 2; - CHAR_STRING groupName = 3; + CHAR_STRING<16> groupName = 3; } readonly attribute GroupKey groupKeyMap[] = 0; @@ -877,7 +877,7 @@ server cluster LevelControl = 8 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -906,8 +906,8 @@ server cluster MediaInput = 1287 { struct InputInfo { INT8U index = 0; InputTypeEnum inputType = 1; - CHAR_STRING name = 2; - CHAR_STRING description = 3; + CHAR_STRING<32> name = 2; + CHAR_STRING<32> description = 3; } readonly attribute InputInfo mediaInputList[] = 0; @@ -1045,7 +1045,7 @@ client cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -1164,7 +1164,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -1338,11 +1338,11 @@ client cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -1436,11 +1436,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -1533,7 +1533,7 @@ server cluster RelativeHumidityMeasurement = 1029 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -1560,7 +1560,7 @@ server cluster TargetNavigator = 1285 { struct TargetInfo { INT8U identifier = 0; - CHAR_STRING name = 1; + CHAR_STRING<32> name = 1; } readonly attribute TargetInfo targetNavigatorList[] = 0; @@ -1659,10 +1659,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -1717,7 +1717,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; @@ -1730,7 +1730,7 @@ server cluster UserLabel = 65 { } server cluster WakeOnLan = 1283 { - readonly attribute char_string wakeOnLanMacAddress = 0; + readonly attribute char_string<32> wakeOnLanMacAddress = 0; readonly global attribute int16u clusterRevision = 65533; } @@ -1778,7 +1778,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/examples/tv-casting-app/tv-casting-common/tv-casting-app.matter b/examples/tv-casting-app/tv-casting-common/tv-casting-app.matter index ed780da7f8b1a4..8febde8abf171a 100644 --- a/examples/tv-casting-app/tv-casting-common/tv-casting-app.matter +++ b/examples/tv-casting-app/tv-casting-common/tv-casting-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } client cluster AccountLogin = 1294 { @@ -67,12 +67,12 @@ client cluster ApplicationBasic = 1293 { kActiveVisibleNotFocus = 3; } - readonly attribute char_string vendorName = 0; + readonly attribute char_string<32> vendorName = 0; readonly attribute int16u vendorId = 1; - readonly attribute char_string applicationName = 2; + readonly attribute char_string<32> applicationName = 2; readonly attribute int16u productId = 3; readonly attribute ApplicationStatusEnum applicationStatus = 5; - readonly attribute char_string applicationVersion = 6; + readonly attribute char_string<32> applicationVersion = 6; readonly global attribute int16u clusterRevision = 65533; } @@ -122,7 +122,7 @@ client cluster AudioOutput = 1291 { struct OutputInfo { INT8U index = 0; OutputTypeEnum outputType = 1; - CHAR_STRING name = 2; + CHAR_STRING<32> name = 2; } readonly attribute OutputInfo audioOutputList[] = 0; @@ -172,24 +172,24 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; - readonly attribute char_string manufacturingDate = 11; - readonly attribute char_string partNumber = 12; - readonly attribute long_char_string productURL = 13; - readonly attribute char_string productLabel = 14; - readonly attribute char_string serialNumber = 15; + readonly attribute char_string<64> softwareVersionString = 10; + readonly attribute char_string<16> manufacturingDate = 11; + readonly attribute char_string<32> partNumber = 12; + readonly attribute long_char_string<256> productURL = 13; + readonly attribute char_string<64> productLabel = 14; + readonly attribute char_string<32> serialNumber = 15; attribute boolean localConfigDisabled = 16; readonly attribute boolean reachable = 17; - readonly attribute char_string uniqueID = 18; + readonly attribute char_string<32> uniqueID = 18; readonly global attribute int16u clusterRevision = 65533; command MfgSpecificPing(): DefaultSuccess = 0; @@ -224,19 +224,19 @@ server cluster Binding = 30 { } server cluster BridgedDeviceBasic = 57 { - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute int16u vendorID = 2; - readonly attribute char_string productName = 3; - attribute char_string nodeLabel = 5; + readonly attribute char_string<32> productName = 3; + attribute char_string<32> nodeLabel = 5; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; - readonly attribute char_string manufacturingDate = 11; - readonly attribute char_string partNumber = 12; - readonly attribute long_char_string productURL = 13; - readonly attribute char_string productLabel = 14; - readonly attribute char_string serialNumber = 15; + readonly attribute char_string<64> softwareVersionString = 10; + readonly attribute char_string<16> manufacturingDate = 11; + readonly attribute char_string<32> partNumber = 12; + readonly attribute long_char_string<256> productURL = 13; + readonly attribute char_string<64> productLabel = 14; + readonly attribute char_string<32> serialNumber = 15; readonly attribute boolean reachable = 17; readonly global attribute int16u clusterRevision = 65533; @@ -259,9 +259,9 @@ client cluster Channel = 1284 { struct ChannelInfo { INT16U majorNumber = 0; INT16U minorNumber = 1; - CHAR_STRING name = 2; - CHAR_STRING callSign = 3; - CHAR_STRING affiliateCallSign = 4; + CHAR_STRING<32> name = 2; + CHAR_STRING<32> callSign = 3; + CHAR_STRING<32> affiliateCallSign = 4; } struct LineupInfo { @@ -347,7 +347,7 @@ server cluster ColorControl = 768 { readonly attribute int16u currentX = 3; readonly attribute int16u currentY = 4; readonly attribute enum8 driftCompensation = 5; - readonly attribute char_string compensationText = 6; + readonly attribute char_string<254> compensationText = 6; readonly attribute int16u colorTemperature = 7; readonly attribute enum8 colorMode = 8; attribute bitmap8 colorControlOptions = 15; @@ -894,7 +894,7 @@ server cluster DoorLock = 257 { readonly attribute int8u maxPINCodeLength = 23; readonly attribute int8u minPINCodeLength = 24; readonly attribute bitmap8 credentialRulesSupport = 27; - attribute char_string language = 33; + attribute char_string<3> language = 33; attribute int32u autoRelockTime = 35; attribute int8u soundVolume = 36; attribute DlOperatingMode operatingMode = 37; @@ -1133,11 +1133,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -1187,7 +1187,7 @@ server cluster GroupKeyManagement = 63 { INT16U fabricIndex = 0; INT16U groupId = 1; INT16U endpoints[] = 2; - CHAR_STRING groupName = 3; + CHAR_STRING<16> groupName = 3; } readonly attribute GroupKey groupKeyMap[] = 0; @@ -1529,7 +1529,7 @@ server cluster LevelControl = 8 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -1552,8 +1552,8 @@ client cluster MediaInput = 1287 { struct InputInfo { INT8U index = 0; InputTypeEnum inputType = 1; - CHAR_STRING name = 2; - CHAR_STRING description = 3; + CHAR_STRING<32> name = 2; + CHAR_STRING<32> description = 3; } readonly attribute InputInfo mediaInputList[] = 0; @@ -1674,7 +1674,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -1860,11 +1860,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -2064,7 +2064,7 @@ server cluster Scenes = 5 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -2127,7 +2127,7 @@ client cluster TargetNavigator = 1285 { struct TargetInfo { INT8U identifier = 0; - CHAR_STRING name = 1; + CHAR_STRING<32> name = 1; } readonly attribute TargetInfo targetNavigatorList[] = 0; @@ -2158,7 +2158,7 @@ server cluster TestCluster = 1295 { struct TestListStructOctet { INT64U fabricIndex = 0; - OCTET_STRING operationalCert = 1; + OCTET_STRING<32> operationalCert = 1; } info event TestEvent = 1 { @@ -2185,11 +2185,11 @@ server cluster TestCluster = 1295 { attribute int64s int64s = 20; attribute enum8 enum8 = 21; attribute enum16 enum16 = 22; - attribute octet_string octetString = 25; + attribute octet_string<10> octetString = 25; attribute INT8U listInt8u[] = 26; attribute OCTET_STRING listOctetString[] = 27; attribute TestListStructOctet listStructOctetString[] = 28; - attribute long_octet_string longOctetString = 29; + attribute long_octet_string<1000> longOctetString = 29; readonly global attribute int16u clusterRevision = 65533; response struct TestSpecificResponse { @@ -2306,10 +2306,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -2364,7 +2364,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; @@ -2377,7 +2377,7 @@ server cluster UserLabel = 65 { } server cluster WakeOnLan = 1283 { - readonly attribute char_string wakeOnLanMacAddress = 0; + readonly attribute char_string<32> wakeOnLanMacAddress = 0; readonly global attribute int16u clusterRevision = 65533; } @@ -2425,7 +2425,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/examples/window-app/common/window-app.matter b/examples/window-app/common/window-app.matter index c7206c376b16e3..e71b4b3daa67f0 100644 --- a/examples/window-app/common/window-app.matter +++ b/examples/window-app/common/window-app.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } server cluster AdministratorCommissioning = 60 { @@ -58,21 +58,21 @@ server cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; - readonly attribute char_string manufacturingDate = 11; - readonly attribute char_string partNumber = 12; - readonly attribute long_char_string productURL = 13; - readonly attribute char_string productLabel = 14; - readonly attribute char_string serialNumber = 15; + readonly attribute char_string<64> softwareVersionString = 10; + readonly attribute char_string<16> manufacturingDate = 11; + readonly attribute char_string<32> partNumber = 12; + readonly attribute long_char_string<256> productURL = 13; + readonly attribute char_string<64> productLabel = 14; + readonly attribute char_string<32> serialNumber = 15; attribute boolean localConfigDisabled = 16; readonly attribute boolean reachable = 17; readonly global attribute int16u clusterRevision = 65533; @@ -232,11 +232,11 @@ server cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -316,7 +316,7 @@ server cluster Identify = 3 { } server cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -376,7 +376,7 @@ server cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -461,11 +461,11 @@ server cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly attribute NOCStruct NOCs[] = 0; @@ -551,7 +551,7 @@ server cluster OperationalCredentials = 62 { server cluster PowerSource = 47 { readonly attribute enum8 status = 0; readonly attribute int8u order = 1; - readonly attribute char_string description = 2; + readonly attribute char_string<60> description = 2; readonly attribute int32u batteryVoltage = 11; readonly attribute int8u batteryPercentRemaining = 12; readonly attribute int32u batteryTimeRemaining = 13; @@ -565,7 +565,7 @@ server cluster PowerSource = 47 { server cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -662,10 +662,10 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -720,7 +720,7 @@ server cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute bitmap32 featureMap = 65532; @@ -776,7 +776,7 @@ server cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3; diff --git a/src/app/zap-templates/partials/idl/structure_member.zapt b/src/app/zap-templates/partials/idl/structure_member.zapt index d64eeefbc98d53..142c0ad8abadff 100644 --- a/src/app/zap-templates/partials/idl/structure_member.zapt +++ b/src/app/zap-templates/partials/idl/structure_member.zapt @@ -1,7 +1,14 @@ {{~#if isOptional~}} optional {{/if~}} {{~#if isNullable~}} nullable {{/if~}} -{{type}} {{asLowerCamelCase label~}} +{{type}} + {{~#unless isArray~}} + {{~#if (isString type)~}} + {{~#if maxLength~}} + <{{maxLength}}> + {{~/if~}} + {{~/if}} + {{~/unless}} {{asLowerCamelCase label~}} {{~#if isArray~}} [] diff --git a/src/app/zap-templates/templates/app/MatterIDL.zapt b/src/app/zap-templates/templates/app/MatterIDL.zapt index efa88f812e1126..e59f9f15e4d630 100644 --- a/src/app/zap-templates/templates/app/MatterIDL.zapt +++ b/src/app/zap-templates/templates/app/MatterIDL.zapt @@ -41,10 +41,15 @@ {{~#unless isReportableAttribute~}} nosubscribe {{!marker to place a space even with whitespace removal~}} {{~/unless~}} - {{~!Removes spaces~}} attribute {{type}} {{asLowerCamelCase name~}} - {{~#if isList~}} - [] - {{~/if}} = {{code}}; + {{~!Removes spaces~}} attribute {{type}} + {{~#unless isArray~}} + {{~#if (isString type)~}} + {{~#if maxLength~}} + <{{maxLength}}> + {{~/if~}} + {{~/if~}} + {{/unless}} {{asLowerCamelCase name~}} + {{~#if isList~}} [] {{~/if}} = {{code}}; {{/chip_server_cluster_attributes}} {{#chip_cluster_commands}} {{#if arguments}} diff --git a/src/controller/data_model/controller-clusters.matter b/src/controller/data_model/controller-clusters.matter index dca196240a3623..e479750003ce92 100644 --- a/src/controller/data_model/controller-clusters.matter +++ b/src/controller/data_model/controller-clusters.matter @@ -2,8 +2,8 @@ // It is for view/code review purposes only. struct LabelStruct { - CHAR_STRING label = 0; - CHAR_STRING value = 1; + CHAR_STRING<16> label = 0; + CHAR_STRING<16> value = 1; } client cluster AccessControl = 31 { @@ -43,7 +43,7 @@ client cluster AccessControl = 31 { struct ExtensionEntry { fabric_idx fabricIndex = 0; - OCTET_STRING data = 1; + OCTET_STRING<254> data = 1; } info event AccessControlEntryChanged = 0 { @@ -140,13 +140,13 @@ client cluster ApplicationBasic = 1293 { CHAR_STRING applicationId = 1; } - readonly attribute char_string vendorName = 0; + readonly attribute char_string<32> vendorName = 0; readonly attribute int16u vendorId = 1; - readonly attribute char_string applicationName = 2; + readonly attribute char_string<32> applicationName = 2; readonly attribute int16u productId = 3; attribute ApplicationBasicApplication applicationApp = 4; readonly attribute ApplicationStatusEnum applicationStatus = 5; - readonly attribute char_string applicationVersion = 6; + readonly attribute char_string<32> applicationVersion = 6; readonly attribute vendor_id allowedVendorList[] = 7; readonly global attribute attrib_id attributeList[] = 65531; readonly global attribute int16u clusterRevision = 65533; @@ -204,7 +204,7 @@ client cluster AudioOutput = 1291 { struct OutputInfo { INT8U index = 0; OutputTypeEnum outputType = 1; - CHAR_STRING name = 2; + CHAR_STRING<32> name = 2; } readonly attribute OutputInfo audioOutputList[] = 0; @@ -257,24 +257,24 @@ client cluster Basic = 40 { } readonly attribute int16u interactionModelVersion = 0; - readonly attribute char_string vendorName = 1; + readonly attribute char_string<32> vendorName = 1; readonly attribute vendor_id vendorID = 2; - readonly attribute char_string productName = 3; + readonly attribute char_string<32> productName = 3; readonly attribute int16u productID = 4; - attribute char_string nodeLabel = 5; - attribute char_string location = 6; + attribute char_string<32> nodeLabel = 5; + attribute char_string<2> location = 6; readonly attribute int16u hardwareVersion = 7; - readonly attribute char_string hardwareVersionString = 8; + readonly attribute char_string<64> hardwareVersionString = 8; readonly attribute int32u softwareVersion = 9; - readonly attribute char_string softwareVersionString = 10; - readonly attribute char_string manufacturingDate = 11; - readonly attribute char_string partNumber = 12; - readonly attribute long_char_string productURL = 13; - readonly attribute char_string productLabel = 14; - readonly attribute char_string serialNumber = 15; + readonly attribute char_string<64> softwareVersionString = 10; + readonly attribute char_string<16> manufacturingDate = 11; + readonly attribute char_string<32> partNumber = 12; + readonly attribute long_char_string<256> productURL = 13; + readonly attribute char_string<64> productLabel = 14; + readonly attribute char_string<32> serialNumber = 15; attribute boolean localConfigDisabled = 16; readonly attribute boolean reachable = 17; - readonly attribute char_string uniqueID = 18; + readonly attribute char_string<32> uniqueID = 18; readonly global attribute attrib_id attributeList[] = 65531; readonly global attribute int16u clusterRevision = 65533; @@ -352,7 +352,7 @@ client cluster BridgedActions = 37 { struct ActionStruct { INT16U actionID = 0; - CHAR_STRING name = 1; + CHAR_STRING<32> name = 1; ActionTypeEnum type = 2; INT16U endpointListID = 3; INT16U supportedCommands = 4; @@ -361,7 +361,7 @@ client cluster BridgedActions = 37 { struct EndpointListStruct { INT16U endpointListID = 0; - CHAR_STRING name = 1; + CHAR_STRING<32> name = 1; EndpointListTypeEnum type = 2; ENDPOINT_NO endpoints[] = 3; } @@ -381,7 +381,7 @@ client cluster BridgedActions = 37 { readonly attribute ActionStruct actionList[] = 0; readonly attribute EndpointListStruct endpointList[] = 1; - readonly attribute long_char_string setupUrl = 2; + readonly attribute long_char_string<512> setupUrl = 2; readonly global attribute attrib_id attributeList[] = 65531; readonly global attribute int16u clusterRevision = 65533; @@ -482,9 +482,9 @@ client cluster Channel = 1284 { struct ChannelInfo { INT16U majorNumber = 0; INT16U minorNumber = 1; - CHAR_STRING name = 2; - CHAR_STRING callSign = 3; - CHAR_STRING affiliateCallSign = 4; + CHAR_STRING<32> name = 2; + CHAR_STRING<32> callSign = 3; + CHAR_STRING<32> affiliateCallSign = 4; } readonly attribute ChannelInfo channelList[] = 0; @@ -567,7 +567,7 @@ client cluster ColorControl = 768 { readonly attribute int16u currentX = 3; readonly attribute int16u currentY = 4; readonly attribute enum8 driftCompensation = 5; - readonly attribute char_string compensationText = 6; + readonly attribute char_string<254> compensationText = 6; readonly attribute int16u colorTemperature = 7; readonly attribute enum8 colorMode = 8; attribute bitmap8 colorControlOptions = 15; @@ -1171,7 +1171,7 @@ client cluster DoorLock = 257 { readonly attribute int16u numberOfPINUsersSupported = 18; readonly attribute int8u maxPINCodeLength = 23; readonly attribute int8u minPINCodeLength = 24; - attribute char_string language = 33; + attribute char_string<3> language = 33; attribute int32u autoRelockTime = 35; attribute int8u soundVolume = 36; attribute DlOperatingMode operatingMode = 37; @@ -1429,11 +1429,11 @@ client cluster GeneralDiagnostics = 51 { } struct NetworkInterfaceType { - CHAR_STRING name = 0; + CHAR_STRING<32> name = 0; BOOLEAN fabricConnected = 1; BOOLEAN offPremiseServicesReachableIPv4 = 2; BOOLEAN offPremiseServicesReachableIPv6 = 3; - OCTET_STRING hardwareAddress = 4; + OCTET_STRING<8> hardwareAddress = 4; InterfaceType type = 5; } @@ -1484,17 +1484,17 @@ client cluster GroupKeyManagement = 63 { INT16U fabricIndex = 0; INT16U groupId = 1; INT16U endpoints[] = 2; - CHAR_STRING groupName = 3; + CHAR_STRING<16> groupName = 3; } struct GroupKeySet { INT16U groupKeySetID = 0; GroupKeySecurityPolicy securityPolicy = 1; - OCTET_STRING epochKey0 = 2; + OCTET_STRING<16> epochKey0 = 2; INT64U epochStartTime0 = 3; - OCTET_STRING epochKey1 = 4; + OCTET_STRING<16> epochKey1 = 4; INT64U epochStartTime1 = 5; - OCTET_STRING epochKey2 = 6; + OCTET_STRING<16> epochKey2 = 6; INT64U epochStartTime2 = 7; } @@ -1845,7 +1845,7 @@ client cluster LevelControl = 8 { } client cluster LocalizationConfiguration = 43 { - attribute char_string activeLocale = 1; + attribute char_string<35> activeLocale = 1; readonly attribute CHAR_STRING supportedLocales[] = 2; } @@ -1875,8 +1875,8 @@ client cluster MediaInput = 1287 { struct InputInfo { INT8U index = 0; InputTypeEnum inputType = 1; - CHAR_STRING name = 2; - CHAR_STRING description = 3; + CHAR_STRING<32> name = 2; + CHAR_STRING<32> description = 3; } readonly attribute InputInfo mediaInputList[] = 0; @@ -1956,7 +1956,7 @@ client cluster MediaPlayback = 1286 { client cluster ModeSelect = 80 { struct ModeOptionStruct { - CHAR_STRING label = 0; + CHAR_STRING<32> label = 0; INT8U mode = 1; INT32U semanticTag = 2; } @@ -1965,7 +1965,7 @@ client cluster ModeSelect = 80 { readonly attribute ModeOptionStruct supportedModes[] = 1; attribute int8u onMode = 2; readonly attribute int8u startUpMode = 3; - readonly attribute char_string description = 4; + readonly attribute char_string<32> description = 4; readonly global attribute attrib_id attributeList[] = 65531; readonly global attribute int16u clusterRevision = 65533; @@ -2032,7 +2032,7 @@ client cluster NetworkCommissioning = 49 { readonly attribute int8u connectMaxTimeSeconds = 3; attribute boolean interfaceEnabled = 4; readonly attribute NetworkCommissioningStatus lastNetworkingStatus = 5; - readonly attribute octet_string lastNetworkID = 6; + readonly attribute octet_string<32> lastNetworkID = 6; readonly attribute int32u lastConnectErrorValue = 7; readonly global attribute bitmap32 featureMap = 65532; readonly global attribute int16u clusterRevision = 65533; @@ -2312,11 +2312,11 @@ client cluster OperationalCredentials = 62 { struct FabricDescriptor { fabric_idx fabricIndex = 0; - OCTET_STRING rootPublicKey = 1; + OCTET_STRING<65> rootPublicKey = 1; INT16U vendorId = 2; FABRIC_ID fabricId = 3; NODE_ID nodeId = 4; - CHAR_STRING label = 5; + CHAR_STRING<32> label = 5; } readonly nosubscribe attribute NOCStruct NOCs[] = 0; @@ -2403,7 +2403,7 @@ client cluster OperationalCredentials = 62 { client cluster PowerSource = 47 { readonly attribute enum8 status = 0; readonly attribute int8u order = 1; - readonly attribute char_string description = 2; + readonly attribute char_string<60> description = 2; readonly attribute int32u batteryVoltage = 11; readonly attribute int8u batteryPercentRemaining = 12; readonly attribute int32u batteryTimeRemaining = 13; @@ -2639,7 +2639,7 @@ client cluster Scenes = 5 { client cluster SoftwareDiagnostics = 52 { struct ThreadMetrics { INT64U id = 0; - CHAR_STRING name = 1; + CHAR_STRING<8> name = 1; INT32U stackFreeCurrent = 2; INT32U stackFreeMinimum = 3; INT32U stackSize = 4; @@ -2708,7 +2708,7 @@ client cluster TargetNavigator = 1285 { struct TargetInfo { INT8U identifier = 0; - CHAR_STRING name = 1; + CHAR_STRING<32> name = 1; } readonly attribute TargetInfo targetNavigatorList[] = 0; @@ -2748,7 +2748,7 @@ client cluster TestCluster = 1295 { struct TestListStructOctet { INT64U fabricIndex = 0; - OCTET_STRING operationalCert = 1; + OCTET_STRING<32> operationalCert = 1; } struct NullablesAndOptionalsStruct { @@ -2827,13 +2827,13 @@ client cluster TestCluster = 1295 { attribute enum16 enum16 = 22; attribute single floatSingle = 23; attribute double floatDouble = 24; - attribute octet_string octetString = 25; + attribute octet_string<10> octetString = 25; attribute INT8U listInt8u[] = 26; attribute OCTET_STRING listOctetString[] = 27; attribute TestListStructOctet listStructOctetString[] = 28; - attribute long_octet_string longOctetString = 29; - attribute char_string charString = 30; - attribute long_char_string longCharString = 31; + attribute long_octet_string<1000> longOctetString = 29; + attribute char_string<10> charString = 30; + attribute long_char_string<1000> longCharString = 31; attribute epoch_us epochUs = 32; attribute epoch_s epochS = 33; attribute vendor_id vendorId = 34; @@ -2872,8 +2872,8 @@ client cluster TestCluster = 1295 { attribute enum16 nullableEnum16 = 32790; attribute single nullableFloatSingle = 32791; attribute double nullableFloatDouble = 32792; - attribute octet_string nullableOctetString = 32793; - attribute char_string nullableCharString = 32798; + attribute octet_string<10> nullableOctetString = 32793; + attribute char_string<10> nullableCharString = 32798; attribute SimpleEnum nullableEnumAttr = 32804; attribute SimpleStruct nullableStruct = 32805; attribute int8u nullableRangeRestrictedInt8u = 32806; @@ -3150,10 +3150,10 @@ client cluster ThreadNetworkDiagnostics = 53 { readonly attribute int16u channel = 0; readonly attribute enum8 routingRole = 1; - readonly attribute octet_string networkName = 2; + readonly attribute octet_string<16> networkName = 2; readonly attribute int16u panId = 3; readonly attribute int64u extendedPanId = 4; - readonly attribute octet_string meshLocalPrefix = 5; + readonly attribute octet_string<17> meshLocalPrefix = 5; readonly attribute int64u overrunCount = 6; readonly attribute NeighborTable neighborTableList[] = 7; readonly attribute RouteTable routeTableList[] = 8; @@ -3208,7 +3208,7 @@ client cluster ThreadNetworkDiagnostics = 53 { readonly attribute int64u pendingTimestamp = 57; readonly attribute int32u delay = 58; readonly attribute SecurityPolicy securityPolicy[] = 59; - readonly attribute octet_string channelMask = 60; + readonly attribute octet_string<4> channelMask = 60; readonly attribute OperationalDatasetComponents operationalDatasetComponents[] = 61; readonly attribute NetworkFault activeNetworkFaultsList[] = 62; readonly global attribute attrib_id attributeList[] = 65531; @@ -3224,7 +3224,7 @@ client cluster UserLabel = 65 { } client cluster WakeOnLan = 1283 { - readonly attribute char_string wakeOnLanMacAddress = 0; + readonly attribute char_string<32> wakeOnLanMacAddress = 0; readonly global attribute attrib_id attributeList[] = 65531; readonly global attribute int16u clusterRevision = 65533; } @@ -3273,7 +3273,7 @@ client cluster WiFiNetworkDiagnostics = 54 { WiFiConnectionStatus connectionStatus = 0; } - readonly attribute octet_string bssid = 0; + readonly attribute octet_string<6> bssid = 0; readonly attribute enum8 securityType = 1; readonly attribute enum8 wiFiVersion = 2; readonly attribute int16u channelNumber = 3;