diff --git a/examples/air-purifier-app/air-purifier-common/air-purifier-app.matter b/examples/air-purifier-app/air-purifier-common/air-purifier-app.matter
index 95cd8bc2d0799e..437db41e77beb0 100644
--- a/examples/air-purifier-app/air-purifier-common/air-purifier-app.matter
+++ b/examples/air-purifier-app/air-purifier-common/air-purifier-app.matter
@@ -739,7 +739,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/air-quality-sensor-app/air-quality-sensor-common/air-quality-sensor-app.matter b/examples/air-quality-sensor-app/air-quality-sensor-common/air-quality-sensor-app.matter
index b9da1aef2413f9..ffb4aa079f5d45 100644
--- a/examples/air-quality-sensor-app/air-quality-sensor-common/air-quality-sensor-app.matter
+++ b/examples/air-quality-sensor-app/air-quality-sensor-common/air-quality-sensor-app.matter
@@ -739,7 +739,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
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 45e58fffca24ea..a670a7ea7efc00 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
@@ -1642,7 +1642,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.matter b/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.matter
index 630f3a6d2e98df..bc10a484619a72 100644
--- a/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.matter
+++ b/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.matter
@@ -1557,7 +1557,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/bridge-app/bridge-common/bridge-app.matter b/examples/bridge-app/bridge-common/bridge-app.matter
index 8274cbb34f2f39..f367f8f86748b5 100644
--- a/examples/bridge-app/bridge-common/bridge-app.matter
+++ b/examples/bridge-app/bridge-common/bridge-app.matter
@@ -1192,7 +1192,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter b/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter
index 283e591a563d8f..3a737fdf630efd 100644
--- a/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter
+++ b/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter
@@ -1034,7 +1034,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_airpurifier_73a6fe2651.matter b/examples/chef/devices/rootnode_airpurifier_73a6fe2651.matter
index 6dc1faa51f4c03..4a2fbb9dd7069f 100644
--- a/examples/chef/devices/rootnode_airpurifier_73a6fe2651.matter
+++ b/examples/chef/devices/rootnode_airpurifier_73a6fe2651.matter
@@ -811,7 +811,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_airpurifier_airqualitysensor_temperaturesensor_humiditysensor_thermostat_56de3d5f45.matter b/examples/chef/devices/rootnode_airpurifier_airqualitysensor_temperaturesensor_humiditysensor_thermostat_56de3d5f45.matter
index 8271fefe262f09..d3f5432787e9be 100644
--- a/examples/chef/devices/rootnode_airpurifier_airqualitysensor_temperaturesensor_humiditysensor_thermostat_56de3d5f45.matter
+++ b/examples/chef/devices/rootnode_airpurifier_airqualitysensor_temperaturesensor_humiditysensor_thermostat_56de3d5f45.matter
@@ -662,7 +662,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_airqualitysensor_e63187f6c9.matter b/examples/chef/devices/rootnode_airqualitysensor_e63187f6c9.matter
index cfdae69816e667..78f2a51a1db78b 100644
--- a/examples/chef/devices/rootnode_airqualitysensor_e63187f6c9.matter
+++ b/examples/chef/devices/rootnode_airqualitysensor_e63187f6c9.matter
@@ -998,7 +998,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_basicvideoplayer_0ff86e943b.matter b/examples/chef/devices/rootnode_basicvideoplayer_0ff86e943b.matter
index 0bf91385a5e179..caaab3bb9220cc 100644
--- a/examples/chef/devices/rootnode_basicvideoplayer_0ff86e943b.matter
+++ b/examples/chef/devices/rootnode_basicvideoplayer_0ff86e943b.matter
@@ -936,7 +936,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.matter b/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.matter
index 63b7de859704ae..a3a1572943348c 100644
--- a/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.matter
+++ b/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.matter
@@ -1013,7 +1013,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_contactsensor_27f76aeaf5.matter b/examples/chef/devices/rootnode_contactsensor_27f76aeaf5.matter
index 77375d8443e990..5c28b9b113f70c 100644
--- a/examples/chef/devices/rootnode_contactsensor_27f76aeaf5.matter
+++ b/examples/chef/devices/rootnode_contactsensor_27f76aeaf5.matter
@@ -998,7 +998,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter b/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter
index 5265088575f8ca..185dcbaf9a3cfc 100644
--- a/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter
+++ b/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter
@@ -1096,7 +1096,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter b/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter
index 183eb0c5938f3b..bfdf3bb34f8ef3 100644
--- a/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter
+++ b/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter
@@ -1034,7 +1034,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_dimmablepluginunit_f8a9a0b9d4.matter b/examples/chef/devices/rootnode_dimmablepluginunit_f8a9a0b9d4.matter
index f48076c4d2a808..bb44057744ec45 100644
--- a/examples/chef/devices/rootnode_dimmablepluginunit_f8a9a0b9d4.matter
+++ b/examples/chef/devices/rootnode_dimmablepluginunit_f8a9a0b9d4.matter
@@ -1034,7 +1034,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_dishwasher_cc105034fe.matter b/examples/chef/devices/rootnode_dishwasher_cc105034fe.matter
index 8f49c108e20fab..4d325d4083d4f4 100644
--- a/examples/chef/devices/rootnode_dishwasher_cc105034fe.matter
+++ b/examples/chef/devices/rootnode_dishwasher_cc105034fe.matter
@@ -700,7 +700,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter b/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter
index c461e7324caf6d..da08e4b9cfbadd 100644
--- a/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter
+++ b/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter
@@ -998,7 +998,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter b/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter
index d9f033b0e0009b..921fad09c815f1 100644
--- a/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter
+++ b/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter
@@ -1034,7 +1034,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_fan_7N2TobIlOX.matter b/examples/chef/devices/rootnode_fan_7N2TobIlOX.matter
index d772e29c3c26fb..517f0dc76575df 100644
--- a/examples/chef/devices/rootnode_fan_7N2TobIlOX.matter
+++ b/examples/chef/devices/rootnode_fan_7N2TobIlOX.matter
@@ -816,7 +816,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter b/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter
index 466dbe2c419115..99f8d4a3ff8378 100644
--- a/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter
+++ b/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter
@@ -837,7 +837,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_genericswitch_2dfff6e516.matter b/examples/chef/devices/rootnode_genericswitch_2dfff6e516.matter
index ba63c3ee079d8e..e467d70d2df1bc 100644
--- a/examples/chef/devices/rootnode_genericswitch_2dfff6e516.matter
+++ b/examples/chef/devices/rootnode_genericswitch_2dfff6e516.matter
@@ -844,7 +844,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_genericswitch_9866e35d0b.matter b/examples/chef/devices/rootnode_genericswitch_9866e35d0b.matter
index 60699fd679f7ba..fef12ddce9b68c 100644
--- a/examples/chef/devices/rootnode_genericswitch_9866e35d0b.matter
+++ b/examples/chef/devices/rootnode_genericswitch_9866e35d0b.matter
@@ -844,7 +844,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter b/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter
index 36a655d47df5b6..9933c2b6d0234e 100644
--- a/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter
+++ b/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter
@@ -1034,7 +1034,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter b/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter
index e633b0f2bebc4c..d6fbd4c405d5f7 100644
--- a/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter
+++ b/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter
@@ -837,7 +837,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_laundrydryer_01796fe396.matter b/examples/chef/devices/rootnode_laundrydryer_01796fe396.matter
index b917fa102e6228..da5571b031720f 100644
--- a/examples/chef/devices/rootnode_laundrydryer_01796fe396.matter
+++ b/examples/chef/devices/rootnode_laundrydryer_01796fe396.matter
@@ -700,7 +700,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_laundrywasher_fb10d238c8.matter b/examples/chef/devices/rootnode_laundrywasher_fb10d238c8.matter
index e595c866c2a47b..c0e10bd354e536 100644
--- a/examples/chef/devices/rootnode_laundrywasher_fb10d238c8.matter
+++ b/examples/chef/devices/rootnode_laundrywasher_fb10d238c8.matter
@@ -561,7 +561,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter b/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter
index 32528515cf121b..c76894d3dc257a 100644
--- a/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter
+++ b/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter
@@ -837,7 +837,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter b/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter
index 04cf5fb646d7bb..b975844819f0c3 100644
--- a/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter
+++ b/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter
@@ -837,7 +837,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter b/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter
index f63c51eb699eb8..0aef6fe5398ddc 100644
--- a/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter
+++ b/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter
@@ -1034,7 +1034,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_onofflight_samplemei.matter b/examples/chef/devices/rootnode_onofflight_samplemei.matter
index 5f8e70cc64ab97..6a61111e491628 100644
--- a/examples/chef/devices/rootnode_onofflight_samplemei.matter
+++ b/examples/chef/devices/rootnode_onofflight_samplemei.matter
@@ -1034,7 +1034,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter b/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter
index 81fb81958f8f5d..ff823b351c61f4 100644
--- a/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter
+++ b/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter
@@ -909,7 +909,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter b/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter
index 94414ae3165662..2240b215eaea2d 100644
--- a/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter
+++ b/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter
@@ -909,7 +909,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter b/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter
index 43e8de7b5f4ee1..bf70abe76676b7 100644
--- a/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter
+++ b/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter
@@ -837,7 +837,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_pump_5f904818cc.matter b/examples/chef/devices/rootnode_pump_5f904818cc.matter
index 8ea352ca7c785f..66896434f4805d 100644
--- a/examples/chef/devices/rootnode_pump_5f904818cc.matter
+++ b/examples/chef/devices/rootnode_pump_5f904818cc.matter
@@ -683,7 +683,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_pump_a811bb33a0.matter b/examples/chef/devices/rootnode_pump_a811bb33a0.matter
index 5b2371526d9a59..28345ed3140df0 100644
--- a/examples/chef/devices/rootnode_pump_a811bb33a0.matter
+++ b/examples/chef/devices/rootnode_pump_a811bb33a0.matter
@@ -683,7 +683,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_refrigerator_temperaturecontrolledcabinet_temperaturecontrolledcabinet_ffdb696680.matter b/examples/chef/devices/rootnode_refrigerator_temperaturecontrolledcabinet_temperaturecontrolledcabinet_ffdb696680.matter
index 80faecb735c5ff..8a5bc3aab853b8 100644
--- a/examples/chef/devices/rootnode_refrigerator_temperaturecontrolledcabinet_temperaturecontrolledcabinet_ffdb696680.matter
+++ b/examples/chef/devices/rootnode_refrigerator_temperaturecontrolledcabinet_temperaturecontrolledcabinet_ffdb696680.matter
@@ -561,7 +561,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_roboticvacuumcleaner_1807ff0c49.matter b/examples/chef/devices/rootnode_roboticvacuumcleaner_1807ff0c49.matter
index b4094e13d84761..bc6c3faaf78fce 100644
--- a/examples/chef/devices/rootnode_roboticvacuumcleaner_1807ff0c49.matter
+++ b/examples/chef/devices/rootnode_roboticvacuumcleaner_1807ff0c49.matter
@@ -921,7 +921,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_roomairconditioner_9cf3607804.matter b/examples/chef/devices/rootnode_roomairconditioner_9cf3607804.matter
index 3ebdc0a23132a1..f62c2e3972fb3b 100644
--- a/examples/chef/devices/rootnode_roomairconditioner_9cf3607804.matter
+++ b/examples/chef/devices/rootnode_roomairconditioner_9cf3607804.matter
@@ -734,7 +734,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_smokecoalarm_686fe0dcb8.matter b/examples/chef/devices/rootnode_smokecoalarm_686fe0dcb8.matter
index 1f6e1c17b7828e..6a0ec4327b4452 100644
--- a/examples/chef/devices/rootnode_smokecoalarm_686fe0dcb8.matter
+++ b/examples/chef/devices/rootnode_smokecoalarm_686fe0dcb8.matter
@@ -921,7 +921,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter b/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter
index c5a1ccc522a4c3..e25295ed33a63a 100644
--- a/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter
+++ b/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter
@@ -957,7 +957,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter b/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter
index 6199388887e069..90b919cfd3b9d0 100644
--- a/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter
+++ b/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter
@@ -837,7 +837,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter b/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter
index 79930324883042..c4ee4f6074b1e6 100644
--- a/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter
+++ b/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter
@@ -898,7 +898,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_waterleakdetector_0b067acfa3.matter b/examples/chef/devices/rootnode_waterleakdetector_0b067acfa3.matter
index bd89a853121fcb..7ce5c31c3ee249 100644
--- a/examples/chef/devices/rootnode_waterleakdetector_0b067acfa3.matter
+++ b/examples/chef/devices/rootnode_waterleakdetector_0b067acfa3.matter
@@ -921,7 +921,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_watervalve_6bb39f1f67.matter b/examples/chef/devices/rootnode_watervalve_6bb39f1f67.matter
index cf3009d2913f9a..16e80e9fab2813 100644
--- a/examples/chef/devices/rootnode_watervalve_6bb39f1f67.matter
+++ b/examples/chef/devices/rootnode_watervalve_6bb39f1f67.matter
@@ -861,7 +861,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter b/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter
index 0f1d25c571179f..9100885a991d17 100644
--- a/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter
+++ b/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter
@@ -837,7 +837,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/contact-sensor-app/contact-sensor-common/contact-sensor-app.matter b/examples/contact-sensor-app/contact-sensor-common/contact-sensor-app.matter
index 55820ca5377f4f..841aa6a70fe11c 100644
--- a/examples/contact-sensor-app/contact-sensor-common/contact-sensor-app.matter
+++ b/examples/contact-sensor-app/contact-sensor-common/contact-sensor-app.matter
@@ -816,7 +816,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/contact-sensor-app/nxp/zap-lit/contact-sensor-app.matter b/examples/contact-sensor-app/nxp/zap-lit/contact-sensor-app.matter
index a5e91d91f11783..bdcb3dc9edceb5 100644
--- a/examples/contact-sensor-app/nxp/zap-lit/contact-sensor-app.matter
+++ b/examples/contact-sensor-app/nxp/zap-lit/contact-sensor-app.matter
@@ -739,7 +739,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/contact-sensor-app/nxp/zap-sit/contact-sensor-app.matter b/examples/contact-sensor-app/nxp/zap-sit/contact-sensor-app.matter
index 36db43dcb6487c..756c29788a8335 100644
--- a/examples/contact-sensor-app/nxp/zap-sit/contact-sensor-app.matter
+++ b/examples/contact-sensor-app/nxp/zap-sit/contact-sensor-app.matter
@@ -739,7 +739,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/dishwasher-app/dishwasher-common/dishwasher-app.matter b/examples/dishwasher-app/dishwasher-common/dishwasher-app.matter
index 6ee107a38f063e..6c1f2bbc46271a 100644
--- a/examples/dishwasher-app/dishwasher-common/dishwasher-app.matter
+++ b/examples/dishwasher-app/dishwasher-common/dishwasher-app.matter
@@ -709,7 +709,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/energy-management-app/energy-management-common/energy-management-app.matter b/examples/energy-management-app/energy-management-common/energy-management-app.matter
index a8a10075efec17..831f3fd2809e4c 100644
--- a/examples/energy-management-app/energy-management-common/energy-management-app.matter
+++ b/examples/energy-management-app/energy-management-common/energy-management-app.matter
@@ -931,7 +931,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/fabric-bridge-app/fabric-bridge-common/fabric-bridge-app.matter b/examples/fabric-bridge-app/fabric-bridge-common/fabric-bridge-app.matter
index b261eba0bb3a4d..8c1bf617be2daf 100644
--- a/examples/fabric-bridge-app/fabric-bridge-common/fabric-bridge-app.matter
+++ b/examples/fabric-bridge-app/fabric-bridge-common/fabric-bridge-app.matter
@@ -710,7 +710,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/laundry-washer-app/nxp/zap/laundry-washer-app.matter b/examples/laundry-washer-app/nxp/zap/laundry-washer-app.matter
index 39546259b0bd19..4a0addb903e31a 100644
--- a/examples/laundry-washer-app/nxp/zap/laundry-washer-app.matter
+++ b/examples/laundry-washer-app/nxp/zap/laundry-washer-app.matter
@@ -1194,7 +1194,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/light-switch-app/light-switch-common/light-switch-app.matter b/examples/light-switch-app/light-switch-common/light-switch-app.matter
index 07910e283f3a0a..948f5d0edf3d58 100644
--- a/examples/light-switch-app/light-switch-common/light-switch-app.matter
+++ b/examples/light-switch-app/light-switch-common/light-switch-app.matter
@@ -959,7 +959,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/light-switch-app/qpg/zap/switch.matter b/examples/light-switch-app/qpg/zap/switch.matter
index 979ae18fa4234a..473ce9beeaea96 100644
--- a/examples/light-switch-app/qpg/zap/switch.matter
+++ b/examples/light-switch-app/qpg/zap/switch.matter
@@ -1343,7 +1343,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lighting-app-data-mode-no-unique-id/lighting-common/lighting-app.matter b/examples/lighting-app-data-mode-no-unique-id/lighting-common/lighting-app.matter
index 0979b305ca9e70..7c6bbdfc1662aa 100644
--- a/examples/lighting-app-data-mode-no-unique-id/lighting-common/lighting-app.matter
+++ b/examples/lighting-app-data-mode-no-unique-id/lighting-common/lighting-app.matter
@@ -1013,7 +1013,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lighting-app/bouffalolab/data_model/lighting-app-ethernet.matter b/examples/lighting-app/bouffalolab/data_model/lighting-app-ethernet.matter
index 8c4fa34560a7c6..482faaf2d595d2 100644
--- a/examples/lighting-app/bouffalolab/data_model/lighting-app-ethernet.matter
+++ b/examples/lighting-app/bouffalolab/data_model/lighting-app-ethernet.matter
@@ -1013,7 +1013,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lighting-app/bouffalolab/data_model/lighting-app-thread.matter b/examples/lighting-app/bouffalolab/data_model/lighting-app-thread.matter
index d528254100181b..89875eeb3617c0 100644
--- a/examples/lighting-app/bouffalolab/data_model/lighting-app-thread.matter
+++ b/examples/lighting-app/bouffalolab/data_model/lighting-app-thread.matter
@@ -1013,7 +1013,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lighting-app/bouffalolab/data_model/lighting-app-wifi.matter b/examples/lighting-app/bouffalolab/data_model/lighting-app-wifi.matter
index 6d26e8c2f8e4f3..293756c3921aa3 100644
--- a/examples/lighting-app/bouffalolab/data_model/lighting-app-wifi.matter
+++ b/examples/lighting-app/bouffalolab/data_model/lighting-app-wifi.matter
@@ -1013,7 +1013,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lighting-app/lighting-common/lighting-app.matter b/examples/lighting-app/lighting-common/lighting-app.matter
index f8e6d2e795b4d4..dfaaf8a309c489 100644
--- a/examples/lighting-app/lighting-common/lighting-app.matter
+++ b/examples/lighting-app/lighting-common/lighting-app.matter
@@ -1013,7 +1013,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lighting-app/nxp/zap/lighting-on-off.matter b/examples/lighting-app/nxp/zap/lighting-on-off.matter
index d76ebd5cd8a50d..b8a2fe4722be6b 100644
--- a/examples/lighting-app/nxp/zap/lighting-on-off.matter
+++ b/examples/lighting-app/nxp/zap/lighting-on-off.matter
@@ -1013,7 +1013,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lighting-app/qpg/zap/light.matter b/examples/lighting-app/qpg/zap/light.matter
index fc3de298b9d073..697da6e376b322 100644
--- a/examples/lighting-app/qpg/zap/light.matter
+++ b/examples/lighting-app/qpg/zap/light.matter
@@ -1013,7 +1013,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lighting-app/silabs/data_model/lighting-thread-app.matter b/examples/lighting-app/silabs/data_model/lighting-thread-app.matter
index ac3896a6d9cf03..fa79612c5cae68 100644
--- a/examples/lighting-app/silabs/data_model/lighting-thread-app.matter
+++ b/examples/lighting-app/silabs/data_model/lighting-thread-app.matter
@@ -1013,7 +1013,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lighting-app/silabs/data_model/lighting-wifi-app.matter b/examples/lighting-app/silabs/data_model/lighting-wifi-app.matter
index 61be1cd04594e9..d9fda25b01e05f 100644
--- a/examples/lighting-app/silabs/data_model/lighting-wifi-app.matter
+++ b/examples/lighting-app/silabs/data_model/lighting-wifi-app.matter
@@ -1272,7 +1272,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lit-icd-app/lit-icd-common/lit-icd-server-app.matter b/examples/lit-icd-app/lit-icd-common/lit-icd-server-app.matter
index e67ae7524be12e..23a9bc77b47cd7 100644
--- a/examples/lit-icd-app/lit-icd-common/lit-icd-server-app.matter
+++ b/examples/lit-icd-app/lit-icd-common/lit-icd-server-app.matter
@@ -765,7 +765,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lock-app/lock-common/lock-app.matter b/examples/lock-app/lock-common/lock-app.matter
index 94c2fcf3bb04fb..5b8341d75ae66f 100644
--- a/examples/lock-app/lock-common/lock-app.matter
+++ b/examples/lock-app/lock-common/lock-app.matter
@@ -1024,7 +1024,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lock-app/nxp/zap/lock-app.matter b/examples/lock-app/nxp/zap/lock-app.matter
index fc3a8917b2a3a0..fffd69e43bd603 100644
--- a/examples/lock-app/nxp/zap/lock-app.matter
+++ b/examples/lock-app/nxp/zap/lock-app.matter
@@ -756,7 +756,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lock-app/qpg/zap/lock.matter b/examples/lock-app/qpg/zap/lock.matter
index 53bf1d4f8d8499..e5c0b590ec6a70 100644
--- a/examples/lock-app/qpg/zap/lock.matter
+++ b/examples/lock-app/qpg/zap/lock.matter
@@ -816,7 +816,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/lock-app/silabs/data_model/lock-app.matter b/examples/lock-app/silabs/data_model/lock-app.matter
index bf8c297e1c272f..0ac829f83c804a 100644
--- a/examples/lock-app/silabs/data_model/lock-app.matter
+++ b/examples/lock-app/silabs/data_model/lock-app.matter
@@ -1024,7 +1024,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
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 e5f6ee100785f0..4fb8d8d3773999 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
@@ -405,7 +405,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/microwave-oven-app/microwave-oven-common/microwave-oven-app.matter b/examples/microwave-oven-app/microwave-oven-common/microwave-oven-app.matter
index f22729df8880f1..c8758b039162ee 100644
--- a/examples/microwave-oven-app/microwave-oven-common/microwave-oven-app.matter
+++ b/examples/microwave-oven-app/microwave-oven-common/microwave-oven-app.matter
@@ -629,7 +629,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/network-manager-app/network-manager-common/network-manager-app.matter b/examples/network-manager-app/network-manager-common/network-manager-app.matter
index 5d53e157329f58..1d7e8c0b9f0d58 100644
--- a/examples/network-manager-app/network-manager-common/network-manager-app.matter
+++ b/examples/network-manager-app/network-manager-common/network-manager-app.matter
@@ -535,7 +535,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
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 7538f304f356d4..8409202f0a51f2 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
@@ -736,7 +736,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
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 b7514cf573c870..63e36714909af2 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
@@ -888,7 +888,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/placeholder/linux/apps/app1/config.matter b/examples/placeholder/linux/apps/app1/config.matter
index 30f9ca883b0a9a..2d69fa14a79485 100644
--- a/examples/placeholder/linux/apps/app1/config.matter
+++ b/examples/placeholder/linux/apps/app1/config.matter
@@ -1672,7 +1672,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
@@ -1764,7 +1764,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/placeholder/linux/apps/app2/config.matter b/examples/placeholder/linux/apps/app2/config.matter
index d8ced986c7b0ce..db4aee7ac58879 100644
--- a/examples/placeholder/linux/apps/app2/config.matter
+++ b/examples/placeholder/linux/apps/app2/config.matter
@@ -1629,7 +1629,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
@@ -1721,7 +1721,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/pump-app/pump-common/pump-app.matter b/examples/pump-app/pump-common/pump-app.matter
index d4ac8e35a3c9b2..7ef06e68d4c90d 100644
--- a/examples/pump-app/pump-common/pump-app.matter
+++ b/examples/pump-app/pump-common/pump-app.matter
@@ -957,7 +957,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/pump-app/silabs/data_model/pump-thread-app.matter b/examples/pump-app/silabs/data_model/pump-thread-app.matter
index 7d730d759c139a..8475bd0843b5ca 100644
--- a/examples/pump-app/silabs/data_model/pump-thread-app.matter
+++ b/examples/pump-app/silabs/data_model/pump-thread-app.matter
@@ -957,7 +957,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/pump-app/silabs/data_model/pump-wifi-app.matter b/examples/pump-app/silabs/data_model/pump-wifi-app.matter
index 7d730d759c139a..8475bd0843b5ca 100644
--- a/examples/pump-app/silabs/data_model/pump-wifi-app.matter
+++ b/examples/pump-app/silabs/data_model/pump-wifi-app.matter
@@ -957,7 +957,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
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 a7c2ebcd0fbbdf..356fe83e506791 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
@@ -832,7 +832,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/refrigerator-app/refrigerator-common/refrigerator-app.matter b/examples/refrigerator-app/refrigerator-common/refrigerator-app.matter
index f3149e01afe4c9..43d0f01e39e130 100644
--- a/examples/refrigerator-app/refrigerator-common/refrigerator-app.matter
+++ b/examples/refrigerator-app/refrigerator-common/refrigerator-app.matter
@@ -561,7 +561,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/refrigerator-app/silabs/data_model/refrigerator-thread-app.matter b/examples/refrigerator-app/silabs/data_model/refrigerator-thread-app.matter
index 96d392547fafd2..45330b18a197d5 100644
--- a/examples/refrigerator-app/silabs/data_model/refrigerator-thread-app.matter
+++ b/examples/refrigerator-app/silabs/data_model/refrigerator-thread-app.matter
@@ -689,7 +689,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/refrigerator-app/silabs/data_model/refrigerator-wifi-app.matter b/examples/refrigerator-app/silabs/data_model/refrigerator-wifi-app.matter
index 346471b31b3019..46651b5a86888c 100644
--- a/examples/refrigerator-app/silabs/data_model/refrigerator-wifi-app.matter
+++ b/examples/refrigerator-app/silabs/data_model/refrigerator-wifi-app.matter
@@ -689,7 +689,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/rvc-app/rvc-common/rvc-app.matter b/examples/rvc-app/rvc-common/rvc-app.matter
index 4f981a8f173a82..12eec82a3acaac 100644
--- a/examples/rvc-app/rvc-common/rvc-app.matter
+++ b/examples/rvc-app/rvc-common/rvc-app.matter
@@ -585,7 +585,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/smoke-co-alarm-app/smoke-co-alarm-common/smoke-co-alarm-app.matter b/examples/smoke-co-alarm-app/smoke-co-alarm-common/smoke-co-alarm-app.matter
index a593b61e3ac6d5..fdd615060e182b 100644
--- a/examples/smoke-co-alarm-app/smoke-co-alarm-common/smoke-co-alarm-app.matter
+++ b/examples/smoke-co-alarm-app/smoke-co-alarm-common/smoke-co-alarm-app.matter
@@ -1075,7 +1075,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/temperature-measurement-app/temperature-measurement-common/temperature-measurement.matter b/examples/temperature-measurement-app/temperature-measurement-common/temperature-measurement.matter
index 84acb6b3c45376..16384628eca308 100644
--- a/examples/temperature-measurement-app/temperature-measurement-common/temperature-measurement.matter
+++ b/examples/temperature-measurement-app/temperature-measurement-common/temperature-measurement.matter
@@ -715,7 +715,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/thermostat/nxp/zap/thermostat_matter_br.matter b/examples/thermostat/nxp/zap/thermostat_matter_br.matter
index 72c23a4e22096a..078c1781eabe04 100644
--- a/examples/thermostat/nxp/zap/thermostat_matter_br.matter
+++ b/examples/thermostat/nxp/zap/thermostat_matter_br.matter
@@ -866,7 +866,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/thermostat/nxp/zap/thermostat_matter_thread.matter b/examples/thermostat/nxp/zap/thermostat_matter_thread.matter
index 49856ff0108749..0270557c0993a5 100644
--- a/examples/thermostat/nxp/zap/thermostat_matter_thread.matter
+++ b/examples/thermostat/nxp/zap/thermostat_matter_thread.matter
@@ -866,7 +866,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/thermostat/nxp/zap/thermostat_matter_wifi.matter b/examples/thermostat/nxp/zap/thermostat_matter_wifi.matter
index 1aad4ca9b0dd8e..0dd0d6eae9c1df 100644
--- a/examples/thermostat/nxp/zap/thermostat_matter_wifi.matter
+++ b/examples/thermostat/nxp/zap/thermostat_matter_wifi.matter
@@ -866,7 +866,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/thermostat/qpg/zap/thermostaticRadiatorValve.matter b/examples/thermostat/qpg/zap/thermostaticRadiatorValve.matter
index 86383cf90492b8..4ae04500d7acbe 100644
--- a/examples/thermostat/qpg/zap/thermostaticRadiatorValve.matter
+++ b/examples/thermostat/qpg/zap/thermostaticRadiatorValve.matter
@@ -913,7 +913,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/thermostat/thermostat-common/thermostat.matter b/examples/thermostat/thermostat-common/thermostat.matter
index 1c062da0fecabc..db6f75cf021ed2 100644
--- a/examples/thermostat/thermostat-common/thermostat.matter
+++ b/examples/thermostat/thermostat-common/thermostat.matter
@@ -974,7 +974,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/thread-br-app/thread-br-common/thread-br-app.matter b/examples/thread-br-app/thread-br-common/thread-br-app.matter
index 63a6a567a3e291..cb2e924d55f16b 100644
--- a/examples/thread-br-app/thread-br-common/thread-br-app.matter
+++ b/examples/thread-br-app/thread-br-common/thread-br-app.matter
@@ -535,7 +535,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/tv-app/tv-common/tv-app.matter b/examples/tv-app/tv-common/tv-app.matter
index b3a06cd2d3533f..5a2e80bc876dbc 100644
--- a/examples/tv-app/tv-common/tv-app.matter
+++ b/examples/tv-app/tv-common/tv-app.matter
@@ -937,7 +937,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
@@ -1029,7 +1029,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
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 3dba518b755b89..2946a65ee96161 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
@@ -1000,7 +1000,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/virtual-device-app/virtual-device-common/virtual-device-app.matter b/examples/virtual-device-app/virtual-device-common/virtual-device-app.matter
index 22b2c8999a2cdc..18edfd55764eca 100644
--- a/examples/virtual-device-app/virtual-device-common/virtual-device-app.matter
+++ b/examples/virtual-device-app/virtual-device-common/virtual-device-app.matter
@@ -1177,7 +1177,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/examples/window-app/common/window-app.matter b/examples/window-app/common/window-app.matter
index c7eee099b9c950..85a6015d319fd1 100644
--- a/examples/window-app/common/window-app.matter
+++ b/examples/window-app/common/window-app.matter
@@ -1101,7 +1101,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/src/app/zap-templates/zcl/data-model/chip/general-commissioning-cluster.xml b/src/app/zap-templates/zcl/data-model/chip/general-commissioning-cluster.xml
index 167f7d13e322af..ac798d929e069a 100644
--- a/src/app/zap-templates/zcl/data-model/chip/general-commissioning-cluster.xml
+++ b/src/app/zap-templates/zcl/data-model/chip/general-commissioning-cluster.xml
@@ -77,8 +77,7 @@ limitations under the License.
TCAcknowledgementsRequired
-
- TCUpdateDeadline
+
diff --git a/src/controller/data_model/controller-clusters.matter b/src/controller/data_model/controller-clusters.matter
index 78c5a89323af8d..ca2a0f9e0dc27a 100644
--- a/src/controller/data_model/controller-clusters.matter
+++ b/src/controller/data_model/controller-clusters.matter
@@ -1582,7 +1582,7 @@ cluster GeneralCommissioning = 48 {
provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
- provisional readonly attribute access(read: administer) optional int32u TCUpdateDeadline = 9;
+ provisional readonly attribute access(read: administer) optional nullable int32u TCUpdateDeadline = 9;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
diff --git a/src/controller/java/generated/java/chip/devicecontroller/ChipClusters.java b/src/controller/java/generated/java/chip/devicecontroller/ChipClusters.java
index 3a92667fb6afa9..cdf811dcbfc8ad 100644
--- a/src/controller/java/generated/java/chip/devicecontroller/ChipClusters.java
+++ b/src/controller/java/generated/java/chip/devicecontroller/ChipClusters.java
@@ -8178,6 +8178,10 @@ public interface BasicCommissioningInfoAttributeCallback extends BaseAttributeCa
void onSuccess(ChipStructs.GeneralCommissioningClusterBasicCommissioningInfo value);
}
+ public interface TCUpdateDeadlineAttributeCallback extends BaseAttributeCallback {
+ void onSuccess(@Nullable Long value);
+ }
+
public interface GeneratedCommandListAttributeCallback extends BaseAttributeCallback {
void onSuccess(List value);
}
@@ -8438,26 +8442,26 @@ public void onSuccess(byte[] tlv) {
}
public void readTCUpdateDeadlineAttribute(
- LongAttributeCallback callback) {
+ TCUpdateDeadlineAttributeCallback callback) {
ChipAttributePath path = ChipAttributePath.newInstance(endpointId, clusterId, TC_UPDATE_DEADLINE_ATTRIBUTE_ID);
readAttribute(new ReportCallbackImpl(callback, path) {
@Override
public void onSuccess(byte[] tlv) {
- Long value = ChipTLVValueDecoder.decodeAttributeValue(path, tlv);
+ @Nullable Long value = ChipTLVValueDecoder.decodeAttributeValue(path, tlv);
callback.onSuccess(value);
}
}, TC_UPDATE_DEADLINE_ATTRIBUTE_ID, true);
}
public void subscribeTCUpdateDeadlineAttribute(
- LongAttributeCallback callback, int minInterval, int maxInterval) {
+ TCUpdateDeadlineAttributeCallback callback, int minInterval, int maxInterval) {
ChipAttributePath path = ChipAttributePath.newInstance(endpointId, clusterId, TC_UPDATE_DEADLINE_ATTRIBUTE_ID);
subscribeAttribute(new ReportCallbackImpl(callback, path) {
@Override
public void onSuccess(byte[] tlv) {
- Long value = ChipTLVValueDecoder.decodeAttributeValue(path, tlv);
+ @Nullable Long value = ChipTLVValueDecoder.decodeAttributeValue(path, tlv);
callback.onSuccess(value);
}
}, TC_UPDATE_DEADLINE_ATTRIBUTE_ID, minInterval, maxInterval);
diff --git a/src/controller/java/generated/java/chip/devicecontroller/ClusterInfoMapping.java b/src/controller/java/generated/java/chip/devicecontroller/ClusterInfoMapping.java
index 295ada1c577b89..43847deaea7ba5 100644
--- a/src/controller/java/generated/java/chip/devicecontroller/ClusterInfoMapping.java
+++ b/src/controller/java/generated/java/chip/devicecontroller/ClusterInfoMapping.java
@@ -2735,6 +2735,27 @@ public void onError(Exception ex) {
}
}
+ public static class DelegatedGeneralCommissioningClusterTCUpdateDeadlineAttributeCallback implements ChipClusters.GeneralCommissioningCluster.TCUpdateDeadlineAttributeCallback, DelegatedClusterCallback {
+ private ClusterCommandCallback callback;
+ @Override
+ public void setCallbackDelegate(ClusterCommandCallback callback) {
+ this.callback = callback;
+ }
+
+ @Override
+ public void onSuccess(@Nullable Long value) {
+ Map responseValues = new LinkedHashMap<>();
+ CommandResponseInfo commandResponseInfo = new CommandResponseInfo("value", "Long");
+ responseValues.put(commandResponseInfo, value);
+ callback.onSuccess(responseValues);
+ }
+
+ @Override
+ public void onError(Exception ex) {
+ callback.onFailure(ex);
+ }
+ }
+
public static class DelegatedGeneralCommissioningClusterGeneratedCommandListAttributeCallback implements ChipClusters.GeneralCommissioningCluster.GeneratedCommandListAttributeCallback, DelegatedClusterCallback {
private ClusterCommandCallback callback;
@Override
diff --git a/src/controller/java/generated/java/chip/devicecontroller/ClusterReadMapping.java b/src/controller/java/generated/java/chip/devicecontroller/ClusterReadMapping.java
index 4da39ee6450bd1..a9bd20def5609d 100644
--- a/src/controller/java/generated/java/chip/devicecontroller/ClusterReadMapping.java
+++ b/src/controller/java/generated/java/chip/devicecontroller/ClusterReadMapping.java
@@ -2430,10 +2430,10 @@ private static Map readGeneralCommissioningInteractionI
InteractionInfo readGeneralCommissioningTCUpdateDeadlineAttributeInteractionInfo = new InteractionInfo(
(cluster, callback, commandArguments) -> {
((ChipClusters.GeneralCommissioningCluster) cluster).readTCUpdateDeadlineAttribute(
- (ChipClusters.LongAttributeCallback) callback
+ (ChipClusters.GeneralCommissioningCluster.TCUpdateDeadlineAttributeCallback) callback
);
},
- () -> new ClusterInfoMapping.DelegatedLongAttributeCallback(),
+ () -> new ClusterInfoMapping.DelegatedGeneralCommissioningClusterTCUpdateDeadlineAttributeCallback(),
readGeneralCommissioningTCUpdateDeadlineCommandParams
);
result.put("readTCUpdateDeadlineAttribute", readGeneralCommissioningTCUpdateDeadlineAttributeInteractionInfo);
diff --git a/src/controller/java/generated/java/matter/controller/cluster/clusters/GeneralCommissioningCluster.kt b/src/controller/java/generated/java/matter/controller/cluster/clusters/GeneralCommissioningCluster.kt
index 93fafc69f432d2..f2b48cd8062ea1 100644
--- a/src/controller/java/generated/java/matter/controller/cluster/clusters/GeneralCommissioningCluster.kt
+++ b/src/controller/java/generated/java/matter/controller/cluster/clusters/GeneralCommissioningCluster.kt
@@ -70,6 +70,16 @@ class GeneralCommissioningCluster(
object SubscriptionEstablished : BasicCommissioningInfoAttributeSubscriptionState()
}
+ class TCUpdateDeadlineAttribute(val value: UInt?)
+
+ sealed class TCUpdateDeadlineAttributeSubscriptionState {
+ data class Success(val value: UInt?) : TCUpdateDeadlineAttributeSubscriptionState()
+
+ data class Error(val exception: Exception) : TCUpdateDeadlineAttributeSubscriptionState()
+
+ object SubscriptionEstablished : TCUpdateDeadlineAttributeSubscriptionState()
+ }
+
class GeneratedCommandListAttribute(val value: List)
sealed class GeneratedCommandListAttributeSubscriptionState {
@@ -1170,7 +1180,7 @@ class GeneralCommissioningCluster(
}
}
- suspend fun readTCUpdateDeadlineAttribute(): UInt? {
+ suspend fun readTCUpdateDeadlineAttribute(): TCUpdateDeadlineAttribute {
val ATTRIBUTE_ID: UInt = 9u
val attributePath =
@@ -1197,19 +1207,24 @@ class GeneralCommissioningCluster(
// Decode the TLV data into the appropriate type
val tlvReader = TlvReader(attributeData.data)
val decodedValue: UInt? =
- if (tlvReader.isNextTag(AnonymousTag)) {
- tlvReader.getUInt(AnonymousTag)
+ if (!tlvReader.isNull()) {
+ if (tlvReader.isNextTag(AnonymousTag)) {
+ tlvReader.getUInt(AnonymousTag)
+ } else {
+ null
+ }
} else {
+ tlvReader.getNull(AnonymousTag)
null
}
- return decodedValue
+ return TCUpdateDeadlineAttribute(decodedValue)
}
suspend fun subscribeTCUpdateDeadlineAttribute(
minInterval: Int,
maxInterval: Int,
- ): Flow {
+ ): Flow {
val ATTRIBUTE_ID: UInt = 9u
val attributePaths =
listOf(
@@ -1228,7 +1243,7 @@ class GeneralCommissioningCluster(
when (subscriptionState) {
is SubscriptionState.SubscriptionErrorNotification -> {
emit(
- UIntSubscriptionState.Error(
+ TCUpdateDeadlineAttributeSubscriptionState.Error(
Exception(
"Subscription terminated with error code: ${subscriptionState.terminationCause}"
)
@@ -1248,16 +1263,21 @@ class GeneralCommissioningCluster(
// Decode the TLV data into the appropriate type
val tlvReader = TlvReader(attributeData.data)
val decodedValue: UInt? =
- if (tlvReader.isNextTag(AnonymousTag)) {
- tlvReader.getUInt(AnonymousTag)
+ if (!tlvReader.isNull()) {
+ if (tlvReader.isNextTag(AnonymousTag)) {
+ tlvReader.getUInt(AnonymousTag)
+ } else {
+ null
+ }
} else {
+ tlvReader.getNull(AnonymousTag)
null
}
- decodedValue?.let { emit(UIntSubscriptionState.Success(it)) }
+ decodedValue?.let { emit(TCUpdateDeadlineAttributeSubscriptionState.Success(it)) }
}
SubscriptionState.SubscriptionEstablished -> {
- emit(UIntSubscriptionState.SubscriptionEstablished)
+ emit(TCUpdateDeadlineAttributeSubscriptionState.SubscriptionEstablished)
}
}
}
diff --git a/src/controller/java/zap-generated/CHIPAttributeTLVValueDecoder.cpp b/src/controller/java/zap-generated/CHIPAttributeTLVValueDecoder.cpp
index 9e5c2620cfb295..921898b6daaf3f 100644
--- a/src/controller/java/zap-generated/CHIPAttributeTLVValueDecoder.cpp
+++ b/src/controller/java/zap-generated/CHIPAttributeTLVValueDecoder.cpp
@@ -5286,11 +5286,18 @@ jobject DecodeAttributeValue(const app::ConcreteAttributePath & aPath, TLV::TLVR
return nullptr;
}
jobject value;
- std::string valueClassName = "java/lang/Long";
- std::string valueCtorSignature = "(J)V";
- jlong jnivalue = static_cast(cppValue);
- chip::JniReferences::GetInstance().CreateBoxedObject(valueClassName.c_str(), valueCtorSignature.c_str(),
- jnivalue, value);
+ if (cppValue.IsNull())
+ {
+ value = nullptr;
+ }
+ else
+ {
+ std::string valueClassName = "java/lang/Long";
+ std::string valueCtorSignature = "(J)V";
+ jlong jnivalue = static_cast(cppValue.Value());
+ chip::JniReferences::GetInstance().CreateBoxedObject(valueClassName.c_str(), valueCtorSignature.c_str(),
+ jnivalue, value);
+ }
return value;
}
case Attributes::GeneratedCommandList::Id: {
diff --git a/src/controller/python/chip/clusters/Objects.py b/src/controller/python/chip/clusters/Objects.py
index b36c5b9cae9b0a..3ae9116defc810 100644
--- a/src/controller/python/chip/clusters/Objects.py
+++ b/src/controller/python/chip/clusters/Objects.py
@@ -6542,7 +6542,7 @@ def descriptor(cls) -> ClusterObjectDescriptor:
ClusterObjectFieldDescriptor(Label="TCMinRequiredVersion", Tag=0x00000006, Type=typing.Optional[uint]),
ClusterObjectFieldDescriptor(Label="TCAcknowledgements", Tag=0x00000007, Type=typing.Optional[uint]),
ClusterObjectFieldDescriptor(Label="TCAcknowledgementsRequired", Tag=0x00000008, Type=typing.Optional[bool]),
- ClusterObjectFieldDescriptor(Label="TCUpdateDeadline", Tag=0x00000009, Type=typing.Optional[uint]),
+ ClusterObjectFieldDescriptor(Label="TCUpdateDeadline", Tag=0x00000009, Type=typing.Union[None, Nullable, uint]),
ClusterObjectFieldDescriptor(Label="generatedCommandList", Tag=0x0000FFF8, Type=typing.List[uint]),
ClusterObjectFieldDescriptor(Label="acceptedCommandList", Tag=0x0000FFF9, Type=typing.List[uint]),
ClusterObjectFieldDescriptor(Label="eventList", Tag=0x0000FFFA, Type=typing.List[uint]),
@@ -6551,22 +6551,21 @@ def descriptor(cls) -> ClusterObjectDescriptor:
ClusterObjectFieldDescriptor(Label="clusterRevision", Tag=0x0000FFFD, Type=uint),
])
- breadcrumb: 'uint' = None
- basicCommissioningInfo: 'GeneralCommissioning.Structs.BasicCommissioningInfo' = None
- regulatoryConfig: 'GeneralCommissioning.Enums.RegulatoryLocationTypeEnum' = None
- locationCapability: 'GeneralCommissioning.Enums.RegulatoryLocationTypeEnum' = None
- supportsConcurrentConnection: 'bool' = None
- TCAcceptedVersion: 'typing.Optional[uint]' = None
- TCMinRequiredVersion: 'typing.Optional[uint]' = None
- TCAcknowledgements: 'typing.Optional[uint]' = None
- TCAcknowledgementsRequired: 'typing.Optional[bool]' = None
- TCUpdateDeadline: 'typing.Optional[uint]' = None
- generatedCommandList: 'typing.List[uint]' = None
- acceptedCommandList: 'typing.List[uint]' = None
- eventList: 'typing.List[uint]' = None
- attributeList: 'typing.List[uint]' = None
- featureMap: 'uint' = None
- clusterRevision: 'uint' = None
+ breadcrumb: uint = 0
+ basicCommissioningInfo: GeneralCommissioning.Structs.BasicCommissioningInfo = None
+ regulatoryConfig: GeneralCommissioning.Enums.RegulatoryLocationTypeEnum = 0
+ locationCapability: GeneralCommissioning.Enums.RegulatoryLocationTypeEnum = 0
+ supportsConcurrentConnection: bool = False
+ TCAcceptedVersion: typing.Optional[uint] = None
+ TCMinRequiredVersion: typing.Optional[uint] = None
+ TCAcknowledgements: typing.Optional[uint] = None
+ TCAcknowledgementsRequired: typing.Optional[bool] = None
+ TCUpdateDeadline: typing.Union[None, Nullable, uint] = None
+ generatedCommandList: typing.List[uint] = field(default_factory=lambda: [])
+ acceptedCommandList: typing.List[uint] = field(default_factory=lambda: [])
+ attributeList: typing.List[uint] = field(default_factory=lambda: [])
+ featureMap: uint = 0
+ clusterRevision: uint = 0
class Enums:
class CommissioningErrorEnum(MatterIntEnum):
@@ -6909,9 +6908,13 @@ def attribute_id(cls) -> int:
@ChipUtility.classproperty
def attribute_type(cls) -> ClusterObjectFieldDescriptor:
- return ClusterObjectFieldDescriptor(Type=typing.Optional[uint])
+ return ClusterObjectFieldDescriptor(Type=typing.Union[None, Nullable, uint])
+<<<<<<< HEAD
value: 'typing.Optional[uint]' = None
+=======
+ value: typing.Union[None, Nullable, uint] = None
+>>>>>>> eea382e1b4 (Update TCUpdateDeadline to be nullable to match spec (#37438))
@dataclass
class GeneratedCommandList(ClusterAttributeDescriptor):
@@ -50731,4 +50734,3 @@ def descriptor(cls) -> ClusterObjectDescriptor:
count: 'uint' = 0
fabricIndex: 'uint' = 0
-
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm b/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm
index 907bda8ba854b8..09aceed2c75e69 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm
@@ -2289,8 +2289,12 @@ static id _Nullable DecodeAttributeValueForGeneralCommissioningCluster(Attribute
if (*aError != CHIP_NO_ERROR) {
return nil;
}
- NSNumber * _Nonnull value;
- value = [NSNumber numberWithUnsignedInt:cppValue];
+ NSNumber * _Nullable value;
+ if (cppValue.IsNull()) {
+ value = nil;
+ } else {
+ value = [NSNumber numberWithUnsignedInt:cppValue.Value()];
+ }
return value;
}
default: {
diff --git a/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.cpp b/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.cpp
index 7a8567620f981d..a5235cfc0353f5 100644
--- a/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.cpp
+++ b/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.cpp
@@ -5391,7 +5391,7 @@ Protocols::InteractionModel::Status Set(EndpointId endpoint, bool value)
namespace TCUpdateDeadline {
-Protocols::InteractionModel::Status Get(EndpointId endpoint, uint32_t * value)
+Protocols::InteractionModel::Status Get(EndpointId endpoint, DataModel::Nullable & value)
{
using Traits = NumericAttributeTraits;
Traits::StorageType temp;
@@ -5399,18 +5399,21 @@ Protocols::InteractionModel::Status Get(EndpointId endpoint, uint32_t * value)
Protocols::InteractionModel::Status status =
emberAfReadAttribute(endpoint, Clusters::GeneralCommissioning::Id, Id, readable, sizeof(temp));
VerifyOrReturnError(Protocols::InteractionModel::Status::Success == status, status);
- if (!Traits::CanRepresentValue(/* isNullable = */ false, temp))
+ if (Traits::IsNullValue(temp))
{
- return Protocols::InteractionModel::Status::ConstraintError;
+ value.SetNull();
+ }
+ else
+ {
+ value.SetNonNull() = Traits::StorageToWorking(temp);
}
- *value = Traits::StorageToWorking(temp);
return status;
}
Protocols::InteractionModel::Status Set(EndpointId endpoint, uint32_t value, MarkAttributeDirty markDirty)
{
using Traits = NumericAttributeTraits;
- if (!Traits::CanRepresentValue(/* isNullable = */ false, value))
+ if (!Traits::CanRepresentValue(/* isNullable = */ true, value))
{
return Protocols::InteractionModel::Status::ConstraintError;
}
@@ -5424,7 +5427,7 @@ Protocols::InteractionModel::Status Set(EndpointId endpoint, uint32_t value, Mar
Protocols::InteractionModel::Status Set(EndpointId endpoint, uint32_t value)
{
using Traits = NumericAttributeTraits;
- if (!Traits::CanRepresentValue(/* isNullable = */ false, value))
+ if (!Traits::CanRepresentValue(/* isNullable = */ true, value))
{
return Protocols::InteractionModel::Status::ConstraintError;
}
@@ -5434,6 +5437,46 @@ Protocols::InteractionModel::Status Set(EndpointId endpoint, uint32_t value)
return emberAfWriteAttribute(endpoint, Clusters::GeneralCommissioning::Id, Id, writable, ZCL_INT32U_ATTRIBUTE_TYPE);
}
+Protocols::InteractionModel::Status SetNull(EndpointId endpoint, MarkAttributeDirty markDirty)
+{
+ using Traits = NumericAttributeTraits;
+ Traits::StorageType value;
+ Traits::SetNull(value);
+ uint8_t * writable = Traits::ToAttributeStoreRepresentation(value);
+ return emberAfWriteAttribute(ConcreteAttributePath(endpoint, Clusters::GeneralCommissioning::Id, Id),
+ EmberAfWriteDataInput(writable, ZCL_INT32U_ATTRIBUTE_TYPE).SetMarkDirty(markDirty));
+}
+
+Protocols::InteractionModel::Status SetNull(EndpointId endpoint)
+{
+ using Traits = NumericAttributeTraits;
+ Traits::StorageType value;
+ Traits::SetNull(value);
+ uint8_t * writable = Traits::ToAttributeStoreRepresentation(value);
+ return emberAfWriteAttribute(endpoint, Clusters::GeneralCommissioning::Id, Id, writable, ZCL_INT32U_ATTRIBUTE_TYPE);
+}
+
+Protocols::InteractionModel::Status Set(EndpointId endpoint, const chip::app::DataModel::Nullable & value,
+ MarkAttributeDirty markDirty)
+{
+ if (value.IsNull())
+ {
+ return SetNull(endpoint, markDirty);
+ }
+
+ return Set(endpoint, value.Value(), markDirty);
+}
+
+Protocols::InteractionModel::Status Set(EndpointId endpoint, const chip::app::DataModel::Nullable & value)
+{
+ if (value.IsNull())
+ {
+ return SetNull(endpoint);
+ }
+
+ return Set(endpoint, value.Value());
+}
+
} // namespace TCUpdateDeadline
namespace FeatureMap {
diff --git a/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.h b/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.h
index 32f963238554d0..cb9246cd15ba6f 100644
--- a/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.h
+++ b/zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.h
@@ -835,9 +835,14 @@ Protocols::InteractionModel::Status Set(EndpointId endpoint, bool value, MarkAtt
} // namespace TCAcknowledgementsRequired
namespace TCUpdateDeadline {
-Protocols::InteractionModel::Status Get(EndpointId endpoint, uint32_t * value); // int32u
+Protocols::InteractionModel::Status Get(EndpointId endpoint, DataModel::Nullable & value); // int32u
Protocols::InteractionModel::Status Set(EndpointId endpoint, uint32_t value);
Protocols::InteractionModel::Status Set(EndpointId endpoint, uint32_t value, MarkAttributeDirty markDirty);
+Protocols::InteractionModel::Status SetNull(EndpointId endpoint);
+Protocols::InteractionModel::Status SetNull(EndpointId endpoint, MarkAttributeDirty markDirty);
+Protocols::InteractionModel::Status Set(EndpointId endpoint, const chip::app::DataModel::Nullable & value);
+Protocols::InteractionModel::Status Set(EndpointId endpoint, const chip::app::DataModel::Nullable & value,
+ MarkAttributeDirty markDirty);
} // namespace TCUpdateDeadline
namespace FeatureMap {
diff --git a/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h b/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h
index 0df61a58857171..abd285ba693175 100644
--- a/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h
+++ b/zzz_generated/app-common/app-common/zap-generated/cluster-objects.h
@@ -6536,9 +6536,9 @@ struct TypeInfo
namespace TCUpdateDeadline {
struct TypeInfo
{
- using Type = uint32_t;
- using DecodableType = uint32_t;
- using DecodableArgType = uint32_t;
+ using Type = chip::app::DataModel::Nullable;
+ using DecodableType = chip::app::DataModel::Nullable;
+ using DecodableArgType = const chip::app::DataModel::Nullable &;
static constexpr ClusterId GetClusterId() { return Clusters::GeneralCommissioning::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::TCUpdateDeadline::Id; }
@@ -6601,7 +6601,7 @@ struct TypeInfo
Attributes::TCMinRequiredVersion::TypeInfo::DecodableType TCMinRequiredVersion = static_cast(0);
Attributes::TCAcknowledgements::TypeInfo::DecodableType TCAcknowledgements = static_cast(0);
Attributes::TCAcknowledgementsRequired::TypeInfo::DecodableType TCAcknowledgementsRequired = static_cast(0);
- Attributes::TCUpdateDeadline::TypeInfo::DecodableType TCUpdateDeadline = static_cast(0);
+ Attributes::TCUpdateDeadline::TypeInfo::DecodableType TCUpdateDeadline;
Attributes::GeneratedCommandList::TypeInfo::DecodableType generatedCommandList;
Attributes::AcceptedCommandList::TypeInfo::DecodableType acceptedCommandList;
Attributes::EventList::TypeInfo::DecodableType eventList;
diff --git a/zzz_generated/chip-tool/zap-generated/cluster/Commands.h b/zzz_generated/chip-tool/zap-generated/cluster/Commands.h
index 388af146a08761..0b734592c84bf2 100644
--- a/zzz_generated/chip-tool/zap-generated/cluster/Commands.h
+++ b/zzz_generated/chip-tool/zap-generated/cluster/Commands.h
@@ -16935,8 +16935,9 @@ void registerClusterGeneralCommissioning(Commands & commands, CredentialIssuerCo
WriteCommandType::kForceWrite, credsIssuerConfig), //
make_unique>(Id, "tcacknowledgements-required", 0, 1, Attributes::TCAcknowledgementsRequired::Id,
WriteCommandType::kForceWrite, credsIssuerConfig), //
- make_unique>(Id, "tcupdate-deadline", 0, UINT32_MAX, Attributes::TCUpdateDeadline::Id,
- WriteCommandType::kForceWrite, credsIssuerConfig), //
+ make_unique>>(Id, "tcupdate-deadline", 0, UINT32_MAX,
+ Attributes::TCUpdateDeadline::Id,
+ WriteCommandType::kForceWrite, credsIssuerConfig), //
make_unique>>(
Id, "generated-command-list", Attributes::GeneratedCommandList::Id, WriteCommandType::kForceWrite,
credsIssuerConfig), //
diff --git a/zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.cpp b/zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.cpp
index 917ba818bcae5f..63e76a1247514b 100644
--- a/zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.cpp
+++ b/zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.cpp
@@ -10260,7 +10260,7 @@ CHIP_ERROR DataModelLogger::LogAttribute(const chip::app::ConcreteDataAttributeP
return DataModelLogger::LogValue("TCAcknowledgementsRequired", 1, value);
}
case GeneralCommissioning::Attributes::TCUpdateDeadline::Id: {
- uint32_t value;
+ chip::app::DataModel::Nullable value;
ReturnErrorOnFailure(chip::app::DataModel::Decode(*data, value));
return DataModelLogger::LogValue("TCUpdateDeadline", 1, value);
}