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 35e18361877638..badb11f5097014 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
@@ -2075,34 +2075,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/bridge-app/bridge-common/bridge-app.matter b/examples/bridge-app/bridge-common/bridge-app.matter
index cab04724648e52..18c6dc420112d8 100644
--- a/examples/bridge-app/bridge-common/bridge-app.matter
+++ b/examples/bridge-app/bridge-common/bridge-app.matter
@@ -588,34 +588,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/door-lock-app/door-lock-common/door-lock-app.matter b/examples/door-lock-app/door-lock-common/door-lock-app.matter
index 547b7ae2fe7913..a09ae7ec0b5750 100644
--- a/examples/door-lock-app/door-lock-common/door-lock-app.matter
+++ b/examples/door-lock-app/door-lock-common/door-lock-app.matter
@@ -985,34 +985,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
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 b695f7f9577756..e79b5e23efc08a 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
@@ -877,34 +877,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/lighting-app/lighting-common/lighting-app.matter b/examples/lighting-app/lighting-common/lighting-app.matter
index b81d7297eacdea..df7b51a7518649 100644
--- a/examples/lighting-app/lighting-common/lighting-app.matter
+++ b/examples/lighting-app/lighting-common/lighting-app.matter
@@ -948,34 +948,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/lock-app/lock-common/lock-app.matter b/examples/lock-app/lock-common/lock-app.matter
index 054c4fda4ae105..9107a06c99bf80 100644
--- a/examples/lock-app/lock-common/lock-app.matter
+++ b/examples/lock-app/lock-common/lock-app.matter
@@ -441,34 +441,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
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 f39b90213f7e03..d6196305deaa03 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
@@ -232,34 +232,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
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 4f3207eb3a79a1..35cd61bba64fa9 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
@@ -305,34 +305,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
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 107bf6e381472c..488b02e24eabea 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
@@ -278,34 +278,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/placeholder/linux/apps/app1/config.matter b/examples/placeholder/linux/apps/app1/config.matter
index 54d907bc35bf7f..995f5e1670fc03 100644
--- a/examples/placeholder/linux/apps/app1/config.matter
+++ b/examples/placeholder/linux/apps/app1/config.matter
@@ -1134,34 +1134,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/placeholder/linux/apps/app2/config.matter b/examples/placeholder/linux/apps/app2/config.matter
index 54d907bc35bf7f..995f5e1670fc03 100644
--- a/examples/placeholder/linux/apps/app2/config.matter
+++ b/examples/placeholder/linux/apps/app2/config.matter
@@ -1134,34 +1134,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/pump-app/pump-common/pump-app.matter b/examples/pump-app/pump-common/pump-app.matter
index db3d9718d74a81..f5a5e6ba7b1166 100644
--- a/examples/pump-app/pump-common/pump-app.matter
+++ b/examples/pump-app/pump-common/pump-app.matter
@@ -688,34 +688,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
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 430bc8d07b789f..bba78f8dd84786 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
@@ -599,34 +599,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter b/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter
index 765ed9c0ea9fb7..28bed31546655d 100644
--- a/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter
+++ b/examples/temperature-measurement-app/esp32/main/temperature-measurement.matter
@@ -439,29 +439,29 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/thermostat/thermostat-common/thermostat.matter b/examples/thermostat/thermostat-common/thermostat.matter
index b67e43bdb72c83..d63e70076dd7b8 100644
--- a/examples/thermostat/thermostat-common/thermostat.matter
+++ b/examples/thermostat/thermostat-common/thermostat.matter
@@ -609,34 +609,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/tv-app/tv-common/tv-app.matter b/examples/tv-app/tv-common/tv-app.matter
index 1f241f096c0f22..9d51b1683ef775 100644
--- a/examples/tv-app/tv-common/tv-app.matter
+++ b/examples/tv-app/tv-common/tv-app.matter
@@ -1146,34 +1146,34 @@ client cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
@@ -1272,34 +1272,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
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 a4ec6430b37463..854e02bdb1e5b2 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
@@ -1298,34 +1298,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/examples/window-app/common/window-app.matter b/examples/window-app/common/window-app.matter
index 0f8fa24967e1a9..f45ad80b652656 100644
--- a/examples/window-app/common/window-app.matter
+++ b/examples/window-app/common/window-app.matter
@@ -545,34 +545,34 @@ server cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/src/app/zap-templates/zcl/data-model/chip/commissioning.xml b/src/app/zap-templates/zcl/data-model/chip/commissioning.xml
index 5218ae198c118e..aafac110635b1b 100644
--- a/src/app/zap-templates/zcl/data-model/chip/commissioning.xml
+++ b/src/app/zap-templates/zcl/data-model/chip/commissioning.xml
@@ -76,7 +76,7 @@ limitations under the License.
Network Commissioning
CHIP
- TODO
+ Functionality to configure, enable, disable network credentials and access on a Matter device.
0x0031
NETWORK_COMMISSIONING_CLUSTER
true
@@ -92,55 +92,55 @@ limitations under the License.
LastConnectErrorValue
- TODO
+ Detemine the set of networks the device sees as available.
-
+
- TODO
+ Relay the set of networks the device sees as available back to the client.
- TODO
+ Add or update the credentials for a given Wi-Fi network.
-
+
- TODO
+ Add or update the credentials for a given Thread network.
-
+
- TODO
+ Remove the definition of a given network (including its credentials).
-
+
- TODO
+ Response command for various commands that add/remove/modify network credentials.
- TODO
+ Connect to the specified network, using previously-defined credentials.
-
+
- TODO
+ Command that indicates whether we have succcessfully connected to a network.
- TODO
+ Modify the order in which networks will be presented in the Networks attribute.
-
+
diff --git a/src/controller/CHIPDeviceController.cpp b/src/controller/CHIPDeviceController.cpp
index 0283ec7b0c7cde..54dee8b3f97453 100644
--- a/src/controller/CHIPDeviceController.cpp
+++ b/src/controller/CHIPDeviceController.cpp
@@ -1879,7 +1879,7 @@ void DeviceCommissioner::PerformCommissioningStep(DeviceProxy * proxy, Commissio
NetworkCommissioning::Commands::AddOrUpdateWiFiNetwork::Type request;
request.ssid = params.GetWiFiCredentials().Value().ssid;
request.credentials = params.GetWiFiCredentials().Value().credentials;
- request.breadcrumb = breadcrumb;
+ request.breadcrumb.Emplace(breadcrumb);
SendCommand(proxy, request, OnNetworkConfigResponse, OnBasicFailure, endpoint, timeout);
}
break;
@@ -1892,7 +1892,7 @@ void DeviceCommissioner::PerformCommissioningStep(DeviceProxy * proxy, Commissio
}
NetworkCommissioning::Commands::AddOrUpdateThreadNetwork::Type request;
request.operationalDataset = params.GetThreadOperationalDataset().Value();
- request.breadcrumb = breadcrumb;
+ request.breadcrumb.Emplace(breadcrumb);
SendCommand(proxy, request, OnNetworkConfigResponse, OnBasicFailure, endpoint, timeout);
}
break;
@@ -1904,8 +1904,8 @@ void DeviceCommissioner::PerformCommissioningStep(DeviceProxy * proxy, Commissio
return;
}
NetworkCommissioning::Commands::ConnectNetwork::Type request;
- request.networkID = params.GetWiFiCredentials().Value().ssid;
- request.breadcrumb = breadcrumb;
+ request.networkID = params.GetWiFiCredentials().Value().ssid;
+ request.breadcrumb.Emplace(breadcrumb);
SendCommand(proxy, request, OnConnectNetworkResponse, OnBasicFailure, endpoint, timeout);
}
break;
@@ -1921,8 +1921,8 @@ void DeviceCommissioner::PerformCommissioningStep(DeviceProxy * proxy, Commissio
return;
}
NetworkCommissioning::Commands::ConnectNetwork::Type request;
- request.networkID = extendedPanId;
- request.breadcrumb = breadcrumb;
+ request.networkID = extendedPanId;
+ request.breadcrumb.Emplace(breadcrumb);
SendCommand(proxy, request, OnConnectNetworkResponse, OnBasicFailure, endpoint, timeout);
}
break;
diff --git a/src/controller/data_model/controller-clusters.matter b/src/controller/data_model/controller-clusters.matter
index 2f110836cd057d..a0d033a57e7740 100644
--- a/src/controller/data_model/controller-clusters.matter
+++ b/src/controller/data_model/controller-clusters.matter
@@ -2465,34 +2465,34 @@ client cluster NetworkCommissioning = 49 {
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
- INT64U breadcrumb = 1;
+ optional INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
- INT64U breadcrumb = 2;
+ optional INT64U breadcrumb = 2;
}
response struct ScanNetworksResponse {
diff --git a/src/controller/java/zap-generated/chip/devicecontroller/ChipClusters.java b/src/controller/java/zap-generated/chip/devicecontroller/ChipClusters.java
index a79ff200f0fbc8..8cbf4e10faa7c2 100644
--- a/src/controller/java/zap-generated/chip/devicecontroller/ChipClusters.java
+++ b/src/controller/java/zap-generated/chip/devicecontroller/ChipClusters.java
@@ -11337,21 +11337,26 @@ public NetworkCommissioningCluster(long devicePtr, int endpointId) {
public native long initWithDevice(long devicePtr, int endpointId);
public void addOrUpdateThreadNetwork(
- NetworkConfigResponseCallback callback, byte[] operationalDataset, Long breadcrumb) {
+ NetworkConfigResponseCallback callback,
+ byte[] operationalDataset,
+ Optional breadcrumb) {
addOrUpdateThreadNetwork(chipClusterPtr, callback, operationalDataset, breadcrumb, null);
}
public void addOrUpdateThreadNetwork(
NetworkConfigResponseCallback callback,
byte[] operationalDataset,
- Long breadcrumb,
+ Optional breadcrumb,
int timedInvokeTimeoutMs) {
addOrUpdateThreadNetwork(
chipClusterPtr, callback, operationalDataset, breadcrumb, timedInvokeTimeoutMs);
}
public void addOrUpdateWiFiNetwork(
- NetworkConfigResponseCallback callback, byte[] ssid, byte[] credentials, Long breadcrumb) {
+ NetworkConfigResponseCallback callback,
+ byte[] ssid,
+ byte[] credentials,
+ Optional breadcrumb) {
addOrUpdateWiFiNetwork(chipClusterPtr, callback, ssid, credentials, breadcrumb, null);
}
@@ -11359,34 +11364,34 @@ public void addOrUpdateWiFiNetwork(
NetworkConfigResponseCallback callback,
byte[] ssid,
byte[] credentials,
- Long breadcrumb,
+ Optional breadcrumb,
int timedInvokeTimeoutMs) {
addOrUpdateWiFiNetwork(
chipClusterPtr, callback, ssid, credentials, breadcrumb, timedInvokeTimeoutMs);
}
public void connectNetwork(
- ConnectNetworkResponseCallback callback, byte[] networkID, Long breadcrumb) {
+ ConnectNetworkResponseCallback callback, byte[] networkID, Optional breadcrumb) {
connectNetwork(chipClusterPtr, callback, networkID, breadcrumb, null);
}
public void connectNetwork(
ConnectNetworkResponseCallback callback,
byte[] networkID,
- Long breadcrumb,
+ Optional breadcrumb,
int timedInvokeTimeoutMs) {
connectNetwork(chipClusterPtr, callback, networkID, breadcrumb, timedInvokeTimeoutMs);
}
public void removeNetwork(
- NetworkConfigResponseCallback callback, byte[] networkID, Long breadcrumb) {
+ NetworkConfigResponseCallback callback, byte[] networkID, Optional breadcrumb) {
removeNetwork(chipClusterPtr, callback, networkID, breadcrumb, null);
}
public void removeNetwork(
NetworkConfigResponseCallback callback,
byte[] networkID,
- Long breadcrumb,
+ Optional breadcrumb,
int timedInvokeTimeoutMs) {
removeNetwork(chipClusterPtr, callback, networkID, breadcrumb, timedInvokeTimeoutMs);
}
@@ -11395,7 +11400,7 @@ public void reorderNetwork(
NetworkConfigResponseCallback callback,
byte[] networkID,
Integer networkIndex,
- Long breadcrumb) {
+ Optional breadcrumb) {
reorderNetwork(chipClusterPtr, callback, networkID, networkIndex, breadcrumb, null);
}
@@ -11403,20 +11408,21 @@ public void reorderNetwork(
NetworkConfigResponseCallback callback,
byte[] networkID,
Integer networkIndex,
- Long breadcrumb,
+ Optional breadcrumb,
int timedInvokeTimeoutMs) {
reorderNetwork(
chipClusterPtr, callback, networkID, networkIndex, breadcrumb, timedInvokeTimeoutMs);
}
- public void scanNetworks(ScanNetworksResponseCallback callback, byte[] ssid, Long breadcrumb) {
+ public void scanNetworks(
+ ScanNetworksResponseCallback callback, byte[] ssid, Optional breadcrumb) {
scanNetworks(chipClusterPtr, callback, ssid, breadcrumb, null);
}
public void scanNetworks(
ScanNetworksResponseCallback callback,
byte[] ssid,
- Long breadcrumb,
+ Optional breadcrumb,
int timedInvokeTimeoutMs) {
scanNetworks(chipClusterPtr, callback, ssid, breadcrumb, timedInvokeTimeoutMs);
}
@@ -11425,7 +11431,7 @@ private native void addOrUpdateThreadNetwork(
long chipClusterPtr,
NetworkConfigResponseCallback Callback,
byte[] operationalDataset,
- Long breadcrumb,
+ Optional breadcrumb,
@Nullable Integer timedInvokeTimeoutMs);
private native void addOrUpdateWiFiNetwork(
@@ -11433,21 +11439,21 @@ private native void addOrUpdateWiFiNetwork(
NetworkConfigResponseCallback Callback,
byte[] ssid,
byte[] credentials,
- Long breadcrumb,
+ Optional breadcrumb,
@Nullable Integer timedInvokeTimeoutMs);
private native void connectNetwork(
long chipClusterPtr,
ConnectNetworkResponseCallback Callback,
byte[] networkID,
- Long breadcrumb,
+ Optional breadcrumb,
@Nullable Integer timedInvokeTimeoutMs);
private native void removeNetwork(
long chipClusterPtr,
NetworkConfigResponseCallback Callback,
byte[] networkID,
- Long breadcrumb,
+ Optional breadcrumb,
@Nullable Integer timedInvokeTimeoutMs);
private native void reorderNetwork(
@@ -11455,14 +11461,14 @@ private native void reorderNetwork(
NetworkConfigResponseCallback Callback,
byte[] networkID,
Integer networkIndex,
- Long breadcrumb,
+ Optional breadcrumb,
@Nullable Integer timedInvokeTimeoutMs);
private native void scanNetworks(
long chipClusterPtr,
ScanNetworksResponseCallback Callback,
byte[] ssid,
- Long breadcrumb,
+ Optional breadcrumb,
@Nullable Integer timedInvokeTimeoutMs);
public interface ConnectNetworkResponseCallback {
diff --git a/src/controller/java/zap-generated/chip/devicecontroller/ClusterInfoMapping.java b/src/controller/java/zap-generated/chip/devicecontroller/ClusterInfoMapping.java
index 65cc6b52c024df..cd1de27e904f26 100644
--- a/src/controller/java/zap-generated/chip/devicecontroller/ClusterInfoMapping.java
+++ b/src/controller/java/zap-generated/chip/devicecontroller/ClusterInfoMapping.java
@@ -10379,7 +10379,7 @@ public Map> getCommandMap() {
CommandParameterInfo
networkCommissioningaddOrUpdateThreadNetworkbreadcrumbCommandParameterInfo =
- new CommandParameterInfo("breadcrumb", Long.class);
+ new CommandParameterInfo("breadcrumb", Optional.class);
networkCommissioningaddOrUpdateThreadNetworkCommandParams.put(
"breadcrumb", networkCommissioningaddOrUpdateThreadNetworkbreadcrumbCommandParameterInfo);
@@ -10391,7 +10391,7 @@ public Map> getCommandMap() {
(ChipClusters.NetworkCommissioningCluster.NetworkConfigResponseCallback)
callback,
(byte[]) commandArguments.get("operationalDataset"),
- (Long) commandArguments.get("breadcrumb"));
+ (Optional) commandArguments.get("breadcrumb"));
},
() -> new DelegatedNetworkConfigResponseCallback(),
networkCommissioningaddOrUpdateThreadNetworkCommandParams);
@@ -10410,7 +10410,7 @@ public Map> getCommandMap() {
"credentials", networkCommissioningaddOrUpdateWiFiNetworkcredentialsCommandParameterInfo);
CommandParameterInfo networkCommissioningaddOrUpdateWiFiNetworkbreadcrumbCommandParameterInfo =
- new CommandParameterInfo("breadcrumb", Long.class);
+ new CommandParameterInfo("breadcrumb", Optional.class);
networkCommissioningaddOrUpdateWiFiNetworkCommandParams.put(
"breadcrumb", networkCommissioningaddOrUpdateWiFiNetworkbreadcrumbCommandParameterInfo);
@@ -10423,7 +10423,7 @@ public Map> getCommandMap() {
callback,
(byte[]) commandArguments.get("ssid"),
(byte[]) commandArguments.get("credentials"),
- (Long) commandArguments.get("breadcrumb"));
+ (Optional) commandArguments.get("breadcrumb"));
},
() -> new DelegatedNetworkConfigResponseCallback(),
networkCommissioningaddOrUpdateWiFiNetworkCommandParams);
@@ -10437,7 +10437,7 @@ public Map> getCommandMap() {
"networkID", networkCommissioningconnectNetworknetworkIDCommandParameterInfo);
CommandParameterInfo networkCommissioningconnectNetworkbreadcrumbCommandParameterInfo =
- new CommandParameterInfo("breadcrumb", Long.class);
+ new CommandParameterInfo("breadcrumb", Optional.class);
networkCommissioningconnectNetworkCommandParams.put(
"breadcrumb", networkCommissioningconnectNetworkbreadcrumbCommandParameterInfo);
@@ -10449,7 +10449,7 @@ public Map> getCommandMap() {
(ChipClusters.NetworkCommissioningCluster.ConnectNetworkResponseCallback)
callback,
(byte[]) commandArguments.get("networkID"),
- (Long) commandArguments.get("breadcrumb"));
+ (Optional) commandArguments.get("breadcrumb"));
},
() -> new DelegatedConnectNetworkResponseCallback(),
networkCommissioningconnectNetworkCommandParams);
@@ -10463,7 +10463,7 @@ public Map> getCommandMap() {
"networkID", networkCommissioningremoveNetworknetworkIDCommandParameterInfo);
CommandParameterInfo networkCommissioningremoveNetworkbreadcrumbCommandParameterInfo =
- new CommandParameterInfo("breadcrumb", Long.class);
+ new CommandParameterInfo("breadcrumb", Optional.class);
networkCommissioningremoveNetworkCommandParams.put(
"breadcrumb", networkCommissioningremoveNetworkbreadcrumbCommandParameterInfo);
@@ -10475,7 +10475,7 @@ public Map> getCommandMap() {
(ChipClusters.NetworkCommissioningCluster.NetworkConfigResponseCallback)
callback,
(byte[]) commandArguments.get("networkID"),
- (Long) commandArguments.get("breadcrumb"));
+ (Optional) commandArguments.get("breadcrumb"));
},
() -> new DelegatedNetworkConfigResponseCallback(),
networkCommissioningremoveNetworkCommandParams);
@@ -10494,7 +10494,7 @@ public Map> getCommandMap() {
"networkIndex", networkCommissioningreorderNetworknetworkIndexCommandParameterInfo);
CommandParameterInfo networkCommissioningreorderNetworkbreadcrumbCommandParameterInfo =
- new CommandParameterInfo("breadcrumb", Long.class);
+ new CommandParameterInfo("breadcrumb", Optional.class);
networkCommissioningreorderNetworkCommandParams.put(
"breadcrumb", networkCommissioningreorderNetworkbreadcrumbCommandParameterInfo);
@@ -10507,7 +10507,7 @@ public Map> getCommandMap() {
callback,
(byte[]) commandArguments.get("networkID"),
(Integer) commandArguments.get("networkIndex"),
- (Long) commandArguments.get("breadcrumb"));
+ (Optional) commandArguments.get("breadcrumb"));
},
() -> new DelegatedNetworkConfigResponseCallback(),
networkCommissioningreorderNetworkCommandParams);
@@ -10521,7 +10521,7 @@ public Map> getCommandMap() {
"ssid", networkCommissioningscanNetworksssidCommandParameterInfo);
CommandParameterInfo networkCommissioningscanNetworksbreadcrumbCommandParameterInfo =
- new CommandParameterInfo("breadcrumb", Long.class);
+ new CommandParameterInfo("breadcrumb", Optional.class);
networkCommissioningscanNetworksCommandParams.put(
"breadcrumb", networkCommissioningscanNetworksbreadcrumbCommandParameterInfo);
@@ -10533,7 +10533,7 @@ public Map> getCommandMap() {
(ChipClusters.NetworkCommissioningCluster.ScanNetworksResponseCallback)
callback,
(byte[]) commandArguments.get("ssid"),
- (Long) commandArguments.get("breadcrumb"));
+ (Optional) commandArguments.get("breadcrumb"));
},
() -> new DelegatedScanNetworksResponseCallback(),
networkCommissioningscanNetworksCommandParams);
diff --git a/src/controller/python/chip/clusters/Objects.py b/src/controller/python/chip/clusters/Objects.py
index 7596e1d7f8e5d6..10c18f63966ba1 100644
--- a/src/controller/python/chip/clusters/Objects.py
+++ b/src/controller/python/chip/clusters/Objects.py
@@ -9629,11 +9629,11 @@ def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
Fields = [
ClusterObjectFieldDescriptor(Label="ssid", Tag=0, Type=bytes),
- ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=1, Type=uint),
+ ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=1, Type=typing.Optional[uint]),
])
ssid: 'bytes' = b""
- breadcrumb: 'uint' = 0
+ breadcrumb: 'typing.Optional[uint]' = None
@dataclass
class ScanNetworksResponse(ClusterCommand):
@@ -9668,12 +9668,12 @@ def descriptor(cls) -> ClusterObjectDescriptor:
Fields = [
ClusterObjectFieldDescriptor(Label="ssid", Tag=0, Type=bytes),
ClusterObjectFieldDescriptor(Label="credentials", Tag=1, Type=bytes),
- ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=2, Type=uint),
+ ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=2, Type=typing.Optional[uint]),
])
ssid: 'bytes' = b""
credentials: 'bytes' = b""
- breadcrumb: 'uint' = 0
+ breadcrumb: 'typing.Optional[uint]' = None
@dataclass
class AddOrUpdateThreadNetwork(ClusterCommand):
@@ -9686,11 +9686,11 @@ def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
Fields = [
ClusterObjectFieldDescriptor(Label="operationalDataset", Tag=0, Type=bytes),
- ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=1, Type=uint),
+ ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=1, Type=typing.Optional[uint]),
])
operationalDataset: 'bytes' = b""
- breadcrumb: 'uint' = 0
+ breadcrumb: 'typing.Optional[uint]' = None
@dataclass
class RemoveNetwork(ClusterCommand):
@@ -9703,11 +9703,11 @@ def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
Fields = [
ClusterObjectFieldDescriptor(Label="networkID", Tag=0, Type=bytes),
- ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=1, Type=uint),
+ ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=1, Type=typing.Optional[uint]),
])
networkID: 'bytes' = b""
- breadcrumb: 'uint' = 0
+ breadcrumb: 'typing.Optional[uint]' = None
@dataclass
class NetworkConfigResponse(ClusterCommand):
@@ -9739,11 +9739,11 @@ def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
Fields = [
ClusterObjectFieldDescriptor(Label="networkID", Tag=0, Type=bytes),
- ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=1, Type=uint),
+ ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=1, Type=typing.Optional[uint]),
])
networkID: 'bytes' = b""
- breadcrumb: 'uint' = 0
+ breadcrumb: 'typing.Optional[uint]' = None
@dataclass
class ConnectNetworkResponse(ClusterCommand):
@@ -9776,12 +9776,12 @@ def descriptor(cls) -> ClusterObjectDescriptor:
Fields = [
ClusterObjectFieldDescriptor(Label="networkID", Tag=0, Type=bytes),
ClusterObjectFieldDescriptor(Label="networkIndex", Tag=1, Type=uint),
- ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=2, Type=uint),
+ ClusterObjectFieldDescriptor(Label="breadcrumb", Tag=2, Type=typing.Optional[uint]),
])
networkID: 'bytes' = b""
networkIndex: 'uint' = 0
- breadcrumb: 'uint' = 0
+ breadcrumb: 'typing.Optional[uint]' = None
class Attributes:
diff --git a/src/darwin/Framework/CHIP/zap-generated/CHIPClustersObjc.mm b/src/darwin/Framework/CHIP/zap-generated/CHIPClustersObjc.mm
index 9a6ccd4d4e5323..a095162a939012 100644
--- a/src/darwin/Framework/CHIP/zap-generated/CHIPClustersObjc.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/CHIPClustersObjc.mm
@@ -27476,7 +27476,10 @@ - (void)addOrUpdateThreadNetworkWithParams:(CHIPNetworkCommissioningClusterAddOr
ListFreer listFreer;
NetworkCommissioning::Commands::AddOrUpdateThreadNetwork::Type request;
request.operationalDataset = [self asByteSpan:params.operationalDataset];
- request.breadcrumb = params.breadcrumb.unsignedLongLongValue;
+ if (params.breadcrumb != nil) {
+ auto & definedValue_0 = request.breadcrumb.Emplace();
+ definedValue_0 = params.breadcrumb.unsignedLongLongValue;
+ }
new CHIPNetworkCommissioningClusterNetworkConfigResponseCallbackBridge(
self.callbackQueue, completionHandler, ^(Cancelable * success, Cancelable * failure) {
@@ -27494,7 +27497,10 @@ - (void)addOrUpdateWiFiNetworkWithParams:(CHIPNetworkCommissioningClusterAddOrUp
NetworkCommissioning::Commands::AddOrUpdateWiFiNetwork::Type request;
request.ssid = [self asByteSpan:params.ssid];
request.credentials = [self asByteSpan:params.credentials];
- request.breadcrumb = params.breadcrumb.unsignedLongLongValue;
+ if (params.breadcrumb != nil) {
+ auto & definedValue_0 = request.breadcrumb.Emplace();
+ definedValue_0 = params.breadcrumb.unsignedLongLongValue;
+ }
new CHIPNetworkCommissioningClusterNetworkConfigResponseCallbackBridge(
self.callbackQueue, completionHandler, ^(Cancelable * success, Cancelable * failure) {
@@ -27511,7 +27517,10 @@ - (void)connectNetworkWithParams:(CHIPNetworkCommissioningClusterConnectNetworkP
ListFreer listFreer;
NetworkCommissioning::Commands::ConnectNetwork::Type request;
request.networkID = [self asByteSpan:params.networkID];
- request.breadcrumb = params.breadcrumb.unsignedLongLongValue;
+ if (params.breadcrumb != nil) {
+ auto & definedValue_0 = request.breadcrumb.Emplace();
+ definedValue_0 = params.breadcrumb.unsignedLongLongValue;
+ }
new CHIPNetworkCommissioningClusterConnectNetworkResponseCallbackBridge(
self.callbackQueue, completionHandler, ^(Cancelable * success, Cancelable * failure) {
@@ -27528,7 +27537,10 @@ - (void)removeNetworkWithParams:(CHIPNetworkCommissioningClusterRemoveNetworkPar
ListFreer listFreer;
NetworkCommissioning::Commands::RemoveNetwork::Type request;
request.networkID = [self asByteSpan:params.networkID];
- request.breadcrumb = params.breadcrumb.unsignedLongLongValue;
+ if (params.breadcrumb != nil) {
+ auto & definedValue_0 = request.breadcrumb.Emplace();
+ definedValue_0 = params.breadcrumb.unsignedLongLongValue;
+ }
new CHIPNetworkCommissioningClusterNetworkConfigResponseCallbackBridge(
self.callbackQueue, completionHandler, ^(Cancelable * success, Cancelable * failure) {
@@ -27546,7 +27558,10 @@ - (void)reorderNetworkWithParams:(CHIPNetworkCommissioningClusterReorderNetworkP
NetworkCommissioning::Commands::ReorderNetwork::Type request;
request.networkID = [self asByteSpan:params.networkID];
request.networkIndex = params.networkIndex.unsignedCharValue;
- request.breadcrumb = params.breadcrumb.unsignedLongLongValue;
+ if (params.breadcrumb != nil) {
+ auto & definedValue_0 = request.breadcrumb.Emplace();
+ definedValue_0 = params.breadcrumb.unsignedLongLongValue;
+ }
new CHIPNetworkCommissioningClusterNetworkConfigResponseCallbackBridge(
self.callbackQueue, completionHandler, ^(Cancelable * success, Cancelable * failure) {
@@ -27563,7 +27578,10 @@ - (void)scanNetworksWithParams:(CHIPNetworkCommissioningClusterScanNetworksParam
ListFreer listFreer;
NetworkCommissioning::Commands::ScanNetworks::Type request;
request.ssid = [self asByteSpan:params.ssid];
- request.breadcrumb = params.breadcrumb.unsignedLongLongValue;
+ if (params.breadcrumb != nil) {
+ auto & definedValue_0 = request.breadcrumb.Emplace();
+ definedValue_0 = params.breadcrumb.unsignedLongLongValue;
+ }
new CHIPNetworkCommissioningClusterScanNetworksResponseCallbackBridge(
self.callbackQueue, completionHandler, ^(Cancelable * success, Cancelable * failure) {
diff --git a/src/darwin/Framework/CHIP/zap-generated/CHIPCommandPayloadsObjc.h b/src/darwin/Framework/CHIP/zap-generated/CHIPCommandPayloadsObjc.h
index a62487b7065361..8d032b94e97daf 100644
--- a/src/darwin/Framework/CHIP/zap-generated/CHIPCommandPayloadsObjc.h
+++ b/src/darwin/Framework/CHIP/zap-generated/CHIPCommandPayloadsObjc.h
@@ -647,7 +647,7 @@ NS_ASSUME_NONNULL_BEGIN
@interface CHIPNetworkCommissioningClusterScanNetworksParams : NSObject
@property (strong, nonatomic) NSData * _Nonnull ssid;
-@property (strong, nonatomic) NSNumber * _Nonnull breadcrumb;
+@property (strong, nonatomic) NSNumber * _Nullable breadcrumb;
- (instancetype)init;
@end
@@ -662,19 +662,19 @@ NS_ASSUME_NONNULL_BEGIN
@interface CHIPNetworkCommissioningClusterAddOrUpdateWiFiNetworkParams : NSObject
@property (strong, nonatomic) NSData * _Nonnull ssid;
@property (strong, nonatomic) NSData * _Nonnull credentials;
-@property (strong, nonatomic) NSNumber * _Nonnull breadcrumb;
+@property (strong, nonatomic) NSNumber * _Nullable breadcrumb;
- (instancetype)init;
@end
@interface CHIPNetworkCommissioningClusterAddOrUpdateThreadNetworkParams : NSObject
@property (strong, nonatomic) NSData * _Nonnull operationalDataset;
-@property (strong, nonatomic) NSNumber * _Nonnull breadcrumb;
+@property (strong, nonatomic) NSNumber * _Nullable breadcrumb;
- (instancetype)init;
@end
@interface CHIPNetworkCommissioningClusterRemoveNetworkParams : NSObject
@property (strong, nonatomic) NSData * _Nonnull networkID;
-@property (strong, nonatomic) NSNumber * _Nonnull breadcrumb;
+@property (strong, nonatomic) NSNumber * _Nullable breadcrumb;
- (instancetype)init;
@end
@@ -687,7 +687,7 @@ NS_ASSUME_NONNULL_BEGIN
@interface CHIPNetworkCommissioningClusterConnectNetworkParams : NSObject
@property (strong, nonatomic) NSData * _Nonnull networkID;
-@property (strong, nonatomic) NSNumber * _Nonnull breadcrumb;
+@property (strong, nonatomic) NSNumber * _Nullable breadcrumb;
- (instancetype)init;
@end
@@ -701,7 +701,7 @@ NS_ASSUME_NONNULL_BEGIN
@interface CHIPNetworkCommissioningClusterReorderNetworkParams : NSObject
@property (strong, nonatomic) NSData * _Nonnull networkID;
@property (strong, nonatomic) NSNumber * _Nonnull networkIndex;
-@property (strong, nonatomic) NSNumber * _Nonnull breadcrumb;
+@property (strong, nonatomic) NSNumber * _Nullable breadcrumb;
- (instancetype)init;
@end
diff --git a/src/darwin/Framework/CHIP/zap-generated/CHIPCommandPayloadsObjc.mm b/src/darwin/Framework/CHIP/zap-generated/CHIPCommandPayloadsObjc.mm
index 88278d64600b8f..de04eee0a372fc 100644
--- a/src/darwin/Framework/CHIP/zap-generated/CHIPCommandPayloadsObjc.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/CHIPCommandPayloadsObjc.mm
@@ -1361,7 +1361,7 @@ - (instancetype)init
_ssid = [NSData data];
- _breadcrumb = @(0);
+ _breadcrumb = nil;
}
return self;
}
@@ -1393,7 +1393,7 @@ - (instancetype)init
_credentials = [NSData data];
- _breadcrumb = @(0);
+ _breadcrumb = nil;
}
return self;
}
@@ -1406,7 +1406,7 @@ - (instancetype)init
_operationalDataset = [NSData data];
- _breadcrumb = @(0);
+ _breadcrumb = nil;
}
return self;
}
@@ -1419,7 +1419,7 @@ - (instancetype)init
_networkID = [NSData data];
- _breadcrumb = @(0);
+ _breadcrumb = nil;
}
return self;
}
@@ -1447,7 +1447,7 @@ - (instancetype)init
_networkID = [NSData data];
- _breadcrumb = @(0);
+ _breadcrumb = nil;
}
return self;
}
@@ -1477,7 +1477,7 @@ - (instancetype)init
_networkIndex = @(0);
- _breadcrumb = @(0);
+ _breadcrumb = nil;
}
return self;
}
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 fe86b6813e8d79..09654141b74cfd 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
@@ -10835,7 +10835,7 @@ struct Type
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
chip::ByteSpan ssid;
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Encode(TLV::TLVWriter & writer, TLV::Tag tag) const;
@@ -10851,7 +10851,7 @@ struct DecodableType
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
chip::ByteSpan ssid;
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Decode(TLV::TLVReader & reader);
};
}; // namespace ScanNetworks
@@ -10913,7 +10913,7 @@ struct Type
chip::ByteSpan ssid;
chip::ByteSpan credentials;
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Encode(TLV::TLVWriter & writer, TLV::Tag tag) const;
@@ -10930,7 +10930,7 @@ struct DecodableType
chip::ByteSpan ssid;
chip::ByteSpan credentials;
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Decode(TLV::TLVReader & reader);
};
}; // namespace AddOrUpdateWiFiNetwork
@@ -10949,7 +10949,7 @@ struct Type
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
chip::ByteSpan operationalDataset;
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Encode(TLV::TLVWriter & writer, TLV::Tag tag) const;
@@ -10965,7 +10965,7 @@ struct DecodableType
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
chip::ByteSpan operationalDataset;
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Decode(TLV::TLVReader & reader);
};
}; // namespace AddOrUpdateThreadNetwork
@@ -10984,7 +10984,7 @@ struct Type
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
chip::ByteSpan networkID;
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Encode(TLV::TLVWriter & writer, TLV::Tag tag) const;
@@ -11000,7 +11000,7 @@ struct DecodableType
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
chip::ByteSpan networkID;
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Decode(TLV::TLVReader & reader);
};
}; // namespace RemoveNetwork
@@ -11057,7 +11057,7 @@ struct Type
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
chip::ByteSpan networkID;
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Encode(TLV::TLVWriter & writer, TLV::Tag tag) const;
@@ -11073,7 +11073,7 @@ struct DecodableType
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
chip::ByteSpan networkID;
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Decode(TLV::TLVReader & reader);
};
}; // namespace ConnectNetwork
@@ -11132,7 +11132,7 @@ struct Type
chip::ByteSpan networkID;
uint8_t networkIndex = static_cast(0);
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Encode(TLV::TLVWriter & writer, TLV::Tag tag) const;
@@ -11149,7 +11149,7 @@ struct DecodableType
chip::ByteSpan networkID;
uint8_t networkIndex = static_cast(0);
- uint64_t breadcrumb = static_cast(0);
+ Optional breadcrumb;
CHIP_ERROR Decode(TLV::TLVReader & reader);
};
}; // namespace ReorderNetwork