diff --git a/.github/.wordlist.txt b/.github/.wordlist.txt
index 82e88caf568625..4823bb6d03c834 100644
--- a/.github/.wordlist.txt
+++ b/.github/.wordlist.txt
@@ -121,6 +121,7 @@ AXXXF
AYNJV
babaf
backend
+backends
backticks
backtrace
BallastConfiguration
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_ACK_PAA_vid_0x137A.der b/credentials/development/paa-root-certs/dcld_mirror_CN_ACK_PAA_vid_0x137A.der
new file mode 100644
index 00000000000000..a5d8af96d4fb19
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_ACK_PAA_vid_0x137A.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_ACK_PAA_vid_0x137A.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_ACK_PAA_vid_0x137A.pem
new file mode 100644
index 00000000000000..3af8819994bb1e
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_ACK_PAA_vid_0x137A.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBtDCCAVqgAwIBAgIRAKmlv/NkWcbEmD8lf53gJ8IwCgYIKoZIzj0EAwIwKDEQ
+MA4GA1UEAwwHQUNLIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzN0EwIBcNMjIxMjIx
+MTcyODI4WhgPMjEyMjExMjcxODI4MjhaMCgxEDAOBgNVBAMMB0FDSyBQQUExFDAS
+BgorBgEEAYKifAIBDAQxMzdBMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEm4U8
+MVedT5hVlDTuDO31lnEHWbjW2euLdkcwWoK50S1wHnIHGdtmQwVFfl/QsfR2vknr
+u09p1W/8pHbwmPbq7aNjMGEwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUsmX4
+RnbkZc9s0jK2k4MwyOowZAYwDgYDVR0PAQH/BAQDAgGGMB8GA1UdIwQYMBaAFLJl
++EZ25GXPbNIytpODMMjqMGQGMAoGCCqGSM49BAMCA0gAMEUCIQCrjO6txs7d8VA4
+hFHM4ZYAcSXTNWKYKIFRNEIbGOlJXwIgYGjCddu3ddzOnjXEd3kK1oO+Exs4Wtzw
+XHHTB2RisdU=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Basics_PAA_vid_0x137B.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Basics_PAA_vid_0x137B.der
new file mode 100644
index 00000000000000..8cccdfe5d6053c
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Basics_PAA_vid_0x137B.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Basics_PAA_vid_0x137B.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Basics_PAA_vid_0x137B.pem
new file mode 100644
index 00000000000000..fdd6d2f528df8d
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Basics_PAA_vid_0x137B.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBujCCAV+gAwIBAgIQWLcxV1Mfj6lftudYrsmyljAKBggqhkjOPQQDAjArMRMw
+EQYDVQQDDApCYXNpY3MgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM3QjAgFw0yMjEy
+MjExNzM3NThaGA8yMTIyMTEyNzE4Mzc1OFowKzETMBEGA1UEAwwKQmFzaWNzIFBB
+QTEUMBIGCisGAQQBgqJ8AgEMBDEzN0IwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC
+AASnpaiASxMZDfqgC3oYe18bkB25PWJI+jI7MvKWnhq2+FxdaByMU1P6Sv2qoBCg
+ikN54BMhJNthnQQL8bGtrE/Co2MwYTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
+BBQ/4wy1FSZGe0TBECIIbihQpVCcqjAOBgNVHQ8BAf8EBAMCAYYwHwYDVR0jBBgw
+FoAUP+MMtRUmRntEwRAiCG4oUKVQnKowCgYIKoZIzj0EAwIDSQAwRgIhAPaRP+mH
+VnXvZaYIkyoAh34JVfTJvhOcPxmgaywmvqh3AiEAqrsuiz6oZnU0j+fqyhXj7w1S
+Mwzbg5//iCLEUET36XU=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.der
new file mode 100644
index 00000000000000..9353d4030d22d9
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.pem
new file mode 100644
index 00000000000000..561591e8201cf1
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.pem
@@ -0,0 +1,14 @@
+-----BEGIN CERTIFICATE-----
+MIICDzCCAbWgAwIBAgIQaYNwS9sgTBq3o/fYlgTNRjAKBggqhkjOPQQDAjBWMQsw
+CQYDVQQGEwJDTjEaMBgGA1UECgwRQkVLRU4gQ09SUE9SQVRJT04xFTATBgNVBAMM
+DEJla2VuIFBBQSAwMTEUMBIGCisGAQQBgqJ8AgEMBDEzNDIwIBcNMjMwMjIxMDEx
+MjEwWhgPOTk5OTEyMzEyMzU5NTlaMFYxCzAJBgNVBAYTAkNOMRowGAYDVQQKDBFC
+RUtFTiBDT1JQT1JBVElPTjEVMBMGA1UEAwwMQmVrZW4gUEFBIDAxMRQwEgYKKwYB
+BAGConwCAQwEMTM0MjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABNAiesN6ioXB
+ceNzUHakCBeHnWYclToAOMD+iN/+ZICwbYcNprK/3fwgNbW9wJjfgS1Ql7ncpFI1
+CuGIx1ixsvyjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFPH7a4tsFdwj
+q/GrUwRtGqMOygGJMA4GA1UdDwEB/wQEAwIBhjAfBgNVHSMEGDAWgBTx+2uLbBXc
+I6vxq1MEbRqjDsoBiTAKBggqhkjOPQQDAgNIADBFAiAhLQDUaEN6D7bEEsDiZeWk
+SgF4T78PnMu7djX7dA5WPwIhANi5ffmVk+EsdlhDk/50ojce09gvjar3RDSibyiE
+xsch
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_BouffaloLab_Matter_Test_PAA_vid_0x130D.der b/credentials/development/paa-root-certs/dcld_mirror_CN_BouffaloLab_Matter_Test_PAA_vid_0x130D.der
new file mode 100644
index 00000000000000..b1068a6d70c53b
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_BouffaloLab_Matter_Test_PAA_vid_0x130D.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_BouffaloLab_Matter_Test_PAA_vid_0x130D.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_BouffaloLab_Matter_Test_PAA_vid_0x130D.pem
new file mode 100644
index 00000000000000..1499538fa20133
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_BouffaloLab_Matter_Test_PAA_vid_0x130D.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB2zCCAYCgAwIBAgIRAMfepq0ZLWM3qzyIbGE5OLswCgYIKoZIzj0EAwIwPDEk
+MCIGA1UEAwwbQm91ZmZhbG9MYWIgTWF0dGVyIFRlc3QgUEFBMRQwEgYKKwYBBAGC
+onwCAQwEMTMwRDAeFw0yMzA0MjMwMTE0NDNaFw0zMzA0MjAwMjE0NDNaMDwxJDAi
+BgNVBAMMG0JvdWZmYWxvTGFiIE1hdHRlciBUZXN0IFBBQTEUMBIGCisGAQQBgqJ8
+AgEMBDEzMEQwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQd4BVELCCWiawXtefq
+Q/QcUlifN0OAJJVntqjKcirRXlEvCI4FCTbxP0N+5GnCbA14SwY55Wph4AIUn8ED
+vV+ao2MwYTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRu0jOCSCI1EH0Nbgkb
+nPkOviF4bzAOBgNVHQ8BAf8EBAMCAYYwHwYDVR0jBBgwFoAUbtIzgkgiNRB9DW4J
+G5z5Dr4heG8wCgYIKoZIzj0EAwIDSQAwRgIhAM6Dzi6vB8NgDzn0Qx+tB+qNuUn5
+BeSsqjjCO6MlBYofAiEAzqovlPzuuxQ+jStW5DxavlwNkFboEcY/an1qMmlHNRw=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.der b/credentials/development/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.der
new file mode 100644
index 00000000000000..24c85a7ccecb17
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.pem
new file mode 100644
index 00000000000000..df1e675b2517a3
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByjCCAXCgAwIBAgIUXCGo9kb6IAuTbc++0INIKoRNdmkwCgYIKoZIzj0EAwIw
+MDEuMCwGA1UEAwwlQ29tbVNjb3BlIFRlY2hub2xvZ2llcyBMTEMgTWF0dGVyIFBB
+QTAgFw0yMzAzMjcxODAzMTVaGA8yMDc5MDYwNTIzNTk1OVowMDEuMCwGA1UEAwwl
+Q29tbVNjb3BlIFRlY2hub2xvZ2llcyBMTEMgTWF0dGVyIFBBQTBZMBMGByqGSM49
+AgEGCCqGSM49AwEHA0IABKDQFia0cSkTzFVaowcLObj8kugxNblIJQI8+9T39HBS
+MUt8BZLyF6fvpoMW3aFGty7QnSIEcUHsv3a+luWMOyWjZjBkMBIGA1UdEwEB/wQI
+MAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB8GA1UdIwQYMBaAFFn47dFXVdLaZqie
+VLx5cjRDXfRrMB0GA1UdDgQWBBRZ+O3RV1XS2maonlS8eXI0Q130azAKBggqhkjO
+PQQDAgNIADBFAiEA2r/c+NN+uHyDSPnrPG0csWP/L4SCNl3RHEktM76RomoCIHZj
+wzofFTNVqdsP/gAOyygrtvq9tOkz0s0PY+06N6Dr
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_CoolKit_Matter_PAA_test_vid_0x1286.der b/credentials/development/paa-root-certs/dcld_mirror_CN_CoolKit_Matter_PAA_test_vid_0x1286.der
new file mode 100644
index 00000000000000..2c64a6eed081ab
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_CoolKit_Matter_PAA_test_vid_0x1286.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_CoolKit_Matter_PAA_test_vid_0x1286.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_CoolKit_Matter_PAA_test_vid_0x1286.pem
new file mode 100644
index 00000000000000..f84921a39e7b8f
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_CoolKit_Matter_PAA_test_vid_0x1286.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBzzCCAXSgAwIBAgIIa8JmNcPHyd8wCgYIKoZIzj0EAwIwODEgMB4GA1UEAwwX
+Q29vbEtpdCBNYXR0ZXIgUEFBIHRlc3QxFDASBgorBgEEAYKifAIBDAQxMjg2MCAX
+DTIwMTAxNTE0MjM0M1oYDzIxMjAwOTIxMTQyMzQyWjA4MSAwHgYDVQQDDBdDb29s
+S2l0IE1hdHRlciBQQUEgdGVzdDEUMBIGCisGAQQBgqJ8AgEMBDEyODYwWTATBgcq
+hkjOPQIBBggqhkjOPQMBBwNCAARnOBT4DvbX8LVrYRrOyp1V2XeuNa1EWKorRgPP
+qTxx2myN/nRIOZ1YRAc/2Mdn2lGqcD8vAm44O7JtbEmfjQdao2YwZDASBgNVHRMB
+Af8ECDAGAQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUu8Wrbl37uqK5
+fVPozFdsJcv2ifQwHwYDVR0jBBgwFoAUu8Wrbl37uqK5fVPozFdsJcv2ifQwCgYI
+KoZIzj0EAwIDSQAwRgIhAJECrcroVMAPXjJ5E14eRVg0V4uTQcl8esowSsNeKk76
+AiEA3DM2PDZxL6EoZ87Dfr826X1TtKSXRSZrsxjQAaA8PoY=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.der
new file mode 100644
index 00000000000000..3eb961c3e64475
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.pem
new file mode 100644
index 00000000000000..f3a3f9b032117c
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByjCCAXCgAwIBAgIRALIYkZCkr7iJ8mZzIc7i0YUwCgYIKoZIzj0EAwIwMzEb
+MBkGA1UEAwwSQ29vbGtpdCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTI4
+NjAgFw0yMjEyMjkwOTAxMjBaGA8yMTIyMTIwNTEwMDEyMFowMzEbMBkGA1UEAwwS
+Q29vbGtpdCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTI4NjBZMBMGByqG
+SM49AgEGCCqGSM49AwEHA0IABFjRorUBNceySQx2NyglupAohrtcN7HhdhoXSpe7
+Q8NKPwEWgi8xGM8/I5aZpNyKWtIkiqQjOldveUsJ+E5huJ2jYzBhMA8GA1UdEwEB
+/wQFMAMBAf8wHQYDVR0OBBYEFNLMGSSoh8d9pu+VyV7evMxVOl6+MA4GA1UdDwEB
+/wQEAwIBhjAfBgNVHSMEGDAWgBTSzBkkqIfHfabvlcle3rzMVTpevjAKBggqhkjO
+PQQDAgNIADBFAiEA70Nk7lJT0kd3ldXbCeHjHCcjaNQSi6BEfW5t351S0TYCIEtA
+7mST/iS08y+bmAc+Umw4w4korSG7mbA7SF+h4Bvq
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_DUC_Matter_Test_PAA_CN_vid_0x141F.der b/credentials/development/paa-root-certs/dcld_mirror_CN_DUC_Matter_Test_PAA_CN_vid_0x141F.der
new file mode 100644
index 00000000000000..52e2ddd55df0b6
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_DUC_Matter_Test_PAA_CN_vid_0x141F.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_DUC_Matter_Test_PAA_CN_vid_0x141F.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_DUC_Matter_Test_PAA_CN_vid_0x141F.pem
new file mode 100644
index 00000000000000..85fe1f90bdec59
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_DUC_Matter_Test_PAA_CN_vid_0x141F.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByzCCAXKgAwIBAgIIejP0/yJR6fEwCgYIKoZIzj0EAwIwNzEfMB0GA1UEAwwW
+RFVDIE1hdHRlciBUZXN0IFBBQSBDTjEUMBIGCisGAQQBgqJ8AgEMBDE0MUYwIBcN
+MjMwNTEwMTQzMDAwWhgPOTk5OTEyMzEyMzU5NTlaMDcxHzAdBgNVBAMMFkRVQyBN
+YXR0ZXIgVGVzdCBQQUEgQ04xFDASBgorBgEEAYKifAIBDAQxNDFGMFkwEwYHKoZI
+zj0CAQYIKoZIzj0DAQcDQgAEkPXBAgN/uRMrsoFzVw53tB3qswJwsbm+0AB3cth3
+tW78uwoaPfDoJZrQ5dH6US9QCSPz/Z27YYKtkkeV1lXg46NmMGQwEgYDVR0TAQH/
+BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFFZTubOXQQwD5gJ+
+UR1hQ1OTrk1xMB8GA1UdIwQYMBaAFFZTubOXQQwD5gJ+UR1hQ1OTrk1xMAoGCCqG
+SM49BAMCA0cAMEQCIBRyltVJ6UZN6ksCCgwkrCOxjkPEV4nI+eGkMRnOH69gAiBs
+CIhjseCFllxxvsWiNoRA1rx2BBwqQfWBh5W0W5Z2nw==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_DigiCert_Root_CA_for_MATTER_PKI_G1_O_DigiCert__Inc_C_US.der b/credentials/development/paa-root-certs/dcld_mirror_CN_DigiCert_Root_CA_for_MATTER_PKI_G1_O_DigiCert__Inc_C_US.der
new file mode 100644
index 00000000000000..3b9d3fef535561
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_DigiCert_Root_CA_for_MATTER_PKI_G1_O_DigiCert__Inc_C_US.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_DigiCert_Root_CA_for_MATTER_PKI_G1_O_DigiCert__Inc_C_US.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_DigiCert_Root_CA_for_MATTER_PKI_G1_O_DigiCert__Inc_C_US.pem
new file mode 100644
index 00000000000000..81f9bf3e7defca
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_DigiCert_Root_CA_for_MATTER_PKI_G1_O_DigiCert__Inc_C_US.pem
@@ -0,0 +1,14 @@
+-----BEGIN CERTIFICATE-----
+MIICDTCCAbKgAwIBAgIQe3eNNaVHZutrY7gRg4ItsjAKBggqhkjOPQQDAjBTMQsw
+CQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xKzApBgNVBAMTIkRp
+Z2lDZXJ0IFJvb3QgQ0EgZm9yIE1BVFRFUiBQS0kgRzEwIBcNMjIwODI0MDAwMDAw
+WhgPOTk5OTEyMzEyMzU5NTlaMFMxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdp
+Q2VydCwgSW5jLjErMCkGA1UEAxMiRGlnaUNlcnQgUm9vdCBDQSBmb3IgTUFUVEVS
+IFBLSSBHMTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAVbq6wD9zzDXbEObnSN
+OMNLrGyLBok/Le7bYMzRBn8G4aNSEDw1ClO4gAbrZqpDJy5QSmF9VpKPx9FOsvmV
+bZujZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB0GA1Ud
+DgQWBBQyUEUZM0RZm0Zl1Fn9OhXxwRbMvTAfBgNVHSMEGDAWgBQyUEUZM0RZm0Zl
+1Fn9OhXxwRbMvTAKBggqhkjOPQQDAgNJADBGAiEAh88I/wwZ6/x4wrLLZeEZZEQi
+KqmgvTeRD3kPQ1LoCFgCIQCKVfavo16G+mSmMEFD2O/vsx15c2U1SS0rTK/ogRAP
+4g==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.der
new file mode 100644
index 00000000000000..74f0bdc503d9b3
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.pem
new file mode 100644
index 00000000000000..28ba6eec1e0d99
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBxjCCAWygAwIBAgIRAK8DIULbkf5secR3pEpneXkwCgYIKoZIzj0EAwIwMTEZ
+MBcGA1UEAwwQRG9veWEgTWF0dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzNjUw
+IBcNMjMwNTE3MDYzMDA5WhgPMjEyMzA0MjMwNzMwMDlaMDExGTAXBgNVBAMMEERv
+b3lhIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxMzY1MFkwEwYHKoZIzj0C
+AQYIKoZIzj0DAQcDQgAE13sUs7r/vScV3aC0keua5b3hN2HACJrsPVY0csOEvdmg
+Ujb/DdhbB9II8egcUgNQhbhm1VA6aDweSVOlJUqW9KNjMGEwDwYDVR0TAQH/BAUw
+AwEB/zAdBgNVHQ4EFgQU2H5GdarwvlK+Q5zywAaYbZrwLnUwDgYDVR0PAQH/BAQD
+AgGGMB8GA1UdIwQYMBaAFNh+RnWq8L5SvkOc8sAGmG2a8C51MAoGCCqGSM49BAMC
+A0gAMEUCICN3uiTptSE1TiDJ9595cGiBOHg30RN0XHIepd5xhzE+AiEA94oIq6eF
+4Bf6vzl1brZb3/jRFa2Hb2KSF+pLby/nVDU=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_EZVIZ_Matter_test_PAA_01_vid_0x1434.der b/credentials/development/paa-root-certs/dcld_mirror_CN_EZVIZ_Matter_test_PAA_01_vid_0x1434.der
new file mode 100644
index 00000000000000..768ea5e4749a4f
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_EZVIZ_Matter_test_PAA_01_vid_0x1434.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_EZVIZ_Matter_test_PAA_01_vid_0x1434.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_EZVIZ_Matter_test_PAA_01_vid_0x1434.pem
new file mode 100644
index 00000000000000..018ed98e915f4b
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_EZVIZ_Matter_test_PAA_01_vid_0x1434.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBzTCCAXSgAwIBAgIIK4s1NP68KGIwCgYIKoZIzj0EAwIwOTEhMB8GA1UEAwwY
+RVpWSVogTWF0dGVyIHRlc3QgUEFBIDAxMRQwEgYKKwYBBAGConwCAQwEMTQzNDAe
+Fw0yMzA1MDUxNjEwNTVaFw0zMzA1MDIxNjEwNTRaMDkxITAfBgNVBAMMGEVaVkla
+IE1hdHRlciB0ZXN0IFBBQSAwMTEUMBIGCisGAQQBgqJ8AgEMBDE0MzQwWTATBgcq
+hkjOPQIBBggqhkjOPQMBBwNCAASn2b5OqfOl/E3sn01xRffPoJnYTa3GB4bjgLvK
+IpzqIJQZJLRBpuK8is2DIybkj77QEaVdQG+D6MfceRjVJyvso2YwZDASBgNVHRMB
+Af8ECDAGAQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQU3hJk7liExrxC
+3q2lJPaEqdhNa5cwHwYDVR0jBBgwFoAU3hJk7liExrxC3q2lJPaEqdhNa5cwCgYI
+KoZIzj0EAwIDRwAwRAIgfrtaXfCxNEhihJ+/lenZWqCvqwMhJasMZPBVSI8TvG0C
+ID1umGgKfOcTaBuAWh0nlzKgDi1ie5QaaSj+E40XfW5u
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Espressif_Matter_PAA_O_Espressif_Systems_vid_0x131B.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Espressif_Matter_PAA_O_Espressif_Systems_vid_0x131B.der
new file mode 100644
index 00000000000000..f4299e6374d6c8
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Espressif_Matter_PAA_O_Espressif_Systems_vid_0x131B.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Espressif_Matter_PAA_O_Espressif_Systems_vid_0x131B.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Espressif_Matter_PAA_O_Espressif_Systems_vid_0x131B.pem
new file mode 100644
index 00000000000000..735a6d0f233298
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Espressif_Matter_PAA_O_Espressif_Systems_vid_0x131B.pem
@@ -0,0 +1,13 @@
+-----BEGIN CERTIFICATE-----
+MIICCDCCAa6gAwIBAgIQaAJCUN1IiECssOZIuhJXPDAKBggqhkjOPQQDAjBRMR0w
+GwYDVQQDDBRFc3ByZXNzaWYgTWF0dGVyIFBBQTEaMBgGA1UECgwRRXNwcmVzc2lm
+IFN5c3RlbXMxFDASBgorBgEEAYKifAIBDAQxMzFCMCAXDTIyMTEyODA4MTM0MVoY
+Dzk5OTkxMjMxMjM1OTU5WjBRMR0wGwYDVQQDDBRFc3ByZXNzaWYgTWF0dGVyIFBB
+QTEaMBgGA1UECgwRRXNwcmVzc2lmIFN5c3RlbXMxFDASBgorBgEEAYKifAIBDAQx
+MzFCMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEi6YLVYUIZ85zY/OZtse5csL6
+Uthd9R+IjpZ1j6SBLysbzbjt3EqGVAew1pQUkzrwmzEXpoXgkUGLSRqdSh5PcqNm
+MGQwEgYDVR0TAQH/BAgwBgEB/wIBATAfBgNVHSMEGDAWgBRNEvWAG3XTI4XFVZDv
+RSe8s7px4DAdBgNVHQ4EFgQUTRL1gBt10yOFxVWQ70UnvLO6ceAwDgYDVR0PAQH/
+BAQDAgGGMAoGCCqGSM49BAMCA0gAMEUCIQDcyYwJvBkl+VaU1bfqF4EcJ0SYq+u2
+keLIKJofbHZS4AIgO12+Flxj9X6XwL2z1g9G6JoOHKJMgZjcmRiTDwib3Vs=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Heiman_Matter_Test_PAA_vid_0x120B.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Heiman_Matter_Test_PAA_vid_0x120B.der
index d8b27845f7f7f4..847702d803dd96 100644
Binary files a/credentials/development/paa-root-certs/dcld_mirror_CN_Heiman_Matter_Test_PAA_vid_0x120B.der and b/credentials/development/paa-root-certs/dcld_mirror_CN_Heiman_Matter_Test_PAA_vid_0x120B.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Heiman_Matter_Test_PAA_vid_0x120B.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Heiman_Matter_Test_PAA_vid_0x120B.pem
index 82397ca822460f..e48f37c788e769 100644
--- a/credentials/development/paa-root-certs/dcld_mirror_CN_Heiman_Matter_Test_PAA_vid_0x120B.pem
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Heiman_Matter_Test_PAA_vid_0x120B.pem
@@ -1,12 +1,12 @@
-----BEGIN CERTIFICATE-----
-MIIBzDCCAXKgAwIBAgIIXtY+YtAm944wCgYIKoZIzj0EAwIwNzEfMB0GA1UEAwwW
+MIIBzDCCAXKgAwIBAgIIeBp2agxIP/cwCgYIKoZIzj0EAwIwNzEfMB0GA1UEAwwW
SGVpbWFuIE1hdHRlciBUZXN0IFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEyMEIwIBcN
MjEwNjI4MTQyMzQzWhgPOTk5OTEyMzEyMzU5NTlaMDcxHzAdBgNVBAMMFkhlaW1h
biBNYXR0ZXIgVGVzdCBQQUExFDASBgorBgEEAYKifAIBDAQxMjBCMFkwEwYHKoZI
-zj0CAQYIKoZIzj0DAQcDQgAE3giOwaFlfhbRss7S+v70G1rQc6UdkSJk3u02DxuW
-j3kXzq59tH8c3jA6NM7gOWe3sl6Gz7aLGUEzt6I0BMqKVKNmMGQwEgYDVR0TAQH/
-BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBqL17cLDtAEM0TS
-EEI1VEYpx0VpMB8GA1UdIwQYMBaAFBqL17cLDtAEM0TSEEI1VEYpx0VpMAoGCCqG
-SM49BAMCA0gAMEUCIExYnMl3qsXwJN1nCAC1D+D3i+L6NMOf0kJiLDHG6OUHAiEA
-xoj89D0kF6k9McvsPv8yhnj0vb7gK7Ivyd1iKD/PLnc=
+zj0CAQYIKoZIzj0DAQcDQgAEHb6i51snz580U7Mlf1tBxGFzICjQsusBJr5J8bUk
+ScUQCXneYwit2d+z7R6Bva08lXtcJTihNimQtSNdzocNZqNmMGQwEgYDVR0TAQH/
+BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFO0U/qg8IUbP88ec
+H/NbtS88zUcsMB8GA1UdIwQYMBaAFO0U/qg8IUbP88ecH/NbtS88zUcsMAoGCCqG
+SM49BAMCA0gAMEUCIQCW5s+jZLJjwIMfHQewTMMco10iLxwjFIHD3a+mWLkmfwIg
+UQbNy0s2bmdT4E22rbonNOVoEUxHZPff06DPj1XoMbE=
-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Hisense_Matter_Test_PAA_vid_0x138C.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Hisense_Matter_Test_PAA_vid_0x138C.der
new file mode 100644
index 00000000000000..cedc9b0ec9dc8a
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Hisense_Matter_Test_PAA_vid_0x138C.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Hisense_Matter_Test_PAA_vid_0x138C.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Hisense_Matter_Test_PAA_vid_0x138C.pem
new file mode 100644
index 00000000000000..89c355970a2d53
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Hisense_Matter_Test_PAA_vid_0x138C.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByzCCAXGgAwIBAgIHWTEIWHo8azAKBggqhkjOPQQDAjA4MSAwHgYDVQQDDBdI
+aXNlbnNlIE1hdHRlciBUZXN0IFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzOEMwHhcN
+MjAxMDE1MTQyMzQzWhcNNDAxMDE1MTQyMzQyWjA4MSAwHgYDVQQDDBdIaXNlbnNl
+IE1hdHRlciBUZXN0IFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzOEMwWTATBgcqhkjO
+PQIBBggqhkjOPQMBBwNCAAT0PMURtez71TnOX+LOjgn06SVFYCWWBqntBO6VU4/R
+d2BiGyYIVlUZwtFMkXa36GxGB1DbilANXo2MueA7QQjzo2YwZDASBgNVHRMBAf8E
+CDAGAQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUEH9TeRqSz+qtiFfW
+8REWRiaVOfAwHwYDVR0jBBgwFoAUEH9TeRqSz+qtiFfW8REWRiaVOfAwCgYIKoZI
+zj0EAwIDSAAwRQIhAP1ON6Rt6LEHe+UoLLlmX5LA1y38gT6ij59N04bbXvZqAiBn
+OQnyU4sNOn5zqUVFI3V+HyBs0Ro89hKNkjzWzq1w9g==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.der b/credentials/development/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.der
new file mode 100644
index 00000000000000..36dca99ce22cd9
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.pem
new file mode 100644
index 00000000000000..5039036523762b
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBzDCCAXOgAwIBAgIQRr59/poXhxyqM2WzNmpEZzAKBggqhkjOPQQDAjA1MR0w
+GwYDVQQDDBRIb29SaWkgTWF0dGVyIFBBQSBHMTEUMBIGCisGAQQBgqJ8AgEMBDEz
+NTEwIBcNMjMwMzE2MDg0OTQ0WhgPMzAyMjA3MTcwOTQ5NDRaMDUxHTAbBgNVBAMM
+FEhvb1JpaSBNYXR0ZXIgUEFBIEcxMRQwEgYKKwYBBAGConwCAQwEMTM1MTBZMBMG
+ByqGSM49AgEGCCqGSM49AwEHA0IABGu+QUB48KWjlQvmqlkrk+PFlgLwd7lhfJ+W
+bCMjStSUC1dZXnN/L4SLfRAigweqnZDq4yDfZxGhRnbXIg20jGKjYzBhMA8GA1Ud
+EwEB/wQFMAMBAf8wHQYDVR0OBBYEFLcW1z8tZsZ/eIzpwBETOgpaErH1MA4GA1Ud
+DwEB/wQEAwIBhjAfBgNVHSMEGDAWgBS3Ftc/LWbGf3iM6cAREzoKWhKx9TAKBggq
+hkjOPQQDAgNHADBEAiBPO4TUQTIwX9YZOMtMI1otjqGDrXa3V4DDGpRAv5DGjQIg
+UdnJk5rtZFFYg/pH3paCCyPUx9hEsq9+XzyXzBNt+Jo=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_IKEA_of_Sweden_Matter_Test_PAA_vid_0x117C.der b/credentials/development/paa-root-certs/dcld_mirror_CN_IKEA_of_Sweden_Matter_Test_PAA_vid_0x117C.der
new file mode 100644
index 00000000000000..cf04c756f4e498
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_IKEA_of_Sweden_Matter_Test_PAA_vid_0x117C.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_IKEA_of_Sweden_Matter_Test_PAA_vid_0x117C.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_IKEA_of_Sweden_Matter_Test_PAA_vid_0x117C.pem
new file mode 100644
index 00000000000000..eb30885d4adab8
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_IKEA_of_Sweden_Matter_Test_PAA_vid_0x117C.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB3DCCAYKgAwIBAgIIFflOEA1x730wCgYIKoZIzj0EAwIwPzEnMCUGA1UEAwwe
+SUtFQSBvZiBTd2VkZW4gTWF0dGVyIFRlc3QgUEFBMRQwEgYKKwYBBAGConwCAQwE
+MTE3QzAgFw0yMzA1MjIxMzAwMDBaGA85OTk5MTIzMTIzNTk1OVowPzEnMCUGA1UE
+AwweSUtFQSBvZiBTd2VkZW4gTWF0dGVyIFRlc3QgUEFBMRQwEgYKKwYBBAGConwC
+AQwEMTE3QzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABLpE/ClS8ZsYRKgSYx8Y
+WzaspEJFtz8UDIgbk+REYaeF5qbSTVI9mbtH3sEna4XvxbPjcxxxj/nNdbah3p7C
+tt+jZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB0GA1Ud
+DgQWBBT6c/I0BQ9C1Rciju+qbuFKC+Yn9zAfBgNVHSMEGDAWgBT6c/I0BQ9C1Rci
+ju+qbuFKC+Yn9zAKBggqhkjOPQQDAgNIADBFAiA/DmTWdAlVGyH/CEDD0oYTDdOt
+o866a8MaGU31KLOdugIhAPtSM1PZ+8H+CMhOQPamczksKHZjQiNsKvmJxK5h0ALU
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Kasa_Matter_PAA_vid_0x1391.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Kasa_Matter_PAA_vid_0x1391.der
new file mode 100644
index 00000000000000..134fbb01f8fc4a
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Kasa_Matter_PAA_vid_0x1391.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Kasa_Matter_PAA_vid_0x1391.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Kasa_Matter_PAA_vid_0x1391.pem
new file mode 100644
index 00000000000000..1578cb8b04636c
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Kasa_Matter_PAA_vid_0x1391.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBvzCCAWSgAwIBAgIIQZCTp/8AkHgwCgYIKoZIzj0EAwIwMDEYMBYGA1UEAwwP
+S2FzYSBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM5MTAgFw0yMjExMDMx
+NDIzNDNaGA85OTk5MTIzMTIzNTk1OVowMDEYMBYGA1UEAwwPS2FzYSBNYXR0ZXIg
+UEFBMRQwEgYKKwYBBAGConwCAQwEMTM5MTBZMBMGByqGSM49AgEGCCqGSM49AwEH
+A0IABFcDxlEI/cWsbO5KrwHFCdr5q/LsDk7v8U/6e6BMuHegByEgnavT7A0FqM7f
+3rhBFrM6lPzceCuhrLwASsDZcgqjZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYD
+VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBQ1Z89ZefZaomCA9PHJWq1uiVGdLzAfBgNV
+HSMEGDAWgBQ1Z89ZefZaomCA9PHJWq1uiVGdLzAKBggqhkjOPQQDAgNJADBGAiEA
+nMzUHVyjTvsLuBycTO4x1cvqNn9yJeHDqrmpBk7SjO0CIQDxjC9RCLIMTjFoOMiT
+e2ziOfYvaGnKzXdGQja5pSfmog==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.der
new file mode 100644
index 00000000000000..fe7f2f9923eecb
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.pem
new file mode 100644
index 00000000000000..96e43d9d35b9b3
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.pem
@@ -0,0 +1,11 @@
+-----BEGIN CERTIFICATE-----
+MIIBqDCCAU6gAwIBAgIQF0rI1t9Ic45LCbMNF4Ig3zAKBggqhkjOPQQDAjAhMR8w
+HQYDVQQDExZLdWRlbHNraSBNYXR0ZXIgUEFBIDAxMCAXDTIzMDEyNTEzMTkyMVoY
+Dzk5OTkxMjMxMjM1OTU5WjAhMR8wHQYDVQQDExZLdWRlbHNraSBNYXR0ZXIgUEFB
+IDAxMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwU6lHfS8xzeab2fOJgPCq6o8
+7E/oi4EoNS8ntrPSwVzeuZd/szyjSuuhQez8ivkcUBMwYF+7iAjEvYKMIKEVB6Nm
+MGQwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYE
+FKYHw2B7cVDjYiqwuoiebLw/xVL5MB8GA1UdIwQYMBaAFKYHw2B7cVDjYiqwuoie
+bLw/xVL5MAoGCCqGSM49BAMCA0gAMEUCID5hu0qxMVEDtZ46tVZ9cSY1SwuAP4VB
+FvxrqRS8y34sAiEA+fpUqi2nQF5Xk4lJwOPg04W32kBrYMiagfESVLZLqPM=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_Test_PAA_01.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_Test_PAA_01.der
new file mode 100644
index 00000000000000..ec905c598f9e13
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_Test_PAA_01.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_Test_PAA_01.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_Test_PAA_01.pem
new file mode 100644
index 00000000000000..2189c11438d983
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_Test_PAA_01.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBsjCCAVigAwIBAgIQRgSsLyNhMqhGALfzM1CguzAKBggqhkjOPQQDAjAmMSQw
+IgYDVQQDExtLdWRlbHNraSBNYXR0ZXIgVGVzdCBQQUEgMDEwIBcNMjMwMjI4MTIz
+MjQ2WhgPOTk5OTEyMzEyMzU5NTlaMCYxJDAiBgNVBAMTG0t1ZGVsc2tpIE1hdHRl
+ciBUZXN0IFBBQSAwMTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABOOPj5zLNufR
+U1QKtnU0bU1/Yj/uZZ25OQ3HvLDBAtpxbMeNPb320lQCWgksB0Au2UQopGJuHEQk
+aEqhP0ZfPnCjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEB
+MB0GA1UdDgQWBBRDz3O+gUeiC4Ei69h6HbfGilx2czAfBgNVHSMEGDAWgBRDz3O+
+gUeiC4Ei69h6HbfGilx2czAKBggqhkjOPQQDAgNIADBFAiARH/gy6+IAVaSKeYe+
+Ht4Opiz56ck1cfZXIQ4QdZVk0AIhAN96WWJkrvCfJf5lD5WSZCqXncMKfi11mELj
+khR4IHhv
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Kwikset_Matter_Test_PAA_vid_0x1421.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Kwikset_Matter_Test_PAA_vid_0x1421.der
new file mode 100644
index 00000000000000..8fb00393462972
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Kwikset_Matter_Test_PAA_vid_0x1421.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Kwikset_Matter_Test_PAA_vid_0x1421.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Kwikset_Matter_Test_PAA_vid_0x1421.pem
new file mode 100644
index 00000000000000..ff886b9b043230
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Kwikset_Matter_Test_PAA_vid_0x1421.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBsjCCAVegAwIBAgIRAJnC0tA+L5QzoIwineuTXvwwCgYIKoZIzj0EAwIwODEg
+MB4GA1UEAwwXS3dpa3NldCBNYXR0ZXIgVGVzdCBQQUExFDASBgorBgEEAYKifAIB
+DAQxNDIxMB4XDTIzMDQxOTE3MDIwMFoXDTI0MDQxODE4MDIwMFowODEgMB4GA1UE
+AwwXS3dpa3NldCBNYXR0ZXIgVGVzdCBQQUExFDASBgorBgEEAYKifAIBDAQxNDIx
+MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAED//Uo3C9Q4xlZEUeAhcKl+HtNDDj
+gg9IwI4iOx3YYvn93TymtcAtrPzCiIHzBkmB16pWG0fUDiHt2L3zskmfNaNCMEAw
+DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUYrF33v1anMNdkZCg4PX06ezoS+Ew
+DgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA0kAMEYCIQDOits8OE9aPTbQ1xYH
+UuycpioMkaptvaGZ2ZDYmLtjSAIhAKes3U/GsZ72mhK7ff5tq6sJAX03eE5cmpCu
+DTNRLr/6
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_LEEDARSON-MATTER-PAA_vid_0x1168.der b/credentials/development/paa-root-certs/dcld_mirror_CN_LEEDARSON-MATTER-PAA_vid_0x1168.der
new file mode 100644
index 00000000000000..2a8ac3010cd8b6
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_LEEDARSON-MATTER-PAA_vid_0x1168.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_LEEDARSON-MATTER-PAA_vid_0x1168.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_LEEDARSON-MATTER-PAA_vid_0x1168.pem
new file mode 100644
index 00000000000000..e7dfdb13a33b12
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_LEEDARSON-MATTER-PAA_vid_0x1168.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBzTCCAXOgAwIBAgIQJVXK8CXBFQX15w1K3uF2UDAKBggqhkjOPQQDAjA1MR0w
+GwYDVQQDDBRMRUVEQVJTT04tTUFUVEVSLVBBQTEUMBIGCisGAQQBgqJ8AgEMBDEx
+NjgwIBcNMjIxMTA4MDgwNDUwWhgPMjUyMjExMDgwOTA0NTBaMDUxHTAbBgNVBAMM
+FExFRURBUlNPTi1NQVRURVItUEFBMRQwEgYKKwYBBAGConwCAQwEMTE2ODBZMBMG
+ByqGSM49AgEGCCqGSM49AwEHA0IABMM9d54nEwgCUOdih2ryUPJrqMxqfAoalp0o
+KH4+7GX5PPBxt9qRdHHZx8BN++vNXnrQguTq6dKG0i4T9gFmQeGjYzBhMA8GA1Ud
+EwEB/wQFMAMBAf8wHQYDVR0OBBYEFHKmOjFumjyuFSmc/46Mx/qzh9GFMA4GA1Ud
+DwEB/wQEAwIBhjAfBgNVHSMEGDAWgBRypjoxbpo8rhUpnP+OjMf6s4fRhTAKBggq
+hkjOPQQDAgNIADBFAiEAvuDxdzYT3mtHhACHOebgtZXkmhBTnWsuXhWg8UZslJ8C
+IAoeQhjElDIVP8gUvj0ziX7SpK9i/DNlYaBrUWQ3iB0U
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_LGE_Matter_Test_PAA__vid_0x102E_vid_0x102E.der b/credentials/development/paa-root-certs/dcld_mirror_CN_LGE_Matter_Test_PAA__vid_0x102E_vid_0x102E.der
new file mode 100644
index 00000000000000..d9585e2bf1f509
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_LGE_Matter_Test_PAA__vid_0x102E_vid_0x102E.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_LGE_Matter_Test_PAA__vid_0x102E_vid_0x102E.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_LGE_Matter_Test_PAA__vid_0x102E_vid_0x102E.pem
new file mode 100644
index 00000000000000..ba6e69a499fd6e
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_LGE_Matter_Test_PAA__vid_0x102E_vid_0x102E.pem
@@ -0,0 +1,13 @@
+-----BEGIN CERTIFICATE-----
+MIIB3TCCAYSgAwIBAgIIVEzMeyxCyT0wCgYIKoZIzj0EAwIwQDEoMCYGA1UEAwwf
+TEdFIE1hdHRlciBUZXN0IFBBQSwgdmlkPTB4MTAyRTEUMBIGCisGAQQBgqJ8AgEM
+BDEwMkUwIBcNMjMwMjEzMDAwMDAwWhgPMjI5NjExMjcyMzU5NTlaMEAxKDAmBgNV
+BAMMH0xHRSBNYXR0ZXIgVGVzdCBQQUEsIHZpZD0weDEwMkUxFDASBgorBgEEAYKi
+fAIBDAQxMDJFMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7DONCnddZC9Dkmfk
+DovQ/cG3GI7fqwgAI6q4OFr5Ae5NkXvx2r7jCeV3EoXVWb/vV2jEQp9Ml4C/Su18
+IcOVnaNmMGQwEgYDVR0TAQH/BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMCAQYwHQYD
+VR0OBBYEFE6MxY9NCkupe7NqlHgJwNz8JQHVMB8GA1UdIwQYMBaAFE6MxY9NCkup
+e7NqlHgJwNz8JQHVMAoGCCqGSM49BAMCA0cAMEQCIC24sGvLyGSQ1XvFAZaEZ1WA
+NJ6yJZW4XeeWEXveG+AlAiAM1CGGyOMswyjbZrNL7+cDyB1b22QXlyduLCI9mtZs
+Jg==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Legrand_Group_Matter_PAA_vid_0x1021.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Legrand_Group_Matter_PAA_vid_0x1021.der
new file mode 100644
index 00000000000000..e8b9ed7e981c09
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Legrand_Group_Matter_PAA_vid_0x1021.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Legrand_Group_Matter_PAA_vid_0x1021.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Legrand_Group_Matter_PAA_vid_0x1021.pem
new file mode 100644
index 00000000000000..347ced27f3f81b
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Legrand_Group_Matter_PAA_vid_0x1021.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB3DCCAYKgAwIBAgIUVyXsUE9uwOsz3WIzCwpjyxHpuRowCgYIKoZIzj0EAwIw
+OTEhMB8GA1UEAwwYTGVncmFuZCBHcm91cCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGC
+onwCAQwEMTAyMTAgFw0yMjEwMTExODQzMjNaGA8yMDc5MDYwNTIzNTk1OVowOTEh
+MB8GA1UEAwwYTGVncmFuZCBHcm91cCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwC
+AQwEMTAyMTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABNxf8IrVTUSMZIC1mO/p
+NeEvJxiRi+luZmMCydMzWZ4JTWz5ue96T1HbsTmrn8BCnHz7zwE3d1wuxtEfSoTc
+WpyjZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB8GA1Ud
+IwQYMBaAFAtRB7zeDTBB1iaJGMp9epKGQqHxMB0GA1UdDgQWBBQLUQe83g0wQdYm
+iRjKfXqShkKh8TAKBggqhkjOPQQDAgNIADBFAiAX46VlfsA+SgimfSPbrm3EFRrV
+6yOCBGcyOQaXWZ9C5wIhANukApPkPni8AEEtZBXcTlahRBIYochPoxeG7dXQOZK0
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Leviton_PAA_vid_0x109B.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Leviton_PAA_vid_0x109B.der
new file mode 100644
index 00000000000000..de608b97680b8e
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Leviton_PAA_vid_0x109B.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Leviton_PAA_vid_0x109B.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Leviton_PAA_vid_0x109B.pem
new file mode 100644
index 00000000000000..a3803141bd598a
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Leviton_PAA_vid_0x109B.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBtjCCAVygAwIBAgIIBP4h4RYCMRAwCgYIKoZIzj0EAwIwLDEUMBIGA1UEAwwL
+TGV2aXRvbiBQQUExFDASBgorBgEEAYKifAIBDAQxMDlCMCAXDTIwMTIwMTEyMDAw
+MFoYDzIwNzIwMzIwMTE1OTU5WjAsMRQwEgYDVQQDDAtMZXZpdG9uIFBBQTEUMBIG
+CisGAQQBgqJ8AgEMBDEwOUIwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQ9Qd9T
+8JmqN8a5wH/sdf8JY34NsPOTuroJPTKE+1MyxioXHgnCQXxReVbwPoFqjjC/BoAM
+KSQETnG99up9mZ9vo2YwZDASBgNVHRMBAf8ECDAGAQH/AgEBMA4GA1UdDwEB/wQE
+AwIBBjAdBgNVHQ4EFgQUjpWxwLYQUZPbQbZr70NOLDiiemcwHwYDVR0jBBgwFoAU
+jpWxwLYQUZPbQbZr70NOLDiiemcwCgYIKoZIzj0EAwIDSAAwRQIgMm6kWZJlebL3
+fJUz4VEpGC5bnh9ozY0RhR4Pki7SrJoCIQDISZBPSSKqFc9i74MIToSUW2vVbW6w
+OGAuzK6lwnvhtQ==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.der
new file mode 100644
index 00000000000000..ec28a7968ee8a6
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.pem
new file mode 100644
index 00000000000000..6983f6ee8628c0
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB2zCCAYKgAwIBAgIUbUYhommf/eGmBpGVCftameBnrS0wCgYIKoZIzj0EAwIw
+OjEiMCAGA1UEAwwZTG9uZ2FuLmxpbmsgTWF0dGVyIFBBQSAwMTEUMBIGCisGAQQB
+gqJ8AgEMBDEzMUYwHhcNMjMwMTEyMTAxMTQ1WhcNMzMwMTA5MTAxMTQ1WjA6MSIw
+IAYDVQQDDBlMb25nYW4ubGluayBNYXR0ZXIgUEFBIDAxMRQwEgYKKwYBBAGConwC
+AQwEMTMxRjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABDdOC+IV2GZJqU8viqtJ
+ugH9RYp7m9q8j9Apy0VrdNOpZFJlMsvhWMoCavoiU8uQLetb7cWVP0uxWtngmxT2
+bSmjZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB0GA1Ud
+DgQWBBTBIEsJvP4s2mPOm34wgoTLxqJ4RzAfBgNVHSMEGDAWgBTBIEsJvP4s2mPO
+m34wgoTLxqJ4RzAKBggqhkjOPQQDAgNHADBEAiBgrbitMHgD7Hj2gwQKSlXj8wUF
+d+GiHTrCCA127lb8VQIgBrK/uzjn8vWR5uf1iTShsy0JrIQ/kIjuyL/qF1/otGY=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Lorex_PAA_CN_vid_0x1419.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Lorex_PAA_CN_vid_0x1419.der
new file mode 100644
index 00000000000000..5e3a3a2517d18c
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Lorex_PAA_CN_vid_0x1419.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Lorex_PAA_CN_vid_0x1419.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Lorex_PAA_CN_vid_0x1419.pem
new file mode 100644
index 00000000000000..d86488f7e347b7
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Lorex_PAA_CN_vid_0x1419.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBuDCCAV6gAwIBAgIIZ4SlRvkMoK8wCgYIKoZIzj0EAwIwLTEVMBMGA1UEAwwM
+TG9yZXggUEFBIENOMRQwEgYKKwYBBAGConwCAQwEMTQxOTAgFw0yMzAyMDExMDAw
+MDBaGA85OTk5MTIzMTIzNTk1OVowLTEVMBMGA1UEAwwMTG9yZXggUEFBIENOMRQw
+EgYKKwYBBAGConwCAQwEMTQxOTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEKB
+kkZiz8LNl9mcCVoxEkALKqKfCzFK0SgMgrl+5SAsODyHvCtBxHUieItAzaYeyrOl
+NJ49LIDbYvVEkUZXXq2jZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/
+BAQDAgEGMB0GA1UdDgQWBBSoWYgw4G48xskKpbuddyb9n2JlTTAfBgNVHSMEGDAW
+gBSoWYgw4G48xskKpbuddyb9n2JlTTAKBggqhkjOPQQDAgNIADBFAiEA1wQR6wTG
+jnwO6HItf1ee7EwUjJYjU/+LRR9p7iQl25wCIGaWVTDFb9t3zdJfrCzs9xnKRx/H
+HPVIXt0hrjKdsRBx
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.der
new file mode 100644
index 00000000000000..1945e372e51b38
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.pem
new file mode 100644
index 00000000000000..659757913d14e6
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB0zCCAXigAwIBAgIEEAAACDAKBggqhkjOPQQDAjA8MQswCQYDVQQGEwJDTjEU
+MBIGCisGAQQBgqJ8AgEMBDEzM0YxFzAVBgNVBAMMDk1hdHRlciBBU1IgUEFBMCAX
+DTIyMTIwODA1NDkyMloYDzIxMjIxMTE0MDU0OTIyWjA8MQswCQYDVQQGEwJDTjEU
+MBIGCisGAQQBgqJ8AgEMBDEzM0YxFzAVBgNVBAMMDk1hdHRlciBBU1IgUEFBMFkw
+EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmhOGoCqUtvdQvc8380R0/+JMYW7t3Rnu
+Hn2jxPOWT4P33OuhT5ql/IW2XqnmVKAff83IeJn0edePIhLW8TR2UqNmMGQwHwYD
+VR0jBBgwFoAU7+HwYTN8f14mdv6IU0N9vwO+gMAwEgYDVR0TAQH/BAgwBgEB/wIB
+ATAdBgNVHQ4EFgQU7+HwYTN8f14mdv6IU0N9vwO+gMAwDgYDVR0PAQH/BAQDAgEG
+MAoGCCqGSM49BAMCA0kAMEYCIQCHXUwKU8mFRyERBBw3vzzuFgobf2B8eqNqBHT5
+v8vpfAIhAO6jpKrVU36J+eiYVI8fc3aqjj0GxhlW6dxL6LDdBTmZ
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Certification_and_Testing_CA_O_CSA_vid_0xC5A0.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Certification_and_Testing_CA_O_CSA_vid_0xC5A0.der
new file mode 100644
index 00000000000000..3a75a3657b03a6
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Certification_and_Testing_CA_O_CSA_vid_0xC5A0.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Certification_and_Testing_CA_O_CSA_vid_0xC5A0.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Certification_and_Testing_CA_O_CSA_vid_0xC5A0.pem
new file mode 100644
index 00000000000000..0cbffacff83ba4
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Certification_and_Testing_CA_O_CSA_vid_0xC5A0.pem
@@ -0,0 +1,13 @@
+-----BEGIN CERTIFICATE-----
+MIICATCCAaegAwIBAgIHY3Nhcm9vdDAKBggqhkjOPQQDAjBSMQwwCgYDVQQKDAND
+U0ExLDAqBgNVBAMMI01hdHRlciBDZXJ0aWZpY2F0aW9uIGFuZCBUZXN0aW5nIENB
+MRQwEgYKKwYBBAGConwCAQwEQzVBMDAgFw0yMjA3MDcxOTI4MDRaGA8yMTIyMDYx
+MzE5MjgwNFowUjEMMAoGA1UECgwDQ1NBMSwwKgYDVQQDDCNNYXR0ZXIgQ2VydGlm
+aWNhdGlvbiBhbmQgVGVzdGluZyBDQTEUMBIGCisGAQQBgqJ8AgEMBEM1QTAwWTAT
+BgcqhkjOPQIBBggqhkjOPQMBBwNCAAQ4SjrDql2+y3IP5iEdPK1IYm/3EaCkkp+t
+2GD44nf/wN4fPrYzejSEe1o6BW6ocQ6Td+7t7iUXA/3ZNQEly45Io2YwZDASBgNV
+HRMBAf8ECDAGAQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUl+Rp0MUE
+FMJvxwH3fpR3OQmN9qUwHwYDVR0jBBgwFoAUl+Rp0MUEFMJvxwH3fpR3OQmN9qUw
+CgYIKoZIzj0EAwIDSAAwRQIgearlB0fCJ49UoJ6xwKPdlPEopCOL9jVCviODEleI
++mQCIQDvvDCKi7kvj4R4BoFS4BVZGCk4zJ84W4tfTTfu89lRbQ==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_1_O_ubisys_technologies_GmbH_vid_0x10F2.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_1_O_ubisys_technologies_GmbH_vid_0x10F2.der
new file mode 100644
index 00000000000000..70bd97aef43fff
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_1_O_ubisys_technologies_GmbH_vid_0x10F2.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_1_O_ubisys_technologies_GmbH_vid_0x10F2.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_1_O_ubisys_technologies_GmbH_vid_0x10F2.pem
new file mode 100644
index 00000000000000..c8585a407ff55d
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_1_O_ubisys_technologies_GmbH_vid_0x10F2.pem
@@ -0,0 +1,13 @@
+-----BEGIN CERTIFICATE-----
+MIICBzCCAa6gAwIBAgIQTnUMFODg5jtpD4m9eotV3TAKBggqhkjOPQQDAjBRMSEw
+HwYDVQQKDBh1YmlzeXMgdGVjaG5vbG9naWVzIEdtYkgxFjAUBgNVBAMMDU1hdHRl
+ciBQQUEgIzExFDASBgorBgEEAYKifAIBDAQxMEYyMCAXDTIyMTEyNTEyNTYxN1oY
+Dzk5OTkxMjMxMjM1OTU5WjBRMSEwHwYDVQQKDBh1YmlzeXMgdGVjaG5vbG9naWVz
+IEdtYkgxFjAUBgNVBAMMDU1hdHRlciBQQUEgIzExFDASBgorBgEEAYKifAIBDAQx
+MEYyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEdPTdLt56VwHY8+KZ0MuFI4QQ
+LJh7uV0572NtDQJx+riMmyAKt/2w1m9XBbecxhPIkpj9ml+/aaWChJoFQtnUA6Nm
+MGQwEgYDVR0TAQH/BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE
+FKXRsL+UiUhnmYbXBhFNlIr6h/kCMB8GA1UdIwQYMBaAFKXRsL+UiUhnmYbXBhFN
+lIr6h/kCMAoGCCqGSM49BAMCA0cAMEQCIEMl/Ej0pjTjONuPq1Du45cZJpGmUq2l
+UZ7zhejPZVWvAiACI2re2e5TA+p3C+l4w2sfn6LWt3W2UsAACJ1bJit/3w==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.der
new file mode 100644
index 00000000000000..980a599f3b6eec
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.pem
new file mode 100644
index 00000000000000..4db28c632a2459
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.pem
@@ -0,0 +1,13 @@
+-----BEGIN CERTIFICATE-----
+MIIB7jCCAZOgAwIBAgIBATAKBggqhkjOPQQDAjBLMQswCQYDVQQGEwJVUzEPMA0G
+A1UECgwGR29vZ2xlMRUwEwYDVQQDDAxNYXR0ZXIgUEFBIDIxFDASBgorBgEEAYKi
+fAIBDAQ2MDA2MCAXDTIyMTIxNTAwMjIzMVoYDzIxMjIxMTIxMDAyMjMxWjBLMQsw
+CQYDVQQGEwJVUzEPMA0GA1UECgwGR29vZ2xlMRUwEwYDVQQDDAxNYXR0ZXIgUEFB
+IDIxFDASBgorBgEEAYKifAIBDAQ2MDA2MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcD
+QgAEfBavdss9ivpYBX1TrjprN8ur+Mlw79ArbMSsF9yjKJZToX1qU52g530rGMyV
+Um4/nSvDSHZLq3Mh/dYlsY57rqNmMGQwEgYDVR0TAQH/BAgwBgEB/wIBATAOBgNV
+HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFHq57adv6ctkYnUybdFFCLgA+OHIMB8GA1Ud
+IwQYMBaAFHq57adv6ctkYnUybdFFCLgA+OHIMAoGCCqGSM49BAMCA0kAMEYCIQCJ
+bSWN3tzLKE37QsmQa9LUUz58TKF8h6Vbx8oKNQDJCgIhAMWZC7jGeR9PMO/dGNJy
+/FRDJTm2hVUYrvzOx74YAIew
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Signify_PAA_1_vid_0x100B.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Signify_PAA_1_vid_0x100B.der
new file mode 100644
index 00000000000000..582eef1d8c97d6
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Signify_PAA_1_vid_0x100B.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Signify_PAA_1_vid_0x100B.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Signify_PAA_1_vid_0x100B.pem
new file mode 100644
index 00000000000000..c86cb93cc7660d
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Signify_PAA_1_vid_0x100B.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBrTCCAVOgAwIBAgIRAPoJEqfBRt1UehNPUgdd+AYwCgYIKoZIzj0EAwIwNTEd
+MBsGA1UEAwwUTWF0dGVyIFNpZ25pZnkgUEFBIDExFDASBgorBgEEAYKifAIBDAQx
+MDBCMCAXDTIyMTIwNzE0MDMxMVoYDzk5OTkxMjMxMjM1OTU5WjA1MR0wGwYDVQQD
+DBRNYXR0ZXIgU2lnbmlmeSBQQUEgMTEUMBIGCisGAQQBgqJ8AgEMBDEwMEIwWTAT
+BgcqhkjOPQIBBggqhkjOPQMBBwNCAARnPmL7AcztXBr4UhQcu6Y2EHzCPbNmJtyz
+v1hjHQpYNv9k3MmVihOgBTqc4cUoyiYHpyILqbx/I68sQNkN4H29o0IwQDAPBgNV
+HRMBAf8EBTADAQH/MB0GA1UdDgQWBBQQ3kVZvKqAgoZ4ecCaf47sioh+9zAOBgNV
+HQ8BAf8EBAMCAYYwCgYIKoZIzj0EAwIDSAAwRQIgN6ZuBdfkHctkuLAn4kbGM+O+
+sEUneAk1cFzwKQpL0ZkCIQCykokHD3R5+0+ZGLtXkjCKqRVEX62YklSjJ7HRJa9c
+7g==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.der
new file mode 100644
index 00000000000000..9d6fa54a028993
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.pem
new file mode 100644
index 00000000000000..3b3d13da8cc0a3
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB2DCCAX2gAwIBAgIQIgzBEIyd2pBoydOAodEFUzAKBggqhkjOPQQDAjA6MSIw
+IAYDVQQDDBlNYXR0ZXIgVWFzY2VudCBQQUEgMHgxNDAwMRQwEgYKKwYBBAGConwC
+AQwEMTQwMDAgFw0yMzAyMjQwMjEwMjJaGA8yMTIzMDEzMTAzMTAyMlowOjEiMCAG
+A1UEAwwZTWF0dGVyIFVhc2NlbnQgUEFBIDB4MTQwMDEUMBIGCisGAQQBgqJ8AgEM
+BDE0MDAwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQGF1kPgQS3bN15r7TGypBU
+kbVb3rENZJT+Yd1/XghtNsdn16aWuGfbfciNYrYHH3BowOjdDEa7Pg4WslzbQbxI
+o2MwYTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQwg3mJZOCTqLJZ/rbDeAlu
+JWhOmjAOBgNVHQ8BAf8EBAMCAYYwHwYDVR0jBBgwFoAUMIN5iWTgk6iyWf62w3gJ
+biVoTpowCgYIKoZIzj0EAwIDSQAwRgIhAKgXdJqN0msFakfGusUP5rXtjspITudq
+Gq+JB3u3WCcxAiEAx65fSjfiRle2djpp8SunICvCAkVKa386AdSKcXxlCRI=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Meizu_PAA_vid_0x1398.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Meizu_PAA_vid_0x1398.der
new file mode 100644
index 00000000000000..8b2f41875d8e80
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Meizu_PAA_vid_0x1398.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Meizu_PAA_vid_0x1398.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Meizu_PAA_vid_0x1398.pem
new file mode 100644
index 00000000000000..792d0d903d165b
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Meizu_PAA_vid_0x1398.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBsjCCAVigAwIBAgIIL54t0Efq7zwwCgYIKoZIzj0EAwIwKjESMBAGA1UEAwwJ
+TWVpenUgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM5ODAgFw0yMzAyMDExNDIzNDNa
+GA85OTk5MTIzMTIzNTk1OVowKjESMBAGA1UEAwwJTWVpenUgUEFBMRQwEgYKKwYB
+BAGConwCAQwEMTM5ODBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABNGnLcPDgdrP
+PH4Vbu1T61vYqlW8pEkWd6OJ9X+5vYQR7LlawVOg2hjVaG7b712AXlahz+2K0CKC
+JJy0gPXrGOSjZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEG
+MB0GA1UdDgQWBBQqJKRaN+obNEFCOz8Ub8vdMwxUUzAfBgNVHSMEGDAWgBQqJKRa
+N+obNEFCOz8Ub8vdMwxUUzAKBggqhkjOPQQDAgNIADBFAiAw/XQ8Inb7A6mAg3QY
++VDoA61btiJ4XLCoTrTfJBYTWQIhAOHSBqAPIAV+zWfMUCbE//0R1L4qONPx5gow
+LKFBpcEf
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Meross_Matter_PAA_vid_0x1345.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Meross_Matter_PAA_vid_0x1345.der
new file mode 100644
index 00000000000000..e3adb2e269f409
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Meross_Matter_PAA_vid_0x1345.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Meross_Matter_PAA_vid_0x1345.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Meross_Matter_PAA_vid_0x1345.pem
new file mode 100644
index 00000000000000..3896aff3f51a7c
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Meross_Matter_PAA_vid_0x1345.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBwTCCAWigAwIBAgIIEy+0SI9K220wCgYIKoZIzj0EAwIwMjEaMBgGA1UEAwwR
+TWVyb3NzIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxMzQ1MCAXDTIyMTEw
+MTAwMDAwMFoYDzIxMjIxMDA3MjM1OTU5WjAyMRowGAYDVQQDDBFNZXJvc3MgTWF0
+dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzNDUwWTATBgcqhkjOPQIBBggqhkjO
+PQMBBwNCAARv1gvpF64D9mmepNE2vdKg2NS1CWrVnl9Ol5cEFTxDNsfv2vELo9lY
+20tqtA29vmxnw0i0ca0QgW0HjjjbDQoro2YwZDASBgNVHRMBAf8ECDAGAQH/AgEB
+MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUQJdGpD1+8VG2zdignqR2+pvfdWMw
+HwYDVR0jBBgwFoAUQJdGpD1+8VG2zdignqR2+pvfdWMwCgYIKoZIzj0EAwIDRwAw
+RAIgXDpmGQ3lC1TOwzgFE3kajyNCcb2jc8yL8CrWrfln+sMCIHBvg6KH7X52m7nT
+ri9So5ut4XgTf3Mm5oPzEYnl+2c+
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Midea_Group_Matter_PAA_G1_Prod_vid_0x118C.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Midea_Group_Matter_PAA_G1_Prod_vid_0x118C.der
new file mode 100644
index 00000000000000..bb14e504ff7123
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Midea_Group_Matter_PAA_G1_Prod_vid_0x118C.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Midea_Group_Matter_PAA_G1_Prod_vid_0x118C.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Midea_Group_Matter_PAA_G1_Prod_vid_0x118C.pem
new file mode 100644
index 00000000000000..319501a70be056
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Midea_Group_Matter_PAA_G1_Prod_vid_0x118C.pem
@@ -0,0 +1,13 @@
+-----BEGIN CERTIFICATE-----
+MIIB3jCCAYOgAwIBAgIJHNpcgyVSU4SYMAoGCCqGSM49BAMCMD8xJzAlBgNVBAMM
+Hk1pZGVhIEdyb3VwIE1hdHRlciBQQUEgRzEgUHJvZDEUMBIGCisGAQQBgqJ8AgET
+BDExOEMwIBcNMjIxMDMxMTYwMDAwWhgPOTk5OTEyMzEyMzU5NTlaMD8xJzAlBgNV
+BAMMHk1pZGVhIEdyb3VwIE1hdHRlciBQQUEgRzEgUHJvZDEUMBIGCisGAQQBgqJ8
+AgETBDExOEMwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAASkFR7fS3Hfde4xru2n
+E0XNQHjhBXLTzksZZ0DmDheY9AjyIElwzwLEr6UTcMJV9LLzKNiHfbMaJjBQ5kd7
+SuMqo2YwZDASBgNVHRMBAf8ECDAGAQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNV
+HQ4EFgQUqV7nxHJ/ZGOlKUhAVQzor2JfMREwHwYDVR0jBBgwFoAUqV7nxHJ/ZGOl
+KUhAVQzor2JfMREwCgYIKoZIzj0EAwIDSQAwRgIhAKsAXPqJk7j6V+7Ud4J7lq6h
+JrJbypaJSCx0C4ZIpv7RAiEAgFHjdOwkBIifJjgh2ENpgLCbVALwCN1JFxTzx0X2
+7d8=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_ORVIBO_Matter_Test_PAA_vid_0x1219.der b/credentials/development/paa-root-certs/dcld_mirror_CN_ORVIBO_Matter_Test_PAA_vid_0x1219.der
new file mode 100644
index 00000000000000..692e17b35db824
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_ORVIBO_Matter_Test_PAA_vid_0x1219.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_ORVIBO_Matter_Test_PAA_vid_0x1219.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_ORVIBO_Matter_Test_PAA_vid_0x1219.pem
new file mode 100644
index 00000000000000..13ff93d4632e06
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_ORVIBO_Matter_Test_PAA_vid_0x1219.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByzCCAXKgAwIBAgIIXahA4LDaKu0wCgYIKoZIzj0EAwIwNzEfMB0GA1UEAwwW
+T1JWSUJPIE1hdHRlciBUZXN0IFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEyMTkwIBcN
+MjMwNDEyMDkzMDAwWhgPOTk5OTEyMzEyMzU5NTlaMDcxHzAdBgNVBAMMFk9SVklC
+TyBNYXR0ZXIgVGVzdCBQQUExFDASBgorBgEEAYKifAIBDAQxMjE5MFkwEwYHKoZI
+zj0CAQYIKoZIzj0DAQcDQgAEklwJ5gtZAPJXuXlGxeFoED9kMJGCPh7vWnd/muk9
+CDXD4Xy7vMSp2xMkUjmPj7R0S5OCEcKTJiR2Sn0KQdf5QqNmMGQwEgYDVR0TAQH/
+BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFOEaCQgcm3Pf37An
+aHtCMTWFO5pVMB8GA1UdIwQYMBaAFOEaCQgcm3Pf37AnaHtCMTWFO5pVMAoGCCqG
+SM49BAMCA0cAMEQCIEA+KzFUcRhl2tNkj5s36QjlJgQfe8nrVajZ9TM856TYAiAC
+CUAB54ZfaEEyJcK8cmzEid0lB9jxze4lfsZT3OwYdw==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.der b/credentials/development/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.der
new file mode 100644
index 00000000000000..8c2c3e5947e0ff
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.pem
new file mode 100644
index 00000000000000..4f1efc399b642e
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBvTCCAWOgAwIBAgIRALR5sevvUSe9RFYCEgeDQzswCgYIKoZIzj0EAwIwPTET
+MBEGA1UEAwwKUGFuS29yZVBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzMTYxEDAOBgNV
+BAoMB1BhbktvcmUwIBcNMjMwNDE0MDUxOTI4WhgPMjEyMzAzMjEwNjE5MjhaMD0x
+EzARBgNVBAMMClBhbktvcmVQQUExFDASBgorBgEEAYKifAIBDAQxMzE2MRAwDgYD
+VQQKDAdQYW5Lb3JlMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAES5EuELIS1Fr/
+FHhVUN2VVT1P+A7BjHwDKryrB8KBAX63m2cKnc8XiGqlgLISO7L26n7MYE4I4JcB
+v844aPg03aNCMEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUVotIfZ/3up+G
++Xbv4a15BDNXq8MwDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA0gAMEUCIEwO
+wv9LR2IiYBmLqsaH+CSmTC1hpHK/Mxtnr3zHlRYYAiEA5l2A0iXoIPqCxN+yxKVy
+hXP8m8zUz5JEdZR+BlrFLgU=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.der
new file mode 100644
index 00000000000000..7ac6b1dddaf697
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.pem
new file mode 100644
index 00000000000000..b0e30b457cb860
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByDCCAW6gAwIBAgIRAJjDAv4UCH2aIjBKyRuyE40wCgYIKoZIzj0EAwIwMjEa
+MBgGA1UEAwwRUGhhdGVuIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxNDA0
+MCAXDTIzMDIwNjA0NDA1MVoYDzIyMjMxMjMxMjM1OTU5WjAyMRowGAYDVQQDDBFQ
+aGF0ZW4gTWF0dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDE0MDQwWTATBgcqhkjO
+PQIBBggqhkjOPQMBBwNCAAQARiZDxeEXWhJxOhqVex88/53FmxWqrqWCqfZynZS3
+BGXktXGGWIekPfkw/2l+7Kmt5pNJvEm7f2QPNpaWcL6vo2MwYTAPBgNVHRMBAf8E
+BTADAQH/MB0GA1UdDgQWBBSZIOhVuLRljx/ei3gvCbIcRbFBtzAOBgNVHQ8BAf8E
+BAMCAYYwHwYDVR0jBBgwFoAUmSDoVbi0ZY8f3ot4LwmyHEWxQbcwCgYIKoZIzj0E
+AwIDSAAwRQIhAJpLjv9zOxLKWcByT3AZjqmyq/SdfRa3B3aRfV5pWV6jAiAvnEtC
+qHC2NiNvTKHtR0IzLzZJcCN1gNS8PWE7dgPy+g==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Prime_PAA_vid_0x1381.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Prime_PAA_vid_0x1381.der
new file mode 100644
index 00000000000000..e170a9d793a6c7
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Prime_PAA_vid_0x1381.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Prime_PAA_vid_0x1381.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Prime_PAA_vid_0x1381.pem
new file mode 100644
index 00000000000000..23e245be88394f
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Prime_PAA_vid_0x1381.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBuDCCAV6gAwIBAgIRAPp8t3DW0qJfh6CY0/RA7a4wCgYIKoZIzj0EAwIwKjES
+MBAGA1UEAwwJUHJpbWUgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM4MTAgFw0yMjEy
+MjExNzExNDdaGA8yMTIyMTEyNzE4MTE0N1owKjESMBAGA1UEAwwJUHJpbWUgUEFB
+MRQwEgYKKwYBBAGConwCAQwEMTM4MTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IA
+BDJJ3y8N0AoGu1DvdNqz/zjyV/jhrkwb8jRhJw7ZwhutsZFCsHzZWz1lQZpVcF7/
+rt6aKjSzBkjMJ1ufAQfi/iajYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE
+FOe5kbucntBhp8ub8YhkShVjwk4rMA4GA1UdDwEB/wQEAwIBhjAfBgNVHSMEGDAW
+gBTnuZG7nJ7QYafLm/GIZEoVY8JOKzAKBggqhkjOPQQDAgNIADBFAiEA/Xmfa+Ep
+VXkNumbQc5hNJ+UwIimsixaVJFo2nLXVhpICIHFLRTaZHOrElMkyO1i06xXg9Kc+
+ACaL+HKmXiXy94JL
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_QDhisense_Test_PAA_vid_0x138C.der b/credentials/development/paa-root-certs/dcld_mirror_CN_QDhisense_Test_PAA_vid_0x138C.der
new file mode 100644
index 00000000000000..0b294897ad7300
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_QDhisense_Test_PAA_vid_0x138C.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_QDhisense_Test_PAA_vid_0x138C.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_QDhisense_Test_PAA_vid_0x138C.pem
new file mode 100644
index 00000000000000..bb90ea5652f4c1
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_QDhisense_Test_PAA_vid_0x138C.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBxTCCAWqgAwIBAgIIW3/x5c8jVwIwCgYIKoZIzj0EAwIwMzEbMBkGA1UEAwwS
+UURoaXNlbnNlIFRlc3QgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM4QzAgFw0yMzA1
+MjMxMDE0MDVaGA85OTk5MTIzMTIzNTk1OVowMzEbMBkGA1UEAwwSUURoaXNlbnNl
+IFRlc3QgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM4QzBZMBMGByqGSM49AgEGCCqG
+SM49AwEHA0IABMl5YoORvXPcCwh8KV/WRdGS6vuekbJficrCEn3DTJsfHeTLuRii
+3uSeS76dji3KJ+dYmXpu86JEb8Fqup7mvE+jZjBkMBIGA1UdEwEB/wQIMAYBAf8C
+AQEwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTHpAvJ050XHkrXyAnmUEyIVtcZ
+dzAfBgNVHSMEGDAWgBTHpAvJ050XHkrXyAnmUEyIVtcZdzAKBggqhkjOPQQDAgNJ
+ADBGAiEAmYBizbAAtCpDMnw4ga2HAdcXfkLdYmSqB6Jm/kYj7mACIQDNK5Od93KR
+3iJGblbUn8jq5xeVzFihO2sUJu7erBKkPA==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.der
new file mode 100644
index 00000000000000..cd76bfcce5c32a
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.pem
new file mode 100644
index 00000000000000..0b9fe29404930f
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByjCCAXCgAwIBAgIRALmDRJO1vv31wcqYjJYpxZQwCgYIKoZIzj0EAwIwMzEb
+MBkGA1UEAwwSUWlhbnlhbiBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM4
+NzAgFw0yMzAzMTQwODIyNDRaGA85OTk5MTIzMTIzNTk1OVowMzEbMBkGA1UEAwwS
+UWlhbnlhbiBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM4NzBZMBMGByqG
+SM49AgEGCCqGSM49AwEHA0IABAV999uorscml0N9OlulWuvb+6d06vsjmpwKPQd5
+mpaayy4f6ODdbycnNhHUZqxP4jQL8CLk509zlJCyTvX4f16jYzBhMA8GA1UdEwEB
+/wQFMAMBAf8wHQYDVR0OBBYEFDCn/GzW+lrLgn93bjJiB2u4EeQpMA4GA1UdDwEB
+/wQEAwIBhjAfBgNVHSMEGDAWgBQwp/xs1vpay4J/d24yYgdruBHkKTAKBggqhkjO
+PQQDAgNIADBFAiBo6kBk1wcJjH4XYaR6cPOrCOXmbTPk20EzfoaLrXXtrgIhANmh
+IEohtRvlb6URoKv1v3jwfzATeqLNY2eLKBmQjUN8
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.der
new file mode 100644
index 00000000000000..a8e2fad2130542
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.pem
new file mode 100644
index 00000000000000..6261addd938c7c
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB0DCCAXagAwIBAgIUSNDkSyf+uIE4cOtbUuqYbyoZm04wCgYIKoZIzj0EAwIw
+MzEbMBkGA1UEAwwSUXVlY3RlbCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwE
+MTQxMDAgFw0yMzAzMDEwNTIwMDZaGA85OTk5MTIzMTA1MjAwNlowMzEbMBkGA1UE
+AwwSUXVlY3RlbCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTQxMDBZMBMG
+ByqGSM49AgEGCCqGSM49AwEHA0IABPVapB0WnCRdF8JOm6sVjFaklJO9LguJljDA
+wUlj8/udIxdOJ4r3aWcGhLzVsyj2vbrB1A+7eoq+zMLJ+lRAciOjZjBkMB0GA1Ud
+DgQWBBTYzvSYQKNboQDcO+eGtUzaOH4lAjAfBgNVHSMEGDAWgBTYzvSYQKNboQDc
+O+eGtUzaOH4lAjASBgNVHRMBAf8ECDAGAQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAK
+BggqhkjOPQQDAgNIADBFAiEA/+yF17n4XG81nLtV4CP0MWYppGAdN24AipnRdMza
+AIECIFqMfQfNGQGejFSeyaWlhKTsYH5iJ2UdyUmHfKzg3FZV
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.der
new file mode 100644
index 00000000000000..9aec36a9f66d06
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.pem
new file mode 100644
index 00000000000000..9e74ebb26d4dd5
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBwjCCAWigAwIBAgIIMnjf1jSe7A4wCgYIKoZIzj0EAwIwMjEaMBgGA1UEAwwR
+UmFmYWVsIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxMzQ2MCAXDTIzMDIy
+MjAwMDAwMFoYDzIxMjMwMTI4MjM1OTU5WjAyMRowGAYDVQQDDBFSYWZhZWwgTWF0
+dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzNDYwWTATBgcqhkjOPQIBBggqhkjO
+PQMBBwNCAATLDTcieWh6NPzh2K5geCxrrKxV/a/TthvTyDiLa5oUS/M7Wt08l85V
+lYXPhiiidthGI1rCPsYCPgqul0EW/GeYo2YwZDASBgNVHRMBAf8ECDAGAQH/AgEB
+MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUxPfh1bv5nf/R7gF21WgnjOibIBcw
+HwYDVR0jBBgwFoAUxPfh1bv5nf/R7gF21WgnjOibIBcwCgYIKoZIzj0EAwIDSAAw
+RQIgQH90HCbluBm/JPRrkwEmVH1NpzV//gAQwj4A+MROoZgCIQCTKGMkpEd0AUM6
+BeCqOjan+OEarNXoqoOgUaX0rJcY8Q==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Test_PAA_vid_0x1346.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Test_PAA_vid_0x1346.der
new file mode 100644
index 00000000000000..f4cd645aadd0ff
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Test_PAA_vid_0x1346.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Test_PAA_vid_0x1346.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Test_PAA_vid_0x1346.pem
new file mode 100644
index 00000000000000..1f44f6469a5acf
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Rafael_Test_PAA_vid_0x1346.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBvTCCAWSgAwIBAgIIcl/D7qyjsRUwCgYIKoZIzj0EAwIwMDEYMBYGA1UEAwwP
+UmFmYWVsIFRlc3QgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM0NjAgFw0yMzAyMjIw
+MDAwMDBaGA8yMTIzMDEyODIzNTk1OVowMDEYMBYGA1UEAwwPUmFmYWVsIFRlc3Qg
+UEFBMRQwEgYKKwYBBAGConwCAQwEMTM0NjBZMBMGByqGSM49AgEGCCqGSM49AwEH
+A0IABFc7hPLv8B5PI5s5CQ/WYkOWwPyIYctILelqSUzGfW7xmrn9ZtnQ7vLt97WY
+u/ZsoXvEa3ytjDJfiuNYAtHaL+yjZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYD
+VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSOI2YNiJjRfOthopyrkeoNmYu8FDAfBgNV
+HSMEGDAWgBSOI2YNiJjRfOthopyrkeoNmYu8FDAKBggqhkjOPQQDAgNHADBEAiBz
+ooG/wy//a+iqRrr4hbGshe8UYQxQ64pEYgCDiNVtNAIgV5PCy2kqwDtgSCaJVtBd
+BSEbsFus8H2KPj/2ork9a/k=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Schneider_Matter_Test_PAA_vid_0x105E.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Schneider_Matter_Test_PAA_vid_0x105E.der
new file mode 100644
index 00000000000000..13828f51ba90ec
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Schneider_Matter_Test_PAA_vid_0x105E.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Schneider_Matter_Test_PAA_vid_0x105E.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Schneider_Matter_Test_PAA_vid_0x105E.pem
new file mode 100644
index 00000000000000..90d7963f2906eb
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Schneider_Matter_Test_PAA_vid_0x105E.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB0jCCAXigAwIBAgIIZhfZDR0rSfowCgYIKoZIzj0EAwIwOjEiMCAGA1UEAwwZ
+U2NobmVpZGVyIE1hdHRlciBUZXN0IFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEwNUUw
+IBcNMjMwMjIzMTAwMDAwWhgPOTk5OTEyMzEyMzU5NTlaMDoxIjAgBgNVBAMMGVNj
+aG5laWRlciBNYXR0ZXIgVGVzdCBQQUExFDASBgorBgEEAYKifAIBDAQxMDVFMFkw
+EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEuZd6smH9hIAz2hOkDe1gxx/JvwCAY/Xj
+HcGh92P0O3lDoZTHV4obCsKQyb1RS0kHnhvsO8g7ByqexQhYo5ug16NmMGQwEgYD
+VR0TAQH/BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFHNcZmYP
+SE8y90bnDzymhxPNjL8bMB8GA1UdIwQYMBaAFHNcZmYPSE8y90bnDzymhxPNjL8b
+MAoGCCqGSM49BAMCA0gAMEUCIB55mPdNuTn0KKmm8N1lK6CcrQSKf3rCBMTFIr8+
+2AliAiEAjeQw7Hs+tVw5gjZva90NaFHUZRJ1S983mg6M0nxDJxk=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Sengled_Matter_PAA_vid_0x1160.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Sengled_Matter_PAA_vid_0x1160.der
new file mode 100644
index 00000000000000..63ce01d106293b
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Sengled_Matter_PAA_vid_0x1160.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Sengled_Matter_PAA_vid_0x1160.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Sengled_Matter_PAA_vid_0x1160.pem
new file mode 100644
index 00000000000000..885056c9a77350
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Sengled_Matter_PAA_vid_0x1160.pem
@@ -0,0 +1,11 @@
+-----BEGIN CERTIFICATE-----
+MIIBqDCCAU6gAwIBAgIQaVnpV7d9umB4dm0aORnqpDAKBggqhkjOPQQDAjAzMRsw
+GQYDVQQDDBJTZW5nbGVkIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxMTYw
+MCAXDTIyMTIyODA3NDA0N1oYDzIwNTIxMjI4MDg0MTAzWjAzMRswGQYDVQQDDBJT
+ZW5nbGVkIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxMTYwMFkwEwYHKoZI
+zj0CAQYIKoZIzj0DAQcDQgAEXp+xXQ144JichnUkcPlLvge/CYh1phyiqLNY4cnS
+GPGesd09HqXufT7yHsQV6ajICocsW8GWnH84FP+AntMLOKNCMEAwDwYDVR0TAQH/
+BAUwAwEB/zAdBgNVHQ4EFgQUD9nH1i8cU0+V9Q9RUg+7AHW1kpAwDgYDVR0PAQH/
+BAQDAgGGMAoGCCqGSM49BAMCA0gAMEUCIE7cEn6mE7IiiWGw7ZJajo50jfFGupei
+Hb5v7ko0QAyvAiEA3PD5vJhIUIuF1H2UyOMz8nTzOc24yS56/epUBwisS6w=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_StrongKey_Matter_G1_PAA_O_StrongKey.der b/credentials/development/paa-root-certs/dcld_mirror_CN_StrongKey_Matter_G1_PAA_O_StrongKey.der
new file mode 100644
index 00000000000000..1b667f2a11c038
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_StrongKey_Matter_G1_PAA_O_StrongKey.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_StrongKey_Matter_G1_PAA_O_StrongKey.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_StrongKey_Matter_G1_PAA_O_StrongKey.pem
new file mode 100644
index 00000000000000..3700677aa18fed
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_StrongKey_Matter_G1_PAA_O_StrongKey.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB1DCCAXygAwIBAgIUc2o+vqQtP7EOoBw7/O0Wpob9HWUwCgYIKoZIzj0EAwIw
+NjEgMB4GA1UEAwwXU3Ryb25nS2V5IE1hdHRlciBHMSBQQUExEjAQBgNVBAoMCVN0
+cm9uZ0tleTAgFw0yMjA5MTMyMTIyMzVaGA85OTk5MTIzMTIzNTk1OVowNjEgMB4G
+A1UEAwwXU3Ryb25nS2V5IE1hdHRlciBHMSBQQUExEjAQBgNVBAoMCVN0cm9uZ0tl
+eTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEqgWEHD/XHc8QXOrtjCZn6x34i1
+l/vM1nYVdGfNT7HGQojTd3TMjKWQppKcTnl7pN6ua3XmuJQCm/RekenBvcujZjBk
+MBIGA1UdEwEB/wQIMAYBAf8CAQEwHwYDVR0jBBgwFoAUN04pWsVRcwuvZdUpg5tO
+4J05WIowHQYDVR0OBBYEFDdOKVrFUXMLr2XVKYObTuCdOViKMA4GA1UdDwEB/wQE
+AwIBBjAKBggqhkjOPQQDAgNGADBDAh8a5dw6CObybMr8nqaou9lv9PqPbj3DSd+c
+yQm19Mg7AiAVcSK0RXTwLjAef55gWgq7SBRM/u3f3nRV/fvCYgWZfA==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Sunricher_PAA_CN_vid_0x1224.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Sunricher_PAA_CN_vid_0x1224.der
new file mode 100644
index 00000000000000..298b0d16f2a861
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Sunricher_PAA_CN_vid_0x1224.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Sunricher_PAA_CN_vid_0x1224.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Sunricher_PAA_CN_vid_0x1224.pem
new file mode 100644
index 00000000000000..09f0b76d3575a8
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Sunricher_PAA_CN_vid_0x1224.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBvzCCAWagAwIBAgIICcLeHOZeSPcwCgYIKoZIzj0EAwIwMTEZMBcGA1UEAwwQ
+U3VucmljaGVyIFBBQSBDTjEUMBIGCisGAQQBgqJ8AgEMBDEyMjQwIBcNMjMwNDEy
+MDAwMDAwWhgPOTk5OTEyMzEyMzU5NTlaMDExGTAXBgNVBAMMEFN1bnJpY2hlciBQ
+QUEgQ04xFDASBgorBgEEAYKifAIBDAQxMjI0MFkwEwYHKoZIzj0CAQYIKoZIzj0D
+AQcDQgAEnlz9eoL7Mn4W61OUVsInkxIZ5nLydIha84BSJhra2Yos7DvdtKF0eejx
+AQ0Rs9cTA40qAuekflTV2jH2F65A4qNmMGQwEgYDVR0TAQH/BAgwBgEB/wIBATAO
+BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFAxRbKEwrweSMMrbrBobG8npAD2bMB8G
+A1UdIwQYMBaAFAxRbKEwrweSMMrbrBobG8npAD2bMAoGCCqGSM49BAMCA0cAMEQC
+IFse5zdkqKqSq1NQENKFCRyJoJ1IWln/q5ohKV86pHQVAiBwjFXgIDJw1qqmS7ZE
+0a77G9qFUIXsyrb+H3bHY+T5iQ==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_SwitchBot_Test_PAA_01_vid_0x1397.der b/credentials/development/paa-root-certs/dcld_mirror_CN_SwitchBot_Test_PAA_01_vid_0x1397.der
new file mode 100644
index 00000000000000..f28da72b3942bb
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_SwitchBot_Test_PAA_01_vid_0x1397.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_SwitchBot_Test_PAA_01_vid_0x1397.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_SwitchBot_Test_PAA_01_vid_0x1397.pem
new file mode 100644
index 00000000000000..e212d4cbb7265a
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_SwitchBot_Test_PAA_01_vid_0x1397.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByTCCAW6gAwIBAgIIewPVbbhPCzQwCgYIKoZIzj0EAwIwNjEeMBwGA1UEAwwV
+U3dpdGNoQm90IFRlc3QgUEFBIDAxMRQwEgYKKwYBBAGConwCAQwEMTM5NzAeFw0y
+MzAyMDEwMDAwMDBaFw00MzAxMzEyMzU5NTlaMDYxHjAcBgNVBAMMFVN3aXRjaEJv
+dCBUZXN0IFBBQSAwMTEUMBIGCisGAQQBgqJ8AgEMBDEzOTcwWTATBgcqhkjOPQIB
+BggqhkjOPQMBBwNCAATL3inkvt3Tdt+BYiB3hnSkye5ywivDb9lRPI4etnYrX/Ol
+gYjJ/lW/CQgAsGVHB/DROmWa2Jf9qiC8wPhSoxuEo2YwZDASBgNVHRMBAf8ECDAG
+AQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUNaojYdWa9fMyAREl02KP
+/j7GunUwHwYDVR0jBBgwFoAUNaojYdWa9fMyAREl02KP/j7GunUwCgYIKoZIzj0E
+AwIDSQAwRgIhAPIDEyoTE+ZsSkvHGRNIsSirbsMoDKRLYVwQ/JZwuaH+AiEA6NyE
+6KZyx5Vkmv2c25ZwBgMEx/1SBMHOuujWZoY0zT0=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_TP-Link_Matter_PAA_vid_0x1188.der b/credentials/development/paa-root-certs/dcld_mirror_CN_TP-Link_Matter_PAA_vid_0x1188.der
new file mode 100644
index 00000000000000..d1a4731c9449af
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_TP-Link_Matter_PAA_vid_0x1188.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_TP-Link_Matter_PAA_vid_0x1188.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_TP-Link_Matter_PAA_vid_0x1188.pem
new file mode 100644
index 00000000000000..7be97c676bc32d
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_TP-Link_Matter_PAA_vid_0x1188.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBxDCCAWqgAwIBAgIICmgdKV4p8FgwCgYIKoZIzj0EAwIwMzEbMBkGA1UEAwwS
+VFAtTGluayBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTE4ODAgFw0yMjEw
+MTYxNDIzNDNaGA85OTk5MTIzMTIzNTk1OVowMzEbMBkGA1UEAwwSVFAtTGluayBN
+YXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTE4ODBZMBMGByqGSM49AgEGCCqG
+SM49AwEHA0IABBthPNrOBLxk1aUHRQ0qNpp5jxrxD0IYU2VrkqPao+N5W8yXX0co
+Ye5mQRUoKx/1auDoaKu56CgtKFbP7sHTsoCjZjBkMBIGA1UdEwEB/wQIMAYBAf8C
+AQEwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTFhTFBnuA+5KHc9VHgNEDcK77C
+CjAfBgNVHSMEGDAWgBTFhTFBnuA+5KHc9VHgNEDcK77CCjAKBggqhkjOPQQDAgNI
+ADBFAiAPczAEcWoN58U17EoNmiFaBzDo1OknOOnJJ7ooAaSWcQIhAPOWwghDzToJ
+FGEBvcYtYdEgv9Za5uwKYfQt9J4/loDc
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Tapo_Matter_PAA_vid_0x1392.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Tapo_Matter_PAA_vid_0x1392.der
new file mode 100644
index 00000000000000..2c16b00dd3fa84
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Tapo_Matter_PAA_vid_0x1392.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Tapo_Matter_PAA_vid_0x1392.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Tapo_Matter_PAA_vid_0x1392.pem
new file mode 100644
index 00000000000000..cddbb0f87b3d6f
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Tapo_Matter_PAA_vid_0x1392.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBvzCCAWSgAwIBAgIIMDmv+XzHSXUwCgYIKoZIzj0EAwIwMDEYMBYGA1UEAwwP
+VGFwbyBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM5MjAgFw0yMjExMDMx
+NDIzNDNaGA85OTk5MTIzMTIzNTk1OVowMDEYMBYGA1UEAwwPVGFwbyBNYXR0ZXIg
+UEFBMRQwEgYKKwYBBAGConwCAQwEMTM5MjBZMBMGByqGSM49AgEGCCqGSM49AwEH
+A0IABP6TyX8UY0Ek1bLaOgy+QeaanXMpZdQq0+1thMGohs+JIWCDtPxSPeGVXypy
+bj/NUP9V//PkAJOSJqiqlfLyvmKjZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYD
+VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSfY7NblSSAQFIieWdx9lrYTbGASTAfBgNV
+HSMEGDAWgBSfY7NblSSAQFIieWdx9lrYTbGASTAKBggqhkjOPQQDAgNJADBGAiEA
+ks2c4NJXUs9L1pPrcDsYTaox01za4LD5CXmWjocq9+0CIQDRu+X2D3ETsRrygOaA
++oDhvKphxoCLsYMYENDG16+aMA==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.der b/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.der
new file mode 100644
index 00000000000000..cfd002a3fb3e5e
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.pem
new file mode 100644
index 00000000000000..f8e9d7061bc492
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.pem
@@ -0,0 +1,13 @@
+-----BEGIN CERTIFICATE-----
+MIIB6jCCAZCgAwIBAgIIQZHqtWurdTAwCgYIKoZIzj0EAwIwRjElMCMGA1UECgwc
+VHJ1c3RBc2lhIFRlY2hub2xvZ2llcywgSW5jLjEdMBsGA1UEAwwUVHJ1c3RBc2lh
+IE1hdHRlciBQQUEwIBcNMjMwMzE2MDkwMDAwWhgPOTk5OTEyMzEyMzU5NTlaMEYx
+JTAjBgNVBAoMHFRydXN0QXNpYSBUZWNobm9sb2dpZXMsIEluYy4xHTAbBgNVBAMM
+FFRydXN0QXNpYSBNYXR0ZXIgUEFBMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE
+OR22pd0spHC4jC7SIPEs+cBpiqkZcYe5FIvTVctWIjtXv4kVECplbOVEZU04LTbq
+LLqtAqRfceMByJndQPo/GaNmMGQwEgYDVR0TAQH/BAgwBgEB/wIBATAOBgNVHQ8B
+Af8EBAMCAQYwHQYDVR0OBBYEFLbP9grPxCTWHCYU2WO2MtvdA6iKMB8GA1UdIwQY
+MBaAFLbP9grPxCTWHCYU2WO2MtvdA6iKMAoGCCqGSM49BAMCA0gAMEUCIEyDlC7G
+8xZqt/D6wcF8nTxpErN/IC8D+nGiGJ9zdPJkAiEAv0cW5PHHvbY+XmI313NC3cXY
+8Dqh8mau++ljhEm5/yI=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_Test_PAA_O_TrustAsia_Technologies__Inc.der b/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_Test_PAA_O_TrustAsia_Technologies__Inc.der
new file mode 100644
index 00000000000000..a29d31cc160567
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_Test_PAA_O_TrustAsia_Technologies__Inc.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_Test_PAA_O_TrustAsia_Technologies__Inc.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_Test_PAA_O_TrustAsia_Technologies__Inc.pem
new file mode 100644
index 00000000000000..4ccbe0132e8779
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_Test_PAA_O_TrustAsia_Technologies__Inc.pem
@@ -0,0 +1,13 @@
+-----BEGIN CERTIFICATE-----
+MIIB8zCCAZqgAwIBAgIISlilq/A++ZMwCgYIKoZIzj0EAwIwSzElMCMGA1UECgwc
+VHJ1c3RBc2lhIFRlY2hub2xvZ2llcywgSW5jLjEiMCAGA1UEAwwZVHJ1c3RBc2lh
+IE1hdHRlciBUZXN0IFBBQTAgFw0yMzAzMTQwMjAwMDBaGA85OTk5MTIzMTIzNTk1
+OVowSzElMCMGA1UECgwcVHJ1c3RBc2lhIFRlY2hub2xvZ2llcywgSW5jLjEiMCAG
+A1UEAwwZVHJ1c3RBc2lhIE1hdHRlciBUZXN0IFBBQTBZMBMGByqGSM49AgEGCCqG
+SM49AwEHA0IABPJnLS4cSJeksTuVbc85u1xVidBxFtavBtfvptIFzwYJZL7tq4Hp
+0o/Ab3xaNb11m9y+A0eW0DS5cjcOEC+s9vCjZjBkMBIGA1UdEwEB/wQIMAYBAf8C
+AQEwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSbSru4DYhrQM7bJ3dZ7fGmBTBo
+SzAfBgNVHSMEGDAWgBSbSru4DYhrQM7bJ3dZ7fGmBTBoSzAKBggqhkjOPQQDAgNH
+ADBEAiAdxWCkWHgY6rHkat75iK/ROa3mSG0q1lzLaMdQ1KTPFwIgTEL8xQ9eXyj5
+kj1J6ZCpsLpXHPTn2kd1a8d5hcLdPhU=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Tuya_Matter_PAA_vid_0x125D.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Tuya_Matter_PAA_vid_0x125D.pem
index ac90a091b71803..729f81a554fc26 100644
--- a/credentials/development/paa-root-certs/dcld_mirror_CN_Tuya_Matter_PAA_vid_0x125D.pem
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Tuya_Matter_PAA_vid_0x125D.pem
@@ -1,4 +1,3 @@
-Subject: CN=Tuya Matter PAA,vid=0x125D
-----BEGIN CERTIFICATE-----
MIIBvDCCAWKgAwIBAgIGAYRXDp5eMAoGCCqGSM49BAMCMDAxGDAWBgNVBAMMD1R1
eWEgTWF0dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEyNUQwIBcNMjIxMTA4MTE0
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.der b/credentials/development/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.der
new file mode 100644
index 00000000000000..93d982a0daf2a8
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.pem
new file mode 100644
index 00000000000000..c9dc88d18e1791
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.pem
@@ -0,0 +1,11 @@
+-----BEGIN CERTIFICATE-----
+MIIBqjCCAVCgAwIBAgIIQBewM13+lj4wCgYIKoZIzj0EAwIwJjEkMCIGA1UEAwwb
+V0lTZUtleSBPSVNURSBNYXR0ZXIgUEFBIEdBMCAXDTIzMDIyMjExMTE0NloYDzk5
+OTkxMjMxMjM1OTU5WjAmMSQwIgYDVQQDDBtXSVNlS2V5IE9JU1RFIE1hdHRlciBQ
+QUEgR0EwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATJjpFuVHclmIdj11Q/4kQh
+K2vw5KuONO2lvC70fqpaJxZK8nx5WvwEh1nKmrQE3x/3mz5YnjaY4Bzy92um9Yxs
+o2YwZDASBgNVHRMBAf8ECDAGAQH/AgEBMB8GA1UdIwQYMBaAFNiTWojcUlPqNU/O
+2QPO0vYqXKr/MB0GA1UdDgQWBBTYk1qI3FJT6jVPztkDztL2Klyq/zAOBgNVHQ8B
+Af8EBAMCAYYwCgYIKoZIzj0EAwIDSAAwRQIgIwWMdfZe9GjpmpGh8e9cv0yXQgoH
+8NtAvUiaku7uWH0CIQCUyGey5oDGuN/4kjJ9e5WFY9Ldq9DI/l2VzAxR7/GVqg==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.der b/credentials/development/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.der
new file mode 100644
index 00000000000000..1cb1764da36ff5
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.pem
new file mode 100644
index 00000000000000..4b6076b165fac2
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB0DCCAXagAwIBAgIUEVaPZC4WCRy6jfLzxPQPzA5HSR8wCgYIKoZIzj0EAwIw
+MzEbMBkGA1UEAwwSWEZOIE1hdHRlciBQQUEgVklEMRQwEgYKKwYBBAGConwCAQwE
+MTExRDAgFw0yMTEwMjcxNzM5MzdaGA8yMDUxMTAyMDE3MzkzN1owMzEbMBkGA1UE
+AwwSWEZOIE1hdHRlciBQQUEgVklEMRQwEgYKKwYBBAGConwCAQwEMTExRDBZMBMG
+ByqGSM49AgEGCCqGSM49AwEHA0IABOrVSyaumHozQkNsXGhId3uB7RiY/fggg2Ts
+uIkYGxleT7WtMoEra98EOLWxZ0YpUJmoDjk2ywomql02YIus6oOjZjBkMBIGA1Ud
+EwEB/wQIMAYBAf8CAQEwHwYDVR0jBBgwFoAUELa1jWK96T1Itk7yAeOdgGiHkpIw
+HQYDVR0OBBYEFBC2tY1ivek9SLZO8gHjnYBoh5KSMA4GA1UdDwEB/wQEAwIBhjAK
+BggqhkjOPQQDAgNIADBFAiAHAOsEylKtETbk2vCb1p3+/ohza7pWxsQZGjFDlzcT
+6QIhAOR4QOqegCxM9hHzmMpE0oNCwY0YMiwqhxb4cGvAIdBc
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.der
new file mode 100644
index 00000000000000..441d705fa83f91
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.pem
new file mode 100644
index 00000000000000..aa8944da59977b
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBzzCCAXSgAwIBAgIIHD7Re2PC4v4wCgYIKoZIzj0EAwIwODEgMB4GA1UEAwwX
+WGlhb21pIE1pamlhIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxMjZFMCAX
+DTIyMTIwNzEyNTkzMVoYDzk5OTkxMjMxMjM1OTU5WjA4MSAwHgYDVQQDDBdYaWFv
+bWkgTWlqaWEgTWF0dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEyNkUwWTATBgcq
+hkjOPQIBBggqhkjOPQMBBwNCAAS8fHbfdztglyhDdSuhnvUkiQwEZwSdq2P7CqkX
+g6hsuVR5Y3Bew/o5pMVwpPFqW/9dia2YGbBW4CPpZYiz/VhXo2YwZDASBgNVHRMB
+Af8ECDAGAQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUMbt+ENHwgebG
+VDCRxEpqeR3U7gkwHwYDVR0jBBgwFoAUMbt+ENHwgebGVDCRxEpqeR3U7gkwCgYI
+KoZIzj0EAwIDSQAwRgIhAJLuT66XntEO1+WBY5ovx/1HhwW6dbYPPyQWsIj0zJJC
+AiEAifz6pqyxjuEXQPGGl2Au46DAPcHY5m7TGg7q0Uzp+6Y=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.der b/credentials/development/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.der
new file mode 100644
index 00000000000000..16441ec6e394cf
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.pem b/credentials/development/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.pem
new file mode 100644
index 00000000000000..00b429f75d69cd
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByjCCAXGgAwIBAgIQSqc9zdIOdLEk8SqWG56VmjAKBggqhkjOPQQDAjA0MRww
+GgYDVQQDDBNZZWVsaWdodCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTMx
+MjAgFw0yMzAzMjAwODI3NTZaGA8yMTIzMDIyNDA5Mjc1NlowNDEcMBoGA1UEAwwT
+WWVlbGlnaHQgTWF0dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzMTIwWTATBgcq
+hkjOPQIBBggqhkjOPQMBBwNCAAS1tzm+iYv1rsdh8bwXO8ncWryvKi17JaQt0P1l
+qj4ArsHOBZZMPiz3WenbyhGzqYfn1yhigEJZ+GRv/SptZIDno2MwYTAPBgNVHRMB
+Af8EBTADAQH/MB0GA1UdDgQWBBTUhw1UsjBbhoyjr+6nJRiXOsggjjAOBgNVHQ8B
+Af8EBAMCAYYwHwYDVR0jBBgwFoAU1IcNVLIwW4aMo6/upyUYlzrIII4wCgYIKoZI
+zj0EAwIDRwAwRAIgXkjZ9nFLAu3aWnHMu3AfUdR3TE/eW5eZw03ISuPDMjQCIEcA
+LnL4qXokODP80ooYjbP53CcaHAIBxlUGQQ50KzwH
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709330400001_CN_NXP_Matter_PAA_O_NXP_Semiconductors_NV_C_NL.der b/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709330400001_CN_NXP_Matter_PAA_O_NXP_Semiconductors_NV_C_NL.der
new file mode 100644
index 00000000000000..ebca45453896c6
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709330400001_CN_NXP_Matter_PAA_O_NXP_Semiconductors_NV_C_NL.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709330400001_CN_NXP_Matter_PAA_O_NXP_Semiconductors_NV_C_NL.pem b/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709330400001_CN_NXP_Matter_PAA_O_NXP_Semiconductors_NV_C_NL.pem
new file mode 100644
index 00000000000000..bf4fd769683fcb
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709330400001_CN_NXP_Matter_PAA_O_NXP_Semiconductors_NV_C_NL.pem
@@ -0,0 +1,14 @@
+-----BEGIN CERTIFICATE-----
+MIICKjCCAc6gAwIBAgIQZIhrnLD8JtUdBFKOg5azKDAMBggqhkjOPQQDAgUAMGEx
+FzAVBgNVBAUMDjYzNzA5MzMwNDAwMDAxMSAwHgYDVQQKDBdOWFAgU2VtaWNvbmR1
+Y3RvcnMgTi5WLjELMAkGA1UEBgwCTkwxFzAVBgNVBAMMDk5YUCBNYXR0ZXIgUEFB
+MB4XDTIyMTAwMTE0MjM0M1oXDTQ5MTIzMTIzNTk1OVowYTEXMBUGA1UEBQwONjM3
+MDkzMzA0MDAwMDExIDAeBgNVBAoMF05YUCBTZW1pY29uZHVjdG9ycyBOLlYuMQsw
+CQYDVQQGDAJOTDEXMBUGA1UEAwwOTlhQIE1hdHRlciBQQUEwWTATBgcqhkjOPQIB
+BggqhkjOPQMBBwNCAAQmG9CGuc3THfDL4EvdtnLGVa7HLvsWKITV6EDfswaqKGid
+k2TYwuUIVKwU6LxEWhensDfKkEx05I33Gv8bNaAvo2YwZDASBgNVHRMBAf8ECDAG
+AQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUl5ekL40HbyPDiIBNTYJC
+2T3Xcf0wHwYDVR0jBBgwFoAUl5ekL40HbyPDiIBNTYJC2T3Xcf0wDAYIKoZIzj0E
+AwIFAANIADBFAiAoIKgE0cFKmvPSG07jpNrjFX5+9BzTUrnY+ZzItV4q4wIhAKar
++mfA4WFw1ZlFODuQ1NeD7sAqEzDzgqzj+8Loafcn
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709380400001_CN_NXP_Matter_Test_PAA_O_NXP_Semiconductors_NV_C_NL.der b/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709380400001_CN_NXP_Matter_Test_PAA_O_NXP_Semiconductors_NV_C_NL.der
new file mode 100644
index 00000000000000..79ed0d69ced6b6
Binary files /dev/null and b/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709380400001_CN_NXP_Matter_Test_PAA_O_NXP_Semiconductors_NV_C_NL.der differ
diff --git a/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709380400001_CN_NXP_Matter_Test_PAA_O_NXP_Semiconductors_NV_C_NL.pem b/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709380400001_CN_NXP_Matter_Test_PAA_O_NXP_Semiconductors_NV_C_NL.pem
new file mode 100644
index 00000000000000..72e524d9be093b
--- /dev/null
+++ b/credentials/development/paa-root-certs/dcld_mirror_SERIALNUMBER_63709380400001_CN_NXP_Matter_Test_PAA_O_NXP_Semiconductors_NV_C_NL.pem
@@ -0,0 +1,14 @@
+-----BEGIN CERTIFICATE-----
+MIICNDCCAdigAwIBAgIQdgHtufWwmgAmj5M5GMt6+TAMBggqhkjOPQQDAgUAMGYx
+FzAVBgNVBAUMDjYzNzA5MzgwNDAwMDAxMSAwHgYDVQQKDBdOWFAgU2VtaWNvbmR1
+Y3RvcnMgTi5WLjELMAkGA1UEBgwCTkwxHDAaBgNVBAMME05YUCBNYXR0ZXIgVGVz
+dCBQQUEwHhcNMjIxMDAxMTQyMzQzWhcNNDkxMjMxMjM1OTU5WjBmMRcwFQYDVQQF
+DA42MzcwOTM4MDQwMDAwMTEgMB4GA1UECgwXTlhQIFNlbWljb25kdWN0b3JzIE4u
+Vi4xCzAJBgNVBAYMAk5MMRwwGgYDVQQDDBNOWFAgTWF0dGVyIFRlc3QgUEFBMFkw
+EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEgUrOzPL8C3oqYOQgJ747iGOI7yN4TZnp
+BJ9E3VqnN6Cxoj2K135lTnmANj20egROiapJXEC5IAgCbYIvm/+GVKNmMGQwEgYD
+VR0TAQH/BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFEnzI5up
+mW7mYhWdvopH6m79D4yLMB8GA1UdIwQYMBaAFEnzI5upmW7mYhWdvopH6m79D4yL
+MAwGCCqGSM49BAMCBQADSAAwRQIhAOAr4q+sw6jmUSR4oHRhIMnj4UDPPbScM7ZC
+WX4BBTUhAiAIT+S24UIAnG4OCL3mTOoyCMB83YZSe7cnvjk4i4GCPQ==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/fetch-paa-certs-from-dcl.py b/credentials/fetch-paa-certs-from-dcl.py
index 6499f0e9d21ab5..56950a8c86e239 100644
--- a/credentials/fetch-paa-certs-from-dcl.py
+++ b/credentials/fetch-paa-certs-from-dcl.py
@@ -86,12 +86,15 @@ def write_paa_root_cert(certificate, subject):
with open(filename + '.pem', 'w+') as outfile:
outfile.write(certificate)
# convert pem file to der
- with open(filename + '.pem', 'rb') as infile:
- pem_certificate = x509.load_pem_x509_certificate(infile.read())
- with open(filename + '.der', 'wb+') as outfile:
- der_certificate = pem_certificate.public_bytes(
- serialization.Encoding.DER)
- outfile.write(der_certificate)
+ try:
+ with open(filename + '.pem', 'rb') as infile:
+ pem_certificate = x509.load_pem_x509_certificate(infile.read())
+ with open(filename + '.der', 'wb+') as outfile:
+ der_certificate = pem_certificate.public_bytes(
+ serialization.Encoding.DER)
+ outfile.write(der_certificate)
+ except (IOError, ValueError) as e:
+ print(f"ERROR: Failed to convert {filename + '.pem'}: {str(e)}. Skipping...")
def parse_paa_root_cert_from_dcld(cmdpipe):
@@ -160,7 +163,6 @@ def main(use_main_net_dcld, use_test_net_dcld, use_main_net_http, use_test_net_h
parse_paa_root_certs(cmdpipe, paa_list)
for paa in paa_list:
-
if use_rest:
response = requests.get(
f"{rest_node_url}/dcl/pki/certificates/{paa['subject']}/{paa['subjectKeyId']}").json()["approvedCertificates"]["certs"][0]
@@ -175,6 +177,7 @@ def main(use_main_net_dcld, use_test_net_dcld, use_main_net_http, use_test_net_h
certificate = certificate.rstrip('\n')
+ print(f"Downloaded certificate with subject: {subject}")
write_paa_root_cert(certificate, subject)
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.der
new file mode 100644
index 00000000000000..9353d4030d22d9
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.pem
new file mode 100644
index 00000000000000..561591e8201cf1
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Beken_PAA_01_O_BEKEN_CORPORATION_C_CN_vid_0x1342.pem
@@ -0,0 +1,14 @@
+-----BEGIN CERTIFICATE-----
+MIICDzCCAbWgAwIBAgIQaYNwS9sgTBq3o/fYlgTNRjAKBggqhkjOPQQDAjBWMQsw
+CQYDVQQGEwJDTjEaMBgGA1UECgwRQkVLRU4gQ09SUE9SQVRJT04xFTATBgNVBAMM
+DEJla2VuIFBBQSAwMTEUMBIGCisGAQQBgqJ8AgEMBDEzNDIwIBcNMjMwMjIxMDEx
+MjEwWhgPOTk5OTEyMzEyMzU5NTlaMFYxCzAJBgNVBAYTAkNOMRowGAYDVQQKDBFC
+RUtFTiBDT1JQT1JBVElPTjEVMBMGA1UEAwwMQmVrZW4gUEFBIDAxMRQwEgYKKwYB
+BAGConwCAQwEMTM0MjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABNAiesN6ioXB
+ceNzUHakCBeHnWYclToAOMD+iN/+ZICwbYcNprK/3fwgNbW9wJjfgS1Ql7ncpFI1
+CuGIx1ixsvyjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFPH7a4tsFdwj
+q/GrUwRtGqMOygGJMA4GA1UdDwEB/wQEAwIBhjAfBgNVHSMEGDAWgBTx+2uLbBXc
+I6vxq1MEbRqjDsoBiTAKBggqhkjOPQQDAgNIADBFAiAhLQDUaEN6D7bEEsDiZeWk
+SgF4T78PnMu7djX7dA5WPwIhANi5ffmVk+EsdlhDk/50ojce09gvjar3RDSibyiE
+xsch
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.der b/credentials/production/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.der
new file mode 100644
index 00000000000000..24c85a7ccecb17
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.pem
new file mode 100644
index 00000000000000..df1e675b2517a3
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_CommScope_Technologies_LLC_Matter_PAA.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByjCCAXCgAwIBAgIUXCGo9kb6IAuTbc++0INIKoRNdmkwCgYIKoZIzj0EAwIw
+MDEuMCwGA1UEAwwlQ29tbVNjb3BlIFRlY2hub2xvZ2llcyBMTEMgTWF0dGVyIFBB
+QTAgFw0yMzAzMjcxODAzMTVaGA8yMDc5MDYwNTIzNTk1OVowMDEuMCwGA1UEAwwl
+Q29tbVNjb3BlIFRlY2hub2xvZ2llcyBMTEMgTWF0dGVyIFBBQTBZMBMGByqGSM49
+AgEGCCqGSM49AwEHA0IABKDQFia0cSkTzFVaowcLObj8kugxNblIJQI8+9T39HBS
+MUt8BZLyF6fvpoMW3aFGty7QnSIEcUHsv3a+luWMOyWjZjBkMBIGA1UdEwEB/wQI
+MAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB8GA1UdIwQYMBaAFFn47dFXVdLaZqie
+VLx5cjRDXfRrMB0GA1UdDgQWBBRZ+O3RV1XS2maonlS8eXI0Q130azAKBggqhkjO
+PQQDAgNIADBFAiEA2r/c+NN+uHyDSPnrPG0csWP/L4SCNl3RHEktM76RomoCIHZj
+wzofFTNVqdsP/gAOyygrtvq9tOkz0s0PY+06N6Dr
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.der
new file mode 100644
index 00000000000000..3eb961c3e64475
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.pem
new file mode 100644
index 00000000000000..f3a3f9b032117c
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Coolkit_Matter_PAA_vid_0x1286.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByjCCAXCgAwIBAgIRALIYkZCkr7iJ8mZzIc7i0YUwCgYIKoZIzj0EAwIwMzEb
+MBkGA1UEAwwSQ29vbGtpdCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTI4
+NjAgFw0yMjEyMjkwOTAxMjBaGA8yMTIyMTIwNTEwMDEyMFowMzEbMBkGA1UEAwwS
+Q29vbGtpdCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTI4NjBZMBMGByqG
+SM49AgEGCCqGSM49AwEHA0IABFjRorUBNceySQx2NyglupAohrtcN7HhdhoXSpe7
+Q8NKPwEWgi8xGM8/I5aZpNyKWtIkiqQjOldveUsJ+E5huJ2jYzBhMA8GA1UdEwEB
+/wQFMAMBAf8wHQYDVR0OBBYEFNLMGSSoh8d9pu+VyV7evMxVOl6+MA4GA1UdDwEB
+/wQEAwIBhjAfBgNVHSMEGDAWgBTSzBkkqIfHfabvlcle3rzMVTpevjAKBggqhkjO
+PQQDAgNIADBFAiEA70Nk7lJT0kd3ldXbCeHjHCcjaNQSi6BEfW5t351S0TYCIEtA
+7mST/iS08y+bmAc+Umw4w4korSG7mbA7SF+h4Bvq
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.der
new file mode 100644
index 00000000000000..74f0bdc503d9b3
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.pem
new file mode 100644
index 00000000000000..28ba6eec1e0d99
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Dooya_Matter_PAA_vid_0x1365.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBxjCCAWygAwIBAgIRAK8DIULbkf5secR3pEpneXkwCgYIKoZIzj0EAwIwMTEZ
+MBcGA1UEAwwQRG9veWEgTWF0dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzNjUw
+IBcNMjMwNTE3MDYzMDA5WhgPMjEyMzA0MjMwNzMwMDlaMDExGTAXBgNVBAMMEERv
+b3lhIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxMzY1MFkwEwYHKoZIzj0C
+AQYIKoZIzj0DAQcDQgAE13sUs7r/vScV3aC0keua5b3hN2HACJrsPVY0csOEvdmg
+Ujb/DdhbB9II8egcUgNQhbhm1VA6aDweSVOlJUqW9KNjMGEwDwYDVR0TAQH/BAUw
+AwEB/zAdBgNVHQ4EFgQU2H5GdarwvlK+Q5zywAaYbZrwLnUwDgYDVR0PAQH/BAQD
+AgGGMB8GA1UdIwQYMBaAFNh+RnWq8L5SvkOc8sAGmG2a8C51MAoGCCqGSM49BAMC
+A0gAMEUCICN3uiTptSE1TiDJ9595cGiBOHg30RN0XHIepd5xhzE+AiEA94oIq6eF
+4Bf6vzl1brZb3/jRFa2Hb2KSF+pLby/nVDU=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.der b/credentials/production/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.der
new file mode 100644
index 00000000000000..36dca99ce22cd9
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.pem
new file mode 100644
index 00000000000000..5039036523762b
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_HooRii_Matter_PAA_G1_vid_0x1351.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBzDCCAXOgAwIBAgIQRr59/poXhxyqM2WzNmpEZzAKBggqhkjOPQQDAjA1MR0w
+GwYDVQQDDBRIb29SaWkgTWF0dGVyIFBBQSBHMTEUMBIGCisGAQQBgqJ8AgEMBDEz
+NTEwIBcNMjMwMzE2MDg0OTQ0WhgPMzAyMjA3MTcwOTQ5NDRaMDUxHTAbBgNVBAMM
+FEhvb1JpaSBNYXR0ZXIgUEFBIEcxMRQwEgYKKwYBBAGConwCAQwEMTM1MTBZMBMG
+ByqGSM49AgEGCCqGSM49AwEHA0IABGu+QUB48KWjlQvmqlkrk+PFlgLwd7lhfJ+W
+bCMjStSUC1dZXnN/L4SLfRAigweqnZDq4yDfZxGhRnbXIg20jGKjYzBhMA8GA1Ud
+EwEB/wQFMAMBAf8wHQYDVR0OBBYEFLcW1z8tZsZ/eIzpwBETOgpaErH1MA4GA1Ud
+DwEB/wQEAwIBhjAfBgNVHSMEGDAWgBS3Ftc/LWbGf3iM6cAREzoKWhKx9TAKBggq
+hkjOPQQDAgNHADBEAiBPO4TUQTIwX9YZOMtMI1otjqGDrXa3V4DDGpRAv5DGjQIg
+UdnJk5rtZFFYg/pH3paCCyPUx9hEsq9+XzyXzBNt+Jo=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.der
new file mode 100644
index 00000000000000..fe7f2f9923eecb
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.pem
new file mode 100644
index 00000000000000..96e43d9d35b9b3
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Kudelski_Matter_PAA_01.pem
@@ -0,0 +1,11 @@
+-----BEGIN CERTIFICATE-----
+MIIBqDCCAU6gAwIBAgIQF0rI1t9Ic45LCbMNF4Ig3zAKBggqhkjOPQQDAjAhMR8w
+HQYDVQQDExZLdWRlbHNraSBNYXR0ZXIgUEFBIDAxMCAXDTIzMDEyNTEzMTkyMVoY
+Dzk5OTkxMjMxMjM1OTU5WjAhMR8wHQYDVQQDExZLdWRlbHNraSBNYXR0ZXIgUEFB
+IDAxMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwU6lHfS8xzeab2fOJgPCq6o8
+7E/oi4EoNS8ntrPSwVzeuZd/szyjSuuhQez8ivkcUBMwYF+7iAjEvYKMIKEVB6Nm
+MGQwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYE
+FKYHw2B7cVDjYiqwuoiebLw/xVL5MB8GA1UdIwQYMBaAFKYHw2B7cVDjYiqwuoie
+bLw/xVL5MAoGCCqGSM49BAMCA0gAMEUCID5hu0qxMVEDtZ46tVZ9cSY1SwuAP4VB
+FvxrqRS8y34sAiEA+fpUqi2nQF5Xk4lJwOPg04W32kBrYMiagfESVLZLqPM=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.der
new file mode 100644
index 00000000000000..ec28a7968ee8a6
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.pem
new file mode 100644
index 00000000000000..6983f6ee8628c0
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Longanlink_Matter_PAA_01_vid_0x131F.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB2zCCAYKgAwIBAgIUbUYhommf/eGmBpGVCftameBnrS0wCgYIKoZIzj0EAwIw
+OjEiMCAGA1UEAwwZTG9uZ2FuLmxpbmsgTWF0dGVyIFBBQSAwMTEUMBIGCisGAQQB
+gqJ8AgEMBDEzMUYwHhcNMjMwMTEyMTAxMTQ1WhcNMzMwMTA5MTAxMTQ1WjA6MSIw
+IAYDVQQDDBlMb25nYW4ubGluayBNYXR0ZXIgUEFBIDAxMRQwEgYKKwYBBAGConwC
+AQwEMTMxRjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABDdOC+IV2GZJqU8viqtJ
+ugH9RYp7m9q8j9Apy0VrdNOpZFJlMsvhWMoCavoiU8uQLetb7cWVP0uxWtngmxT2
+bSmjZjBkMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB0GA1Ud
+DgQWBBTBIEsJvP4s2mPOm34wgoTLxqJ4RzAfBgNVHSMEGDAWgBTBIEsJvP4s2mPO
+m34wgoTLxqJ4RzAKBggqhkjOPQQDAgNHADBEAiBgrbitMHgD7Hj2gwQKSlXj8wUF
+d+GiHTrCCA127lb8VQIgBrK/uzjn8vWR5uf1iTShsy0JrIQ/kIjuyL/qF1/otGY=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.der
new file mode 100644
index 00000000000000..1945e372e51b38
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.pem
new file mode 100644
index 00000000000000..659757913d14e6
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_ASR_PAA_C_CN_vid_0x133F.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB0zCCAXigAwIBAgIEEAAACDAKBggqhkjOPQQDAjA8MQswCQYDVQQGEwJDTjEU
+MBIGCisGAQQBgqJ8AgEMBDEzM0YxFzAVBgNVBAMMDk1hdHRlciBBU1IgUEFBMCAX
+DTIyMTIwODA1NDkyMloYDzIxMjIxMTE0MDU0OTIyWjA8MQswCQYDVQQGEwJDTjEU
+MBIGCisGAQQBgqJ8AgEMBDEzM0YxFzAVBgNVBAMMDk1hdHRlciBBU1IgUEFBMFkw
+EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmhOGoCqUtvdQvc8380R0/+JMYW7t3Rnu
+Hn2jxPOWT4P33OuhT5ql/IW2XqnmVKAff83IeJn0edePIhLW8TR2UqNmMGQwHwYD
+VR0jBBgwFoAU7+HwYTN8f14mdv6IU0N9vwO+gMAwEgYDVR0TAQH/BAgwBgEB/wIB
+ATAdBgNVHQ4EFgQU7+HwYTN8f14mdv6IU0N9vwO+gMAwDgYDVR0PAQH/BAQDAgEG
+MAoGCCqGSM49BAMCA0kAMEYCIQCHXUwKU8mFRyERBBw3vzzuFgobf2B8eqNqBHT5
+v8vpfAIhAO6jpKrVU36J+eiYVI8fc3aqjj0GxhlW6dxL6LDdBTmZ
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.der
new file mode 100644
index 00000000000000..980a599f3b6eec
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.pem
new file mode 100644
index 00000000000000..4db28c632a2459
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_PAA_2_O_Google_C_US_vid_0x6006.pem
@@ -0,0 +1,13 @@
+-----BEGIN CERTIFICATE-----
+MIIB7jCCAZOgAwIBAgIBATAKBggqhkjOPQQDAjBLMQswCQYDVQQGEwJVUzEPMA0G
+A1UECgwGR29vZ2xlMRUwEwYDVQQDDAxNYXR0ZXIgUEFBIDIxFDASBgorBgEEAYKi
+fAIBDAQ2MDA2MCAXDTIyMTIxNTAwMjIzMVoYDzIxMjIxMTIxMDAyMjMxWjBLMQsw
+CQYDVQQGEwJVUzEPMA0GA1UECgwGR29vZ2xlMRUwEwYDVQQDDAxNYXR0ZXIgUEFB
+IDIxFDASBgorBgEEAYKifAIBDAQ2MDA2MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcD
+QgAEfBavdss9ivpYBX1TrjprN8ur+Mlw79ArbMSsF9yjKJZToX1qU52g530rGMyV
+Um4/nSvDSHZLq3Mh/dYlsY57rqNmMGQwEgYDVR0TAQH/BAgwBgEB/wIBATAOBgNV
+HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFHq57adv6ctkYnUybdFFCLgA+OHIMB8GA1Ud
+IwQYMBaAFHq57adv6ctkYnUybdFFCLgA+OHIMAoGCCqGSM49BAMCA0kAMEYCIQCJ
+bSWN3tzLKE37QsmQa9LUUz58TKF8h6Vbx8oKNQDJCgIhAMWZC7jGeR9PMO/dGNJy
+/FRDJTm2hVUYrvzOx74YAIew
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.der
new file mode 100644
index 00000000000000..9d6fa54a028993
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.pem
new file mode 100644
index 00000000000000..3b3d13da8cc0a3
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Matter_Uascent_PAA_0x1400_vid_0x1400.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB2DCCAX2gAwIBAgIQIgzBEIyd2pBoydOAodEFUzAKBggqhkjOPQQDAjA6MSIw
+IAYDVQQDDBlNYXR0ZXIgVWFzY2VudCBQQUEgMHgxNDAwMRQwEgYKKwYBBAGConwC
+AQwEMTQwMDAgFw0yMzAyMjQwMjEwMjJaGA8yMTIzMDEzMTAzMTAyMlowOjEiMCAG
+A1UEAwwZTWF0dGVyIFVhc2NlbnQgUEFBIDB4MTQwMDEUMBIGCisGAQQBgqJ8AgEM
+BDE0MDAwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQGF1kPgQS3bN15r7TGypBU
+kbVb3rENZJT+Yd1/XghtNsdn16aWuGfbfciNYrYHH3BowOjdDEa7Pg4WslzbQbxI
+o2MwYTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQwg3mJZOCTqLJZ/rbDeAlu
+JWhOmjAOBgNVHQ8BAf8EBAMCAYYwHwYDVR0jBBgwFoAUMIN5iWTgk6iyWf62w3gJ
+biVoTpowCgYIKoZIzj0EAwIDSQAwRgIhAKgXdJqN0msFakfGusUP5rXtjspITudq
+Gq+JB3u3WCcxAiEAx65fSjfiRle2djpp8SunICvCAkVKa386AdSKcXxlCRI=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.der b/credentials/production/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.der
new file mode 100644
index 00000000000000..8c2c3e5947e0ff
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.pem
new file mode 100644
index 00000000000000..4f1efc399b642e
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_PanKorePAA_O_PanKore_vid_0x1316.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBvTCCAWOgAwIBAgIRALR5sevvUSe9RFYCEgeDQzswCgYIKoZIzj0EAwIwPTET
+MBEGA1UEAwwKUGFuS29yZVBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzMTYxEDAOBgNV
+BAoMB1BhbktvcmUwIBcNMjMwNDE0MDUxOTI4WhgPMjEyMzAzMjEwNjE5MjhaMD0x
+EzARBgNVBAMMClBhbktvcmVQQUExFDASBgorBgEEAYKifAIBDAQxMzE2MRAwDgYD
+VQQKDAdQYW5Lb3JlMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAES5EuELIS1Fr/
+FHhVUN2VVT1P+A7BjHwDKryrB8KBAX63m2cKnc8XiGqlgLISO7L26n7MYE4I4JcB
+v844aPg03aNCMEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUVotIfZ/3up+G
++Xbv4a15BDNXq8MwDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA0gAMEUCIEwO
+wv9LR2IiYBmLqsaH+CSmTC1hpHK/Mxtnr3zHlRYYAiEA5l2A0iXoIPqCxN+yxKVy
+hXP8m8zUz5JEdZR+BlrFLgU=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.der
new file mode 100644
index 00000000000000..7ac6b1dddaf697
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.pem
new file mode 100644
index 00000000000000..b0e30b457cb860
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Phaten_Matter_PAA_vid_0x1404.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByDCCAW6gAwIBAgIRAJjDAv4UCH2aIjBKyRuyE40wCgYIKoZIzj0EAwIwMjEa
+MBgGA1UEAwwRUGhhdGVuIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxNDA0
+MCAXDTIzMDIwNjA0NDA1MVoYDzIyMjMxMjMxMjM1OTU5WjAyMRowGAYDVQQDDBFQ
+aGF0ZW4gTWF0dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDE0MDQwWTATBgcqhkjO
+PQIBBggqhkjOPQMBBwNCAAQARiZDxeEXWhJxOhqVex88/53FmxWqrqWCqfZynZS3
+BGXktXGGWIekPfkw/2l+7Kmt5pNJvEm7f2QPNpaWcL6vo2MwYTAPBgNVHRMBAf8E
+BTADAQH/MB0GA1UdDgQWBBSZIOhVuLRljx/ei3gvCbIcRbFBtzAOBgNVHQ8BAf8E
+BAMCAYYwHwYDVR0jBBgwFoAUmSDoVbi0ZY8f3ot4LwmyHEWxQbcwCgYIKoZIzj0E
+AwIDSAAwRQIhAJpLjv9zOxLKWcByT3AZjqmyq/SdfRa3B3aRfV5pWV6jAiAvnEtC
+qHC2NiNvTKHtR0IzLzZJcCN1gNS8PWE7dgPy+g==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.der
new file mode 100644
index 00000000000000..cd76bfcce5c32a
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.pem
new file mode 100644
index 00000000000000..0b9fe29404930f
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Qianyan_Matter_PAA_vid_0x1387.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByjCCAXCgAwIBAgIRALmDRJO1vv31wcqYjJYpxZQwCgYIKoZIzj0EAwIwMzEb
+MBkGA1UEAwwSUWlhbnlhbiBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM4
+NzAgFw0yMzAzMTQwODIyNDRaGA85OTk5MTIzMTIzNTk1OVowMzEbMBkGA1UEAwwS
+UWlhbnlhbiBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTM4NzBZMBMGByqG
+SM49AgEGCCqGSM49AwEHA0IABAV999uorscml0N9OlulWuvb+6d06vsjmpwKPQd5
+mpaayy4f6ODdbycnNhHUZqxP4jQL8CLk509zlJCyTvX4f16jYzBhMA8GA1UdEwEB
+/wQFMAMBAf8wHQYDVR0OBBYEFDCn/GzW+lrLgn93bjJiB2u4EeQpMA4GA1UdDwEB
+/wQEAwIBhjAfBgNVHSMEGDAWgBQwp/xs1vpay4J/d24yYgdruBHkKTAKBggqhkjO
+PQQDAgNIADBFAiBo6kBk1wcJjH4XYaR6cPOrCOXmbTPk20EzfoaLrXXtrgIhANmh
+IEohtRvlb6URoKv1v3jwfzATeqLNY2eLKBmQjUN8
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.der
new file mode 100644
index 00000000000000..a8e2fad2130542
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.pem
new file mode 100644
index 00000000000000..6261addd938c7c
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Quectel_Matter_PAA_vid_0x1410.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB0DCCAXagAwIBAgIUSNDkSyf+uIE4cOtbUuqYbyoZm04wCgYIKoZIzj0EAwIw
+MzEbMBkGA1UEAwwSUXVlY3RlbCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwE
+MTQxMDAgFw0yMzAzMDEwNTIwMDZaGA85OTk5MTIzMTA1MjAwNlowMzEbMBkGA1UE
+AwwSUXVlY3RlbCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTQxMDBZMBMG
+ByqGSM49AgEGCCqGSM49AwEHA0IABPVapB0WnCRdF8JOm6sVjFaklJO9LguJljDA
+wUlj8/udIxdOJ4r3aWcGhLzVsyj2vbrB1A+7eoq+zMLJ+lRAciOjZjBkMB0GA1Ud
+DgQWBBTYzvSYQKNboQDcO+eGtUzaOH4lAjAfBgNVHSMEGDAWgBTYzvSYQKNboQDc
+O+eGtUzaOH4lAjASBgNVHRMBAf8ECDAGAQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAK
+BggqhkjOPQQDAgNIADBFAiEA/+yF17n4XG81nLtV4CP0MWYppGAdN24AipnRdMza
+AIECIFqMfQfNGQGejFSeyaWlhKTsYH5iJ2UdyUmHfKzg3FZV
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.der
new file mode 100644
index 00000000000000..9aec36a9f66d06
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.pem
new file mode 100644
index 00000000000000..9e74ebb26d4dd5
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Rafael_Matter_PAA_vid_0x1346.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBwjCCAWigAwIBAgIIMnjf1jSe7A4wCgYIKoZIzj0EAwIwMjEaMBgGA1UEAwwR
+UmFmYWVsIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxMzQ2MCAXDTIzMDIy
+MjAwMDAwMFoYDzIxMjMwMTI4MjM1OTU5WjAyMRowGAYDVQQDDBFSYWZhZWwgTWF0
+dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzNDYwWTATBgcqhkjOPQIBBggqhkjO
+PQMBBwNCAATLDTcieWh6NPzh2K5geCxrrKxV/a/TthvTyDiLa5oUS/M7Wt08l85V
+lYXPhiiidthGI1rCPsYCPgqul0EW/GeYo2YwZDASBgNVHRMBAf8ECDAGAQH/AgEB
+MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUxPfh1bv5nf/R7gF21WgnjOibIBcw
+HwYDVR0jBBgwFoAUxPfh1bv5nf/R7gF21WgnjOibIBcwCgYIKoZIzj0EAwIDSAAw
+RQIgQH90HCbluBm/JPRrkwEmVH1NpzV//gAQwj4A+MROoZgCIQCTKGMkpEd0AUM6
+BeCqOjan+OEarNXoqoOgUaX0rJcY8Q==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.der b/credentials/production/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.der
new file mode 100644
index 00000000000000..cfd002a3fb3e5e
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.pem
new file mode 100644
index 00000000000000..f8e9d7061bc492
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_TrustAsia_Matter_PAA_O_TrustAsia_Technologies__Inc.pem
@@ -0,0 +1,13 @@
+-----BEGIN CERTIFICATE-----
+MIIB6jCCAZCgAwIBAgIIQZHqtWurdTAwCgYIKoZIzj0EAwIwRjElMCMGA1UECgwc
+VHJ1c3RBc2lhIFRlY2hub2xvZ2llcywgSW5jLjEdMBsGA1UEAwwUVHJ1c3RBc2lh
+IE1hdHRlciBQQUEwIBcNMjMwMzE2MDkwMDAwWhgPOTk5OTEyMzEyMzU5NTlaMEYx
+JTAjBgNVBAoMHFRydXN0QXNpYSBUZWNobm9sb2dpZXMsIEluYy4xHTAbBgNVBAMM
+FFRydXN0QXNpYSBNYXR0ZXIgUEFBMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE
+OR22pd0spHC4jC7SIPEs+cBpiqkZcYe5FIvTVctWIjtXv4kVECplbOVEZU04LTbq
+LLqtAqRfceMByJndQPo/GaNmMGQwEgYDVR0TAQH/BAgwBgEB/wIBATAOBgNVHQ8B
+Af8EBAMCAQYwHQYDVR0OBBYEFLbP9grPxCTWHCYU2WO2MtvdA6iKMB8GA1UdIwQY
+MBaAFLbP9grPxCTWHCYU2WO2MtvdA6iKMAoGCCqGSM49BAMCA0gAMEUCIEyDlC7G
+8xZqt/D6wcF8nTxpErN/IC8D+nGiGJ9zdPJkAiEAv0cW5PHHvbY+XmI313NC3cXY
+8Dqh8mau++ljhEm5/yI=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.der b/credentials/production/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.der
new file mode 100644
index 00000000000000..93d982a0daf2a8
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.pem
new file mode 100644
index 00000000000000..c9dc88d18e1791
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_WISeKey_OISTE_Matter_PAA_GA.pem
@@ -0,0 +1,11 @@
+-----BEGIN CERTIFICATE-----
+MIIBqjCCAVCgAwIBAgIIQBewM13+lj4wCgYIKoZIzj0EAwIwJjEkMCIGA1UEAwwb
+V0lTZUtleSBPSVNURSBNYXR0ZXIgUEFBIEdBMCAXDTIzMDIyMjExMTE0NloYDzk5
+OTkxMjMxMjM1OTU5WjAmMSQwIgYDVQQDDBtXSVNlS2V5IE9JU1RFIE1hdHRlciBQ
+QUEgR0EwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATJjpFuVHclmIdj11Q/4kQh
+K2vw5KuONO2lvC70fqpaJxZK8nx5WvwEh1nKmrQE3x/3mz5YnjaY4Bzy92um9Yxs
+o2YwZDASBgNVHRMBAf8ECDAGAQH/AgEBMB8GA1UdIwQYMBaAFNiTWojcUlPqNU/O
+2QPO0vYqXKr/MB0GA1UdDgQWBBTYk1qI3FJT6jVPztkDztL2Klyq/zAOBgNVHQ8B
+Af8EBAMCAYYwCgYIKoZIzj0EAwIDSAAwRQIgIwWMdfZe9GjpmpGh8e9cv0yXQgoH
+8NtAvUiaku7uWH0CIQCUyGey5oDGuN/4kjJ9e5WFY9Ldq9DI/l2VzAxR7/GVqg==
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.der b/credentials/production/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.der
new file mode 100644
index 00000000000000..1cb1764da36ff5
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.pem
new file mode 100644
index 00000000000000..4b6076b165fac2
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_XFN_Matter_PAA_VID_vid_0x111D.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIB0DCCAXagAwIBAgIUEVaPZC4WCRy6jfLzxPQPzA5HSR8wCgYIKoZIzj0EAwIw
+MzEbMBkGA1UEAwwSWEZOIE1hdHRlciBQQUEgVklEMRQwEgYKKwYBBAGConwCAQwE
+MTExRDAgFw0yMTEwMjcxNzM5MzdaGA8yMDUxMTAyMDE3MzkzN1owMzEbMBkGA1UE
+AwwSWEZOIE1hdHRlciBQQUEgVklEMRQwEgYKKwYBBAGConwCAQwEMTExRDBZMBMG
+ByqGSM49AgEGCCqGSM49AwEHA0IABOrVSyaumHozQkNsXGhId3uB7RiY/fggg2Ts
+uIkYGxleT7WtMoEra98EOLWxZ0YpUJmoDjk2ywomql02YIus6oOjZjBkMBIGA1Ud
+EwEB/wQIMAYBAf8CAQEwHwYDVR0jBBgwFoAUELa1jWK96T1Itk7yAeOdgGiHkpIw
+HQYDVR0OBBYEFBC2tY1ivek9SLZO8gHjnYBoh5KSMA4GA1UdDwEB/wQEAwIBhjAK
+BggqhkjOPQQDAgNIADBFAiAHAOsEylKtETbk2vCb1p3+/ohza7pWxsQZGjFDlzcT
+6QIhAOR4QOqegCxM9hHzmMpE0oNCwY0YMiwqhxb4cGvAIdBc
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.der
new file mode 100644
index 00000000000000..441d705fa83f91
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.pem
new file mode 100644
index 00000000000000..aa8944da59977b
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Xiaomi_Mijia_Matter_PAA_vid_0x126E.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIBzzCCAXSgAwIBAgIIHD7Re2PC4v4wCgYIKoZIzj0EAwIwODEgMB4GA1UEAwwX
+WGlhb21pIE1pamlhIE1hdHRlciBQQUExFDASBgorBgEEAYKifAIBDAQxMjZFMCAX
+DTIyMTIwNzEyNTkzMVoYDzk5OTkxMjMxMjM1OTU5WjA4MSAwHgYDVQQDDBdYaWFv
+bWkgTWlqaWEgTWF0dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEyNkUwWTATBgcq
+hkjOPQIBBggqhkjOPQMBBwNCAAS8fHbfdztglyhDdSuhnvUkiQwEZwSdq2P7CqkX
+g6hsuVR5Y3Bew/o5pMVwpPFqW/9dia2YGbBW4CPpZYiz/VhXo2YwZDASBgNVHRMB
+Af8ECDAGAQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUMbt+ENHwgebG
+VDCRxEpqeR3U7gkwHwYDVR0jBBgwFoAUMbt+ENHwgebGVDCRxEpqeR3U7gkwCgYI
+KoZIzj0EAwIDSQAwRgIhAJLuT66XntEO1+WBY5ovx/1HhwW6dbYPPyQWsIj0zJJC
+AiEAifz6pqyxjuEXQPGGl2Au46DAPcHY5m7TGg7q0Uzp+6Y=
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.der b/credentials/production/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.der
new file mode 100644
index 00000000000000..16441ec6e394cf
Binary files /dev/null and b/credentials/production/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.der differ
diff --git a/credentials/production/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.pem b/credentials/production/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.pem
new file mode 100644
index 00000000000000..00b429f75d69cd
--- /dev/null
+++ b/credentials/production/paa-root-certs/dcld_mirror_CN_Yeelight_Matter_PAA_vid_0x1312.pem
@@ -0,0 +1,12 @@
+-----BEGIN CERTIFICATE-----
+MIIByjCCAXGgAwIBAgIQSqc9zdIOdLEk8SqWG56VmjAKBggqhkjOPQQDAjA0MRww
+GgYDVQQDDBNZZWVsaWdodCBNYXR0ZXIgUEFBMRQwEgYKKwYBBAGConwCAQwEMTMx
+MjAgFw0yMzAzMjAwODI3NTZaGA8yMTIzMDIyNDA5Mjc1NlowNDEcMBoGA1UEAwwT
+WWVlbGlnaHQgTWF0dGVyIFBBQTEUMBIGCisGAQQBgqJ8AgEMBDEzMTIwWTATBgcq
+hkjOPQIBBggqhkjOPQMBBwNCAAS1tzm+iYv1rsdh8bwXO8ncWryvKi17JaQt0P1l
+qj4ArsHOBZZMPiz3WenbyhGzqYfn1yhigEJZ+GRv/SptZIDno2MwYTAPBgNVHRMB
+Af8EBTADAQH/MB0GA1UdDgQWBBTUhw1UsjBbhoyjr+6nJRiXOsggjjAOBgNVHQ8B
+Af8EBAMCAYYwHwYDVR0jBBgwFoAU1IcNVLIwW4aMo6/upyUYlzrIII4wCgYIKoZI
+zj0EAwIDRwAwRAIgXkjZ9nFLAu3aWnHMu3AfUdR3TE/eW5eZw03ISuPDMjQCIEcA
+LnL4qXokODP80ooYjbP53CcaHAIBxlUGQQ50KzwH
+-----END CERTIFICATE-----
\ No newline at end of file
diff --git a/docs/guides/repl/.ipynb_checkpoints/Matter - Basic Interactions-checkpoint.ipynb b/docs/guides/repl/.ipynb_checkpoints/Matter - Basic Interactions-checkpoint.ipynb
index 12427060a4c542..4eda97c156b110 100644
--- a/docs/guides/repl/.ipynb_checkpoints/Matter - Basic Interactions-checkpoint.ipynb
+++ b/docs/guides/repl/.ipynb_checkpoints/Matter - Basic Interactions-checkpoint.ipynb
@@ -1477,7 +1477,7 @@
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.ScanMaxTimeSeconds'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.ConnectMaxTimeSeconds'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.InterfaceEnabled'>: False,\n",
- "│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'>: <NetworkCommissioningStatus.kSuccess: 0>,\n",
+ "│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'>: <NetworkCommissioningStatusEnum.kSuccess: 0>,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkID'>: b'',\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastConnectErrorValue'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.FeatureMap'>: 1,\n",
@@ -1799,7 +1799,7 @@
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.ScanMaxTimeSeconds'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.ConnectMaxTimeSeconds'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.InterfaceEnabled'>: False,\n",
- "│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'>: <NetworkCommissioningStatus.kSuccess: 0>,\n",
+ "│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'>: <NetworkCommissioningStatusEnum.kSuccess: 0>,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkID'>: b'',\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastConnectErrorValue'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.FeatureMap'>: 0,\n",
@@ -2493,7 +2493,7 @@
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.ScanMaxTimeSeconds'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.ConnectMaxTimeSeconds'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.InterfaceEnabled'\u001b[0m\u001b[1m>\u001b[0m: \u001b[3;91mFalse\u001b[0m,\n",
- "\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95mNetworkCommissioningStatus.kSuccess:\u001b[0m\u001b[39m \u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m>\u001b[0m,\n",
+ "\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95mNetworkCommissioningStatusEnum.kSuccess:\u001b[0m\u001b[39m \u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m>\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkID'\u001b[0m\u001b[1m>\u001b[0m: \u001b[32mb''\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastConnectErrorValue'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.FeatureMap'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m1\u001b[0m,\n",
@@ -2815,7 +2815,7 @@
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.ScanMaxTimeSeconds'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.ConnectMaxTimeSeconds'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.InterfaceEnabled'\u001b[0m\u001b[1m>\u001b[0m: \u001b[3;91mFalse\u001b[0m,\n",
- "\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95mNetworkCommissioningStatus.kSuccess:\u001b[0m\u001b[39m \u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m>\u001b[0m,\n",
+ "\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95mNetworkCommissioningStatusEnum.kSuccess:\u001b[0m\u001b[39m \u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m>\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkID'\u001b[0m\u001b[1m>\u001b[0m: \u001b[32mb''\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastConnectErrorValue'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.FeatureMap'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
diff --git a/docs/guides/repl/Matter_Basic_Interactions.ipynb b/docs/guides/repl/Matter_Basic_Interactions.ipynb
index f1ca29e36cc6ac..c87663f6e26959 100644
--- a/docs/guides/repl/Matter_Basic_Interactions.ipynb
+++ b/docs/guides/repl/Matter_Basic_Interactions.ipynb
@@ -1470,7 +1470,7 @@
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.ScanMaxTimeSeconds'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.ConnectMaxTimeSeconds'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.InterfaceEnabled'>: False,\n",
- "│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'>: <NetworkCommissioningStatus.kSuccess: 0>,\n",
+ "│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'>: <NetworkCommissioningStatusEnum.kSuccess: 0>,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkID'>: b'',\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastConnectErrorValue'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.FeatureMap'>: 1,\n",
@@ -1792,7 +1792,7 @@
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.ScanMaxTimeSeconds'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.ConnectMaxTimeSeconds'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.InterfaceEnabled'>: False,\n",
- "│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'>: <NetworkCommissioningStatus.kSuccess: 0>,\n",
+ "│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'>: <NetworkCommissioningStatusEnum.kSuccess: 0>,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkID'>: b'',\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.LastConnectErrorValue'>: 0,\n",
"│ │ │ <class 'chip.clusters.Objects.NetworkCommissioning.Attributes.FeatureMap'>: 0,\n",
@@ -2486,7 +2486,7 @@
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.ScanMaxTimeSeconds'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.ConnectMaxTimeSeconds'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.InterfaceEnabled'\u001b[0m\u001b[1m>\u001b[0m: \u001b[3;91mFalse\u001b[0m,\n",
- "\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95mNetworkCommissioningStatus.kSuccess:\u001b[0m\u001b[39m \u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m>\u001b[0m,\n",
+ "\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95mNetworkCommissioningStatusEnum.kSuccess:\u001b[0m\u001b[39m \u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m>\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkID'\u001b[0m\u001b[1m>\u001b[0m: \u001b[32mb''\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastConnectErrorValue'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.FeatureMap'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m1\u001b[0m,\n",
@@ -2808,7 +2808,7 @@
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.ScanMaxTimeSeconds'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.ConnectMaxTimeSeconds'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.InterfaceEnabled'\u001b[0m\u001b[1m>\u001b[0m: \u001b[3;91mFalse\u001b[0m,\n",
- "\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95mNetworkCommissioningStatus.kSuccess:\u001b[0m\u001b[39m \u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m>\u001b[0m,\n",
+ "\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkingStatus'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95mNetworkCommissioningStatusEnum.kSuccess:\u001b[0m\u001b[39m \u001b[0m\u001b[1;36m0\u001b[0m\u001b[1m>\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastNetworkID'\u001b[0m\u001b[1m>\u001b[0m: \u001b[32mb''\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.LastConnectErrorValue'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
"\u001b[2;32m│ │ │ \u001b[0m\u001b[1m<\u001b[0m\u001b[1;95mclass\u001b[0m\u001b[39m \u001b[0m\u001b[32m'chip.clusters.Objects.NetworkCommissioning.Attributes.FeatureMap'\u001b[0m\u001b[1m>\u001b[0m: \u001b[1;36m0\u001b[0m,\n",
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 b547bbf12b09c9..55172fcfe511c6 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
@@ -1327,7 +1327,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -1343,7 +1343,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -1358,7 +1358,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -1366,12 +1366,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -1382,21 +1382,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -1439,20 +1439,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap b/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap
index fd876296ab5a85..2f71043449420b 100644
--- a/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap
+++ b/examples/all-clusters-app/all-clusters-common/all-clusters-app.zap
@@ -16,12 +16,6 @@
}
],
"package": [
- {
- "pathRelativity": "relativeToZap",
- "path": "../../../src/app/zap-templates/app-templates.json",
- "type": "gen-templates-json",
- "version": "chip-v1"
- },
{
"pathRelativity": "relativeToZap",
"path": "../../../src/app/zap-templates/zcl/zcl-with-test-extensions.json",
@@ -29,6 +23,12 @@
"category": "matter",
"version": 1,
"description": "Matter SDK ZCL data with some extensions"
+ },
+ {
+ "pathRelativity": "relativeToZap",
+ "path": "../../../src/app/zap-templates/app-templates.json",
+ "type": "gen-templates-json",
+ "version": "chip-v1"
}
],
"endpointTypes": [
@@ -473,7 +473,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -3239,7 +3239,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -8097,7 +8097,7 @@
"code": 4,
"mfgCode": null,
"side": "server",
- "type": "enum8",
+ "type": "LightSensorTypeEnum",
"included": 0,
"storageOption": "RAM",
"singleton": 0,
@@ -9459,7 +9459,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -9571,7 +9571,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -12318,7 +12318,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -20191,7 +20191,7 @@
"code": 4,
"mfgCode": null,
"side": "server",
- "type": "enum8",
+ "type": "LightSensorTypeEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -21145,7 +21145,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21161,7 +21161,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21177,7 +21177,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21193,7 +21193,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21469,7 +21469,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21485,7 +21485,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21501,7 +21501,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21517,7 +21517,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21793,7 +21793,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21809,7 +21809,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21825,7 +21825,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -21841,7 +21841,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22117,7 +22117,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22133,7 +22133,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22149,7 +22149,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22165,7 +22165,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22441,7 +22441,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22457,7 +22457,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22473,7 +22473,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22489,7 +22489,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22765,7 +22765,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22781,7 +22781,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22797,7 +22797,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -22813,7 +22813,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23089,7 +23089,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23105,7 +23105,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23121,7 +23121,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23137,7 +23137,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23413,7 +23413,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23429,7 +23429,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23445,7 +23445,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23461,7 +23461,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23737,7 +23737,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23753,7 +23753,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23769,7 +23769,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -23785,7 +23785,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -24061,7 +24061,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -24077,7 +24077,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -24093,7 +24093,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -24109,7 +24109,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -24385,7 +24385,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -24401,7 +24401,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -24417,7 +24417,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -24433,7 +24433,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -28363,7 +28363,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -31769,7 +31769,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "External",
"singleton": 0,
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 b4942289beb56c..30de0c72df3251 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
@@ -1183,7 +1183,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -1199,7 +1199,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -1214,7 +1214,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -1222,12 +1222,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -1238,21 +1238,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -1295,20 +1295,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.zap b/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.zap
index 42d53565aa5d27..531975331ff1bb 100644
--- a/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.zap
+++ b/examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.zap
@@ -473,7 +473,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -3202,7 +3202,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -7718,7 +7718,7 @@
"code": 4,
"mfgCode": null,
"side": "server",
- "type": "enum8",
+ "type": "LightSensorTypeEnum",
"included": 0,
"storageOption": "RAM",
"singleton": 0,
@@ -8930,7 +8930,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -9042,7 +9042,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -11780,7 +11780,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -16751,7 +16751,7 @@
"code": 4,
"mfgCode": null,
"side": "server",
- "type": "enum8",
+ "type": "LightSensorTypeEnum",
"included": 0,
"storageOption": "RAM",
"singleton": 0,
@@ -21429,7 +21429,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -24835,7 +24835,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "External",
"singleton": 0,
@@ -25000,6 +25000,5 @@
"endpointVersion": 1,
"deviceIdentifier": 61442
}
- ],
- "log": []
+ ]
}
\ No newline at end of file
diff --git a/examples/bridge-app/bridge-common/bridge-app.matter b/examples/bridge-app/bridge-common/bridge-app.matter
index e953b467ed77ac..fbc51ea9d37fc8 100644
--- a/examples/bridge-app/bridge-common/bridge-app.matter
+++ b/examples/bridge-app/bridge-common/bridge-app.matter
@@ -715,7 +715,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -731,7 +731,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -746,7 +746,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -754,12 +754,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -770,21 +770,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -827,20 +827,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/bridge-app/bridge-common/bridge-app.zap b/examples/bridge-app/bridge-common/bridge-app.zap
index 5911b5466b9ee9..ffde35c20b4075 100644
--- a/examples/bridge-app/bridge-common/bridge-app.zap
+++ b/examples/bridge-app/bridge-common/bridge-app.zap
@@ -1897,7 +1897,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6135,7 +6135,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.zap b/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.zap
index 583a90f240395d..737718bf5d98fd 100644
--- a/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.zap
+++ b/examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5993,7 +5993,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.matter b/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.matter
index 7d148c4f7c884a..45304d8862e103 100644
--- a/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.matter
+++ b/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.matter
@@ -683,7 +683,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -699,7 +699,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -714,7 +714,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -722,12 +722,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -738,21 +738,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -795,20 +795,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.zap b/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.zap
index b2e59932566bad..641763ffe3787b 100644
--- a/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.zap
+++ b/examples/chef/devices/rootnode_colortemperaturelight_hbUnzYVeyn.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5978,7 +5978,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter b/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter
index 0f00306bb151d9..779ca4ce8ea28c 100644
--- a/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter
+++ b/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.matter
@@ -586,7 +586,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -602,7 +602,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -617,7 +617,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -625,12 +625,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -641,21 +641,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -698,20 +698,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.zap b/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.zap
index 1588271f0e1ac1..d535157c7ae66e 100644
--- a/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.zap
+++ b/examples/chef/devices/rootnode_contactsensor_lFAGG1bfRO.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter b/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter
index a5dfc6f6755969..0ff63d13f8ad4e 100644
--- a/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter
+++ b/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.matter
@@ -735,7 +735,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -751,7 +751,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -766,7 +766,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -774,12 +774,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -790,21 +790,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -847,20 +847,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.zap b/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.zap
index a12503c6280a59..3816db4a60f3a3 100644
--- a/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.zap
+++ b/examples/chef/devices/rootnode_dimmablelight_bCwGYSDpoe.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2557,7 +2557,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6018,7 +6018,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter b/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter
index 2b23b97657da04..185d5ca07a0946 100644
--- a/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter
+++ b/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.matter
@@ -586,7 +586,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -602,7 +602,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -617,7 +617,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -625,12 +625,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -641,21 +641,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -698,20 +698,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.zap b/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.zap
index 3fdaa2166a91b0..e950e4f0d356bb 100644
--- a/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.zap
+++ b/examples/chef/devices/rootnode_doorlock_aNKYAreMXE.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5970,7 +5970,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter b/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter
index 385a6adceeceda..f6e85f01d4b968 100644
--- a/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter
+++ b/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.matter
@@ -735,7 +735,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -751,7 +751,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -766,7 +766,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -774,12 +774,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -790,21 +790,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -847,20 +847,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.zap b/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.zap
index e72d130045e838..215741490ee549 100644
--- a/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.zap
+++ b/examples/chef/devices/rootnode_extendedcolorlight_8lcaaYJVAa.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5970,7 +5970,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_fan_7N2TobIlOX.matter b/examples/chef/devices/rootnode_fan_7N2TobIlOX.matter
index 00a4d9078572d8..09d3036c8a9612 100644
--- a/examples/chef/devices/rootnode_fan_7N2TobIlOX.matter
+++ b/examples/chef/devices/rootnode_fan_7N2TobIlOX.matter
@@ -573,7 +573,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -589,7 +589,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -604,7 +604,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -612,12 +612,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -628,21 +628,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -685,20 +685,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_fan_7N2TobIlOX.zap b/examples/chef/devices/rootnode_fan_7N2TobIlOX.zap
index 051d00c59c122e..f715082468805f 100644
--- a/examples/chef/devices/rootnode_fan_7N2TobIlOX.zap
+++ b/examples/chef/devices/rootnode_fan_7N2TobIlOX.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2557,7 +2557,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter b/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter
index 5481f14fc6b2b3..853fadc71c258f 100644
--- a/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter
+++ b/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.matter
@@ -661,7 +661,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -677,7 +677,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -692,7 +692,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -700,12 +700,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -716,21 +716,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -773,20 +773,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.zap b/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.zap
index 9cafe222aa5d7f..6cac6f5ef673ac 100644
--- a/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.zap
+++ b/examples/chef/devices/rootnode_flowsensor_1zVxHedlaV.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter b/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter
index 14a61685af9e68..5ef010f0bad447 100644
--- a/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter
+++ b/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.matter
@@ -729,7 +729,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -745,7 +745,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -760,7 +760,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -768,12 +768,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -784,21 +784,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -841,20 +841,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.zap b/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.zap
index fc8a1d59ee3659..a363843cff96b7 100644
--- a/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.zap
+++ b/examples/chef/devices/rootnode_heatingcoolingunit_ncdGai1E5a.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5936,7 +5936,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter b/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter
index 786ffa050e7f61..9f8dce25cf5085 100644
--- a/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter
+++ b/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.matter
@@ -661,7 +661,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -677,7 +677,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -692,7 +692,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -700,12 +700,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -716,21 +716,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -773,20 +773,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.zap b/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.zap
index 54a810ea92bde4..f143625afbb536 100644
--- a/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.zap
+++ b/examples/chef/devices/rootnode_humiditysensor_Xyj4gda6Hb.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter b/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter
index de7b03df8a1fbd..95af96b236b77f 100644
--- a/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter
+++ b/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.matter
@@ -661,7 +661,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -677,7 +677,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -692,7 +692,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -700,12 +700,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -716,21 +716,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -773,20 +773,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.zap b/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.zap
index f74319cc59434f..1778ef509b39f8 100644
--- a/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.zap
+++ b/examples/chef/devices/rootnode_lightsensor_lZQycTFcJK.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6268,7 +6268,7 @@
"code": 4,
"mfgCode": null,
"side": "server",
- "type": "enum8",
+ "type": "LightSensorTypeEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter b/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter
index ced95fbbf73b2d..6edb08405d948f 100644
--- a/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter
+++ b/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.matter
@@ -661,7 +661,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -677,7 +677,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -692,7 +692,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -700,12 +700,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -716,21 +716,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -773,20 +773,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.zap b/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.zap
index 7efab7fc93c264..cfcd999a726b20 100644
--- a/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.zap
+++ b/examples/chef/devices/rootnode_occupancysensor_iHyVgifZuo.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter b/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter
index b061252daa615f..bceaeaea4b6677 100644
--- a/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter
+++ b/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.matter
@@ -735,7 +735,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -751,7 +751,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -766,7 +766,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -774,12 +774,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -790,21 +790,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -847,20 +847,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.zap b/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.zap
index ab2c7a1b66d617..3d677ebd130a75 100644
--- a/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.zap
+++ b/examples/chef/devices/rootnode_onofflight_bbs1b7IaOV.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5970,7 +5970,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter b/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter
index 6975bc607bd689..7e5687d169cc1d 100644
--- a/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter
+++ b/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.matter
@@ -698,7 +698,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -714,7 +714,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -729,7 +729,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -737,12 +737,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -753,21 +753,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -810,20 +810,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.zap b/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.zap
index 17e5f453deff26..4d114d92a0c17c 100644
--- a/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.zap
+++ b/examples/chef/devices/rootnode_onofflightswitch_FsPlMr090Q.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5970,7 +5970,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter b/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter
index 116b20a3fd8635..56e270ab96126a 100644
--- a/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter
+++ b/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.matter
@@ -634,7 +634,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -650,7 +650,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -665,7 +665,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -673,12 +673,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -689,21 +689,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -746,20 +746,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.zap b/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.zap
index 6a6ba106743e11..0bac9060a6c2c4 100644
--- a/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.zap
+++ b/examples/chef/devices/rootnode_onoffpluginunit_Wtf8ss5EBY.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5970,7 +5970,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter b/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter
index 5e25edb265d61b..d416c526db7b8f 100644
--- a/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter
+++ b/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.matter
@@ -661,7 +661,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -677,7 +677,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -692,7 +692,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -700,12 +700,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -716,21 +716,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -773,20 +773,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.zap b/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.zap
index 5cbfd18334cb33..abc07c0f87df82 100644
--- a/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.zap
+++ b/examples/chef/devices/rootnode_pressuresensor_s0qC9wLH4k.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/chef/devices/rootnode_pump_a811bb33a0.matter b/examples/chef/devices/rootnode_pump_a811bb33a0.matter
index 23bc7c11a29833..10e00262daafbb 100644
--- a/examples/chef/devices/rootnode_pump_a811bb33a0.matter
+++ b/examples/chef/devices/rootnode_pump_a811bb33a0.matter
@@ -413,7 +413,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -429,7 +429,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -444,7 +444,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -452,12 +452,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -468,21 +468,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -525,20 +525,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_pump_a811bb33a0.zap b/examples/chef/devices/rootnode_pump_a811bb33a0.zap
index fdc261853dc520..759cdfdba44c45 100644
--- a/examples/chef/devices/rootnode_pump_a811bb33a0.zap
+++ b/examples/chef/devices/rootnode_pump_a811bb33a0.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2895,7 +2895,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6459,7 +6459,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter b/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter
index a52f5c0902c5df..53aa0b934f2666 100644
--- a/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter
+++ b/examples/chef/devices/rootnode_speaker_RpzeXdimqA.matter
@@ -729,7 +729,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -745,7 +745,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -760,7 +760,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -768,12 +768,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -784,21 +784,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -841,20 +841,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_speaker_RpzeXdimqA.zap b/examples/chef/devices/rootnode_speaker_RpzeXdimqA.zap
index 09cb5eac3019cf..209a2b9ed60b38 100644
--- a/examples/chef/devices/rootnode_speaker_RpzeXdimqA.zap
+++ b/examples/chef/devices/rootnode_speaker_RpzeXdimqA.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter b/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter
index 98ee9f3aa4344a..3ad8ef98491391 100644
--- a/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter
+++ b/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.matter
@@ -661,7 +661,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -677,7 +677,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -692,7 +692,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -700,12 +700,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -716,21 +716,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -773,20 +773,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.zap b/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.zap
index 80bbbb2a262228..bc0e7c737038e4 100644
--- a/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.zap
+++ b/examples/chef/devices/rootnode_temperaturesensor_Qy1zkNW7c3.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter b/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter
index a5a3b484743641..49389f4537b4c4 100644
--- a/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter
+++ b/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.matter
@@ -586,7 +586,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -602,7 +602,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -617,7 +617,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -625,12 +625,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -641,21 +641,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -698,20 +698,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.zap b/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.zap
index 99a099dc505d9f..44bde117b830f6 100644
--- a/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.zap
+++ b/examples/chef/devices/rootnode_thermostat_bm3fb8dhYi.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6018,7 +6018,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter b/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter
index 70cbdc183183d6..02a2ea6a49c10b 100644
--- a/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter
+++ b/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.matter
@@ -586,7 +586,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -602,7 +602,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -617,7 +617,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -625,12 +625,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -641,21 +641,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -698,20 +698,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.zap b/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.zap
index 2cca7b2455d9e5..5b4360a8a32c0a 100644
--- a/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.zap
+++ b/examples/chef/devices/rootnode_windowcovering_RLCxaGi9Yx.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5970,7 +5970,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
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 cd86ce684438e7..21f44eb0aa564e 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
@@ -573,7 +573,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -589,7 +589,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -604,7 +604,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -612,12 +612,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -628,21 +628,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -685,20 +685,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/contact-sensor-app/contact-sensor-common/contact-sensor-app.zap b/examples/contact-sensor-app/contact-sensor-common/contact-sensor-app.zap
index 33ae14795f50a3..b60d198e115e64 100644
--- a/examples/contact-sensor-app/contact-sensor-common/contact-sensor-app.zap
+++ b/examples/contact-sensor-app/contact-sensor-common/contact-sensor-app.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5977,7 +5977,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/dynamic-bridge-app/bridge-common/bridge-app.matter b/examples/dynamic-bridge-app/bridge-common/bridge-app.matter
index 47b4d0c3df0a3e..30bdd0efe899c5 100644
--- a/examples/dynamic-bridge-app/bridge-common/bridge-app.matter
+++ b/examples/dynamic-bridge-app/bridge-common/bridge-app.matter
@@ -715,7 +715,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -731,7 +731,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -746,7 +746,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -754,12 +754,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -770,21 +770,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -827,20 +827,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/dynamic-bridge-app/bridge-common/bridge-app.zap b/examples/dynamic-bridge-app/bridge-common/bridge-app.zap
index 3efd440348afb4..12cd73afba6aba 100644
--- a/examples/dynamic-bridge-app/bridge-common/bridge-app.zap
+++ b/examples/dynamic-bridge-app/bridge-common/bridge-app.zap
@@ -1904,7 +1904,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6124,7 +6124,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
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 d3c365b65e19c3..2d9d75be284751 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
@@ -883,7 +883,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -899,7 +899,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -914,7 +914,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -922,12 +922,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -938,21 +938,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -995,20 +995,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/light-switch-app/light-switch-common/light-switch-app.zap b/examples/light-switch-app/light-switch-common/light-switch-app.zap
index fe827432b4ad43..00257249e17edc 100644
--- a/examples/light-switch-app/light-switch-common/light-switch-app.zap
+++ b/examples/light-switch-app/light-switch-common/light-switch-app.zap
@@ -417,7 +417,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2491,7 +2491,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5943,7 +5943,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -8599,7 +8599,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
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 4430a35d729033..66c6f0ed1c6db3 100644
--- a/examples/lighting-app/bouffalolab/data_model/lighting-app-thread.matter
+++ b/examples/lighting-app/bouffalolab/data_model/lighting-app-thread.matter
@@ -743,7 +743,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -759,7 +759,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -774,7 +774,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -782,12 +782,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -798,21 +798,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -855,20 +855,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/lighting-app/bouffalolab/data_model/lighting-app-thread.zap b/examples/lighting-app/bouffalolab/data_model/lighting-app-thread.zap
index ae1990d056a28c..d16e58ac627b66 100644
--- a/examples/lighting-app/bouffalolab/data_model/lighting-app-thread.zap
+++ b/examples/lighting-app/bouffalolab/data_model/lighting-app-thread.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5902,7 +5902,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
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 d535e9438f8773..c8bc18787d3d9b 100644
--- a/examples/lighting-app/bouffalolab/data_model/lighting-app-wifi.matter
+++ b/examples/lighting-app/bouffalolab/data_model/lighting-app-wifi.matter
@@ -743,7 +743,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -759,7 +759,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -774,7 +774,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -782,12 +782,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -798,21 +798,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -855,20 +855,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/lighting-app/bouffalolab/data_model/lighting-app-wifi.zap b/examples/lighting-app/bouffalolab/data_model/lighting-app-wifi.zap
index b1ac849930fbb0..8a0a84180b20ff 100644
--- a/examples/lighting-app/bouffalolab/data_model/lighting-app-wifi.zap
+++ b/examples/lighting-app/bouffalolab/data_model/lighting-app-wifi.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5902,7 +5902,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/lighting-app/lighting-common/lighting-app.matter b/examples/lighting-app/lighting-common/lighting-app.matter
index 47b3d43e5d8bee..d92513f33fbdf7 100644
--- a/examples/lighting-app/lighting-common/lighting-app.matter
+++ b/examples/lighting-app/lighting-common/lighting-app.matter
@@ -887,7 +887,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -903,7 +903,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -918,7 +918,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -926,12 +926,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -942,21 +942,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -999,20 +999,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/lighting-app/lighting-common/lighting-app.zap b/examples/lighting-app/lighting-common/lighting-app.zap
index 2b566814b97140..4e329bf3f9a696 100644
--- a/examples/lighting-app/lighting-common/lighting-app.zap
+++ b/examples/lighting-app/lighting-common/lighting-app.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5902,7 +5902,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -6014,7 +6014,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
diff --git a/examples/lighting-app/nxp/zap/lighting-on-off.matter b/examples/lighting-app/nxp/zap/lighting-on-off.matter
index 685fac309473ba..5fadd12aa95524 100644
--- a/examples/lighting-app/nxp/zap/lighting-on-off.matter
+++ b/examples/lighting-app/nxp/zap/lighting-on-off.matter
@@ -677,7 +677,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -693,7 +693,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -708,7 +708,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -716,12 +716,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -732,21 +732,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -783,20 +783,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/lighting-app/nxp/zap/lighting-on-off.zap b/examples/lighting-app/nxp/zap/lighting-on-off.zap
index 1bd0a98a1d5a55..3a8941297cbc42 100644
--- a/examples/lighting-app/nxp/zap/lighting-on-off.zap
+++ b/examples/lighting-app/nxp/zap/lighting-on-off.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6094,7 +6094,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -9113,6 +9113,5 @@
"endpointVersion": 1,
"deviceIdentifier": 256
}
- ],
- "log": []
+ ]
}
\ No newline at end of file
diff --git a/examples/lighting-app/qpg/zap/light.matter b/examples/lighting-app/qpg/zap/light.matter
index a35c1e768cc3a7..7d1f79bdbb00c0 100644
--- a/examples/lighting-app/qpg/zap/light.matter
+++ b/examples/lighting-app/qpg/zap/light.matter
@@ -687,7 +687,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -703,7 +703,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -718,7 +718,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -726,12 +726,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -742,21 +742,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -793,20 +793,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/lighting-app/qpg/zap/light.zap b/examples/lighting-app/qpg/zap/light.zap
index 5354dd69d623fb..4ecc61cd8a1a02 100644
--- a/examples/lighting-app/qpg/zap/light.zap
+++ b/examples/lighting-app/qpg/zap/light.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2813,7 +2813,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -7030,7 +7030,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
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 5467cc7eae1ef4..e2b5cc34badfb1 100644
--- a/examples/lighting-app/silabs/data_model/lighting-thread-app.matter
+++ b/examples/lighting-app/silabs/data_model/lighting-thread-app.matter
@@ -908,7 +908,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -924,7 +924,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -939,7 +939,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -947,12 +947,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -963,21 +963,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -1020,20 +1020,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/lighting-app/silabs/data_model/lighting-thread-app.zap b/examples/lighting-app/silabs/data_model/lighting-thread-app.zap
index 61638b8dd4d8df..c17df50d24b7a0 100644
--- a/examples/lighting-app/silabs/data_model/lighting-thread-app.zap
+++ b/examples/lighting-app/silabs/data_model/lighting-thread-app.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2421,7 +2421,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6033,7 +6033,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -6145,7 +6145,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "8",
@@ -8228,6 +8228,5 @@
"endpointVersion": 1,
"deviceIdentifier": 257
}
- ],
- "log": []
+ ]
}
\ No newline at end of file
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 96d954f3260c02..0f32ee174a5492 100644
--- a/examples/lighting-app/silabs/data_model/lighting-wifi-app.matter
+++ b/examples/lighting-app/silabs/data_model/lighting-wifi-app.matter
@@ -887,7 +887,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -903,7 +903,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -918,7 +918,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -926,12 +926,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -942,21 +942,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -999,20 +999,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/lighting-app/silabs/data_model/lighting-wifi-app.zap b/examples/lighting-app/silabs/data_model/lighting-wifi-app.zap
index d0948184a5d991..595f08a22e0638 100644
--- a/examples/lighting-app/silabs/data_model/lighting-wifi-app.zap
+++ b/examples/lighting-app/silabs/data_model/lighting-wifi-app.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2447,7 +2447,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5755,7 +5755,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -5867,7 +5867,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -8322,6 +8322,5 @@
"endpointVersion": 1,
"deviceIdentifier": 257
}
- ],
- "log": []
+ ]
}
\ No newline at end of file
diff --git a/examples/lock-app/lock-common/lock-app.matter b/examples/lock-app/lock-common/lock-app.matter
index 7702840e0b3d06..18d8c5c3a1cfb4 100644
--- a/examples/lock-app/lock-common/lock-app.matter
+++ b/examples/lock-app/lock-common/lock-app.matter
@@ -790,7 +790,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -806,7 +806,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -821,7 +821,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -829,12 +829,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -845,21 +845,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -902,20 +902,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/lock-app/lock-common/lock-app.zap b/examples/lock-app/lock-common/lock-app.zap
index a82e57d365f594..f29916c9b68c65 100644
--- a/examples/lock-app/lock-common/lock-app.zap
+++ b/examples/lock-app/lock-common/lock-app.zap
@@ -417,7 +417,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2446,7 +2446,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5841,7 +5841,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/lock-app/nxp/zap/lock-app.matter b/examples/lock-app/nxp/zap/lock-app.matter
index 4c3ae95812698a..dd28561f133574 100644
--- a/examples/lock-app/nxp/zap/lock-app.matter
+++ b/examples/lock-app/nxp/zap/lock-app.matter
@@ -296,7 +296,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -312,7 +312,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -327,7 +327,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -335,12 +335,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -351,21 +351,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -402,20 +402,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/lock-app/nxp/zap/lock-app.zap b/examples/lock-app/nxp/zap/lock-app.zap
index bf5b89eb64c0aa..54cbf6dc7829a8 100644
--- a/examples/lock-app/nxp/zap/lock-app.zap
+++ b/examples/lock-app/nxp/zap/lock-app.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6720,6 +6720,5 @@
"endpointVersion": 1,
"deviceIdentifier": 10
}
- ],
- "log": []
+ ]
}
\ No newline at end of file
diff --git a/examples/lock-app/qpg/zap/lock.matter b/examples/lock-app/qpg/zap/lock.matter
index a4ade38fb2501e..fa3d4a2500e107 100644
--- a/examples/lock-app/qpg/zap/lock.matter
+++ b/examples/lock-app/qpg/zap/lock.matter
@@ -521,7 +521,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -537,7 +537,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -552,7 +552,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -560,12 +560,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -576,21 +576,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -627,20 +627,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/lock-app/qpg/zap/lock.zap b/examples/lock-app/qpg/zap/lock.zap
index d77964ec0079cc..0f707b688c4af8 100644
--- a/examples/lock-app/qpg/zap/lock.zap
+++ b/examples/lock-app/qpg/zap/lock.zap
@@ -417,7 +417,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2750,7 +2750,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6913,7 +6913,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
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 db613805340dbd..410eaa08d2c140 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
@@ -148,7 +148,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -164,7 +164,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -179,7 +179,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -187,12 +187,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -203,12 +203,12 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
@@ -252,20 +252,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/log-source-app/log-source-common/log-source-app.zap b/examples/log-source-app/log-source-common/log-source-app.zap
index 9ae0dbb8b5c451..c8f1206c98d776 100644
--- a/examples/log-source-app/log-source-common/log-source-app.zap
+++ b/examples/log-source-app/log-source-common/log-source-app.zap
@@ -417,7 +417,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
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 4f407e54227139..df335e0d320d33 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
@@ -453,7 +453,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -469,7 +469,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -484,7 +484,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -492,12 +492,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -508,21 +508,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -565,20 +565,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/ota-provider-app/ota-provider-common/ota-provider-app.zap b/examples/ota-provider-app/ota-provider-common/ota-provider-app.zap
index 61b5298b22a261..23c02066958fa5 100644
--- a/examples/ota-provider-app/ota-provider-common/ota-provider-app.zap
+++ b/examples/ota-provider-app/ota-provider-common/ota-provider-app.zap
@@ -417,7 +417,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2328,7 +2328,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.matter b/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.matter
index 6a99553a571ba7..f25d1a815d47e2 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
@@ -635,7 +635,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -651,7 +651,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -666,7 +666,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -674,12 +674,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -690,21 +690,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -747,20 +747,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.zap b/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.zap
index f94041e2180f7f..88cbf17445fe15 100644
--- a/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.zap
+++ b/examples/ota-requestor-app/ota-requestor-common/ota-requestor-app.zap
@@ -417,7 +417,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2405,7 +2405,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5690,7 +5690,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -7312,7 +7312,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "External",
"singleton": 0,
diff --git a/examples/placeholder/linux/apps/app1/config.matter b/examples/placeholder/linux/apps/app1/config.matter
index 9e807c1f1e3056..8c93457f717351 100644
--- a/examples/placeholder/linux/apps/app1/config.matter
+++ b/examples/placeholder/linux/apps/app1/config.matter
@@ -1384,7 +1384,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -1400,7 +1400,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -1415,7 +1415,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -1423,12 +1423,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -1439,21 +1439,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -1496,20 +1496,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/placeholder/linux/apps/app1/config.zap b/examples/placeholder/linux/apps/app1/config.zap
index e004e30e5f7df9..17dfdafaffef2a 100644
--- a/examples/placeholder/linux/apps/app1/config.zap
+++ b/examples/placeholder/linux/apps/app1/config.zap
@@ -2178,7 +2178,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -8151,7 +8151,7 @@
"code": 4,
"mfgCode": null,
"side": "server",
- "type": "enum8",
+ "type": "LightSensorTypeEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -11187,7 +11187,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/placeholder/linux/apps/app2/config.matter b/examples/placeholder/linux/apps/app2/config.matter
index b8b0e9e19de999..e16c1091235c08 100644
--- a/examples/placeholder/linux/apps/app2/config.matter
+++ b/examples/placeholder/linux/apps/app2/config.matter
@@ -1343,7 +1343,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -1359,7 +1359,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -1374,7 +1374,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -1382,12 +1382,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -1398,21 +1398,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -1455,20 +1455,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/placeholder/linux/apps/app2/config.zap b/examples/placeholder/linux/apps/app2/config.zap
index fdb2a1647e2c63..09a3989fec531c 100644
--- a/examples/placeholder/linux/apps/app2/config.zap
+++ b/examples/placeholder/linux/apps/app2/config.zap
@@ -2378,7 +2378,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -8435,7 +8435,7 @@
"code": 4,
"mfgCode": null,
"side": "server",
- "type": "enum8",
+ "type": "LightSensorTypeEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -11471,7 +11471,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/pump-app/pump-common/pump-app.matter b/examples/pump-app/pump-common/pump-app.matter
index 587ae240c6df22..4ce98fbb11bfa8 100644
--- a/examples/pump-app/pump-common/pump-app.matter
+++ b/examples/pump-app/pump-common/pump-app.matter
@@ -607,7 +607,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -623,7 +623,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -638,7 +638,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -646,12 +646,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -662,21 +662,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -713,20 +713,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/pump-app/pump-common/pump-app.zap b/examples/pump-app/pump-common/pump-app.zap
index 535179b503cb88..ec914a1b9524ba 100644
--- a/examples/pump-app/pump-common/pump-app.zap
+++ b/examples/pump-app/pump-common/pump-app.zap
@@ -563,7 +563,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2797,7 +2797,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -7985,6 +7985,5 @@
"endpointVersion": 1,
"deviceIdentifier": 771
}
- ],
- "log": []
+ ]
}
\ No newline at end of file
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 a93cfc43db1268..0fbcef5fa10230 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
@@ -532,7 +532,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -548,7 +548,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -563,7 +563,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -571,12 +571,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -587,21 +587,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -638,20 +638,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/pump-controller-app/pump-controller-common/pump-controller-app.zap b/examples/pump-controller-app/pump-controller-common/pump-controller-app.zap
index d743025f249405..63590afb94e694 100644
--- a/examples/pump-controller-app/pump-controller-common/pump-controller-app.zap
+++ b/examples/pump-controller-app/pump-controller-common/pump-controller-app.zap
@@ -521,7 +521,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2745,7 +2745,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6813,6 +6813,5 @@
"endpointVersion": 1,
"deviceIdentifier": 772
}
- ],
- "log": []
+ ]
}
\ No newline at end of file
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 46f65cfdc10cd0..a31d294fe8cee4 100644
--- a/examples/temperature-measurement-app/temperature-measurement-common/temperature-measurement.matter
+++ b/examples/temperature-measurement-app/temperature-measurement-common/temperature-measurement.matter
@@ -333,7 +333,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -349,7 +349,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -364,7 +364,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -372,12 +372,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -388,21 +388,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -440,20 +440,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/temperature-measurement-app/temperature-measurement-common/temperature-measurement.zap b/examples/temperature-measurement-app/temperature-measurement-common/temperature-measurement.zap
index 97c197a4938110..d0a7ed84d45d63 100644
--- a/examples/temperature-measurement-app/temperature-measurement-common/temperature-measurement.zap
+++ b/examples/temperature-measurement-app/temperature-measurement-common/temperature-measurement.zap
@@ -1614,7 +1614,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
diff --git a/examples/thermostat/thermostat-common/thermostat.matter b/examples/thermostat/thermostat-common/thermostat.matter
index bf4da8b17df22d..e6ede801cbf654 100644
--- a/examples/thermostat/thermostat-common/thermostat.matter
+++ b/examples/thermostat/thermostat-common/thermostat.matter
@@ -781,7 +781,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -797,7 +797,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -812,7 +812,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -820,12 +820,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -836,21 +836,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -893,20 +893,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/thermostat/thermostat-common/thermostat.zap b/examples/thermostat/thermostat-common/thermostat.zap
index 8d7be4e08c9ae2..4c0a924e0de9ae 100644
--- a/examples/thermostat/thermostat-common/thermostat.zap
+++ b/examples/thermostat/thermostat-common/thermostat.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2523,7 +2523,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -8069,7 +8069,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/tv-app/tv-common/tv-app.matter b/examples/tv-app/tv-common/tv-app.matter
index ec510c202a0520..cdaa948be8c6e5 100644
--- a/examples/tv-app/tv-common/tv-app.matter
+++ b/examples/tv-app/tv-common/tv-app.matter
@@ -661,7 +661,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
client cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -677,7 +677,7 @@ client cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -692,7 +692,7 @@ client cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -700,12 +700,12 @@ client cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -716,21 +716,21 @@ client cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute optional int8u scanMaxTimeSeconds = 2;
readonly attribute optional int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -746,10 +746,10 @@ client cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
request struct AddOrUpdateWiFiNetworkRequest {
@@ -769,7 +769,7 @@ client cluster NetworkCommissioning = 49 {
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
@@ -780,7 +780,7 @@ client cluster NetworkCommissioning = 49 {
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
@@ -807,7 +807,7 @@ client cluster NetworkCommissioning = 49 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -823,7 +823,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -838,7 +838,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -846,12 +846,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -862,21 +862,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -919,20 +919,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/tv-app/tv-common/tv-app.zap b/examples/tv-app/tv-common/tv-app.zap
index cb3816516f45df..a07dce0879c8aa 100644
--- a/examples/tv-app/tv-common/tv-app.zap
+++ b/examples/tv-app/tv-common/tv-app.zap
@@ -417,7 +417,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2294,7 +2294,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
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 3e6fd12e239eec..6601e6323b99c0 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
@@ -684,7 +684,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -700,7 +700,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -715,7 +715,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -723,12 +723,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -739,21 +739,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -796,20 +796,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/tv-casting-app/tv-casting-common/tv-casting-app.zap b/examples/tv-casting-app/tv-casting-common/tv-casting-app.zap
index 0ba8d97e790675..5de7d571d09350 100644
--- a/examples/tv-casting-app/tv-casting-common/tv-casting-app.zap
+++ b/examples/tv-casting-app/tv-casting-common/tv-casting-app.zap
@@ -417,7 +417,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2260,7 +2260,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -7492,7 +7492,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/examples/window-app/common/window-app.matter b/examples/window-app/common/window-app.matter
index 4cc2e2a7941789..0044b60f094e5b 100644
--- a/examples/window-app/common/window-app.matter
+++ b/examples/window-app/common/window-app.matter
@@ -947,7 +947,7 @@ server cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
server cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -963,7 +963,7 @@ server cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -978,7 +978,7 @@ server cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -986,12 +986,12 @@ server cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -1002,21 +1002,21 @@ server cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute int8u scanMaxTimeSeconds = 2;
readonly attribute int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -1059,20 +1059,20 @@ server cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/examples/window-app/common/window-app.zap b/examples/window-app/common/window-app.zap
index 3c40c65a2da0fc..192f5737fdd369 100644
--- a/examples/window-app/common/window-app.zap
+++ b/examples/window-app/common/window-app.zap
@@ -569,7 +569,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -3101,7 +3101,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -6787,7 +6787,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -8323,7 +8323,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
diff --git a/scripts/tools/zap/tests/inputs/all-clusters-app.zap b/scripts/tools/zap/tests/inputs/all-clusters-app.zap
index a0796c8d118164..6c08f768a3255c 100644
--- a/scripts/tools/zap/tests/inputs/all-clusters-app.zap
+++ b/scripts/tools/zap/tests/inputs/all-clusters-app.zap
@@ -473,7 +473,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -3223,7 +3223,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -7801,7 +7801,7 @@
"code": 4,
"mfgCode": null,
"side": "server",
- "type": "enum8",
+ "type": "LightSensorTypeEnum",
"included": 0,
"storageOption": "RAM",
"singleton": 0,
@@ -9163,7 +9163,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -11965,7 +11965,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -16740,7 +16740,7 @@
"code": 4,
"mfgCode": null,
"side": "server",
- "type": "enum8",
+ "type": "LightSensorTypeEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -21348,7 +21348,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -24754,7 +24754,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "External",
"singleton": 0,
@@ -24919,6 +24919,5 @@
"endpointVersion": 1,
"deviceIdentifier": 61442
}
- ],
- "log": []
+ ]
}
\ No newline at end of file
diff --git a/scripts/tools/zap/tests/inputs/lighting-app.zap b/scripts/tools/zap/tests/inputs/lighting-app.zap
index ee7b3bf3ab2879..3d90f784db4050 100644
--- a/scripts/tools/zap/tests/inputs/lighting-app.zap
+++ b/scripts/tools/zap/tests/inputs/lighting-app.zap
@@ -433,7 +433,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -2509,7 +2509,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -5870,7 +5870,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -8309,6 +8309,5 @@
"endpointVersion": 1,
"deviceIdentifier": 257
}
- ],
- "log": []
+ ]
}
\ No newline at end of file
diff --git a/src/BUILD.gn b/src/BUILD.gn
index b58da12e39f349..26cf7c085938dd 100644
--- a/src/BUILD.gn
+++ b/src/BUILD.gn
@@ -94,6 +94,7 @@ if (chip_build_tests) {
"${chip_root}/src/lib/support/tests",
"${chip_root}/src/protocols/secure_channel/tests",
"${chip_root}/src/system/tests",
+ "${chip_root}/src/tracing/tests",
"${chip_root}/src/transport/tests",
]
}
diff --git a/src/app/clusters/network-commissioning/network-commissioning.cpp b/src/app/clusters/network-commissioning/network-commissioning.cpp
index 3a18a094a69360..a7d47e930dd8d3 100644
--- a/src/app/clusters/network-commissioning/network-commissioning.cpp
+++ b/src/app/clusters/network-commissioning/network-commissioning.cpp
@@ -142,7 +142,7 @@ CHIP_ERROR Instance::Read(const ConcreteReadAttributePath & aPath, AttributeValu
return aEncoder.EncodeList([this](const auto & encoder) {
auto networks = mpBaseDriver->GetNetworks();
CHIP_ERROR err = CHIP_NO_ERROR;
- Structs::NetworkInfo::Type networkForEncode;
+ Structs::NetworkInfoStruct::Type networkForEncode;
NetworkCommissioning::Network network;
for (; networks != nullptr && networks->Next(network);)
{
@@ -292,7 +292,7 @@ void FillDebugTextAndNetworkIndex(Commands::NetworkConfigResponse::Type & respon
{
response.debugText.SetValue(CharSpan(debugText.data(), debugText.size()));
}
- if (response.networkingStatus == NetworkCommissioningStatus::kSuccess)
+ if (response.networkingStatus == NetworkCommissioningStatusEnum::kSuccess)
{
response.networkIndex.SetValue(networkIndex);
}
@@ -365,7 +365,7 @@ void Instance::HandleAddOrUpdateWiFiNetwork(HandlerContext & ctx, const Commands
mpDriver.Get()->AddOrUpdateNetwork(req.ssid, req.credentials, debugText, outNetworkIndex);
FillDebugTextAndNetworkIndex(response, debugText, outNetworkIndex);
ctx.mCommandHandler.AddResponse(ctx.mRequestPath, response);
- if (response.networkingStatus == NetworkCommissioningStatus::kSuccess)
+ if (response.networkingStatus == NetworkCommissioningStatusEnum::kSuccess)
{
UpdateBreadcrumb(req.breadcrumb);
}
@@ -388,7 +388,7 @@ void Instance::HandleAddOrUpdateThreadNetwork(HandlerContext & ctx, const Comman
mpDriver.Get()->AddOrUpdateNetwork(req.operationalDataset, debugText, outNetworkIndex);
FillDebugTextAndNetworkIndex(response, debugText, outNetworkIndex);
ctx.mCommandHandler.AddResponse(ctx.mRequestPath, response);
- if (response.networkingStatus == NetworkCommissioningStatus::kSuccess)
+ if (response.networkingStatus == NetworkCommissioningStatusEnum::kSuccess)
{
UpdateBreadcrumb(req.breadcrumb);
}
@@ -424,7 +424,7 @@ void Instance::HandleRemoveNetwork(HandlerContext & ctx, const Commands::RemoveN
response.networkingStatus = mpWirelessDriver->RemoveNetwork(req.networkID, debugText, outNetworkIndex);
FillDebugTextAndNetworkIndex(response, debugText, outNetworkIndex);
ctx.mCommandHandler.AddResponse(ctx.mRequestPath, response);
- if (response.networkingStatus == NetworkCommissioningStatus::kSuccess)
+ if (response.networkingStatus == NetworkCommissioningStatusEnum::kSuccess)
{
UpdateBreadcrumb(req.breadcrumb);
}
@@ -460,7 +460,7 @@ void Instance::HandleReorderNetwork(HandlerContext & ctx, const Commands::Reorde
response.networkingStatus = mpWirelessDriver->ReorderNetwork(req.networkID, req.networkIndex, debugText);
FillDebugTextAndNetworkIndex(response, debugText, req.networkIndex);
ctx.mCommandHandler.AddResponse(ctx.mRequestPath, response);
- if (response.networkingStatus == NetworkCommissioningStatus::kSuccess)
+ if (response.networkingStatus == NetworkCommissioningStatusEnum::kSuccess)
{
UpdateBreadcrumb(req.breadcrumb);
}
@@ -500,7 +500,7 @@ void Instance::OnResult(Status commissioningError, CharSpan debugText, int32_t i
mLastNetworkingStatusValue.SetNonNull(commissioningError);
commandHandle->AddResponse(mPath, response);
- if (commissioningError == NetworkCommissioningStatus::kSuccess)
+ if (commissioningError == NetworkCommissioningStatusEnum::kSuccess)
{
CommitSavedBreadcrumb();
}
@@ -586,7 +586,7 @@ void Instance::OnFinished(Status status, CharSpan debugText, ThreadScanResponseI
for (size_t i = 0; i < scanResponseArrayLength; i++)
{
- Structs::ThreadInterfaceScanResult::Type result;
+ Structs::ThreadInterfaceScanResultStruct::Type result;
Encoding::BigEndian::Put64(extendedAddressBuffer, scanResponseArray[i].extendedAddress);
result.panId = scanResponseArray[i].panId;
result.extendedPanId = scanResponseArray[i].extendedPanId;
@@ -608,7 +608,7 @@ void Instance::OnFinished(Status status, CharSpan debugText, ThreadScanResponseI
{
ChipLogError(Zcl, "Failed to encode response: %s", err.AsString());
}
- if (status == NetworkCommissioningStatus::kSuccess)
+ if (status == NetworkCommissioningStatusEnum::kSuccess)
{
CommitSavedBreadcrumb();
}
@@ -651,7 +651,7 @@ void Instance::OnFinished(Status status, CharSpan debugText, WiFiScanResponseIte
for (; networks != nullptr && networks->Next(scanResponse) && networksEncoded < kMaxNetworksInScanResponse; networksEncoded++)
{
- Structs::WiFiInterfaceScanResult::Type result;
+ Structs::WiFiInterfaceScanResultStruct::Type result;
result.security = scanResponse.security;
result.ssid = ByteSpan(scanResponse.ssid, scanResponse.ssidLen);
result.bssid = ByteSpan(scanResponse.bssid, sizeof(scanResponse.bssid));
@@ -669,7 +669,7 @@ void Instance::OnFinished(Status status, CharSpan debugText, WiFiScanResponseIte
{
ChipLogError(Zcl, "Failed to encode response: %s", err.AsString());
}
- if (status == NetworkCommissioningStatus::kSuccess)
+ if (status == NetworkCommissioningStatusEnum::kSuccess)
{
CommitSavedBreadcrumb();
}
diff --git a/src/app/clusters/network-commissioning/network-commissioning.h b/src/app/clusters/network-commissioning/network-commissioning.h
index a103c41511e9c4..c822a3f88881b1 100644
--- a/src/app/clusters/network-commissioning/network-commissioning.h
+++ b/src/app/clusters/network-commissioning/network-commissioning.h
@@ -93,7 +93,7 @@ class Instance : public CommandHandlerInterface,
// Setting these values don't have to care about parallel requests, since we will reject other requests when there is another
// request ongoing.
// These values can be updated via OnNetworkingStatusChange callback, ScanCallback::OnFinished and ConnectCallback::OnResult.
- DataModel::Nullable mLastNetworkingStatusValue;
+ DataModel::Nullable mLastNetworkingStatusValue;
Attributes::LastConnectErrorValue::TypeInfo::Type mLastConnectErrorValue;
uint8_t mConnectingNetworkID[DeviceLayer::NetworkCommissioning::kMaxNetworkIDLen];
uint8_t mConnectingNetworkIDLen = 0;
diff --git a/src/app/zap-templates/zcl/data-model/chip/network-commissioning-cluster.xml b/src/app/zap-templates/zcl/data-model/chip/network-commissioning-cluster.xml
index 04e5a77c0ec9d0..b079143db6dee5 100644
--- a/src/app/zap-templates/zcl/data-model/chip/network-commissioning-cluster.xml
+++ b/src/app/zap-templates/zcl/data-model/chip/network-commissioning-cluster.xml
@@ -16,7 +16,7 @@ limitations under the License.
-->
-
+
@@ -32,7 +32,7 @@ limitations under the License.
-
+
@@ -41,7 +41,7 @@ limitations under the License.
-
+
@@ -49,16 +49,16 @@ limitations under the License.
-
+
-
+
-
+
-
+
@@ -69,7 +69,7 @@ limitations under the License.
-
+
@@ -88,7 +88,7 @@ limitations under the License.
MaxNetworks
-
+
Networks
@@ -99,7 +99,7 @@ limitations under the License.
-
+
LastNetworkingStatus
@@ -120,10 +120,10 @@ limitations under the License.
Relay the set of networks the device sees as available back to the client.
-
+
-
-
+
+
Add or update the credentials for a given Wi-Fi network.
@@ -146,7 +146,7 @@ limitations under the License.
Response command for various commands that add/remove/modify network credentials.
-
+
@@ -158,7 +158,7 @@ limitations under the License.
Command that indicates whether we have succcessfully connected to a network.
-
+
@@ -172,8 +172,8 @@ limitations under the License.
-
-
-
+
+
+
diff --git a/src/controller/CHIPDeviceController.cpp b/src/controller/CHIPDeviceController.cpp
index 968decbeb9849a..a7936f6f1560ba 100644
--- a/src/controller/CHIPDeviceController.cpp
+++ b/src/controller/CHIPDeviceController.cpp
@@ -2154,7 +2154,7 @@ void DeviceCommissioner::OnNetworkConfigResponse(void * context,
CHIP_ERROR err = CHIP_NO_ERROR;
ChipLogProgress(Controller, "Received NetworkConfig response, networkingStatus=%u", to_underlying(data.networkingStatus));
- if (data.networkingStatus != NetworkCommissioning::NetworkCommissioningStatus::kSuccess)
+ if (data.networkingStatus != NetworkCommissioning::NetworkCommissioningStatusEnum::kSuccess)
{
err = CHIP_ERROR_INTERNAL;
report.Set(data.networkingStatus);
@@ -2170,7 +2170,7 @@ void DeviceCommissioner::OnConnectNetworkResponse(
CHIP_ERROR err = CHIP_NO_ERROR;
ChipLogProgress(Controller, "Received ConnectNetwork response, networkingStatus=%u", to_underlying(data.networkingStatus));
- if (data.networkingStatus != NetworkCommissioning::NetworkCommissioningStatus::kSuccess)
+ if (data.networkingStatus != NetworkCommissioning::NetworkCommissioningStatusEnum::kSuccess)
{
err = CHIP_ERROR_INTERNAL;
report.Set(data.networkingStatus);
diff --git a/src/controller/CommissioningDelegate.h b/src/controller/CommissioningDelegate.h
index 3499a8ea9bc22a..72a34e0b5138c9 100644
--- a/src/controller/CommissioningDelegate.h
+++ b/src/controller/CommissioningDelegate.h
@@ -86,7 +86,7 @@ struct CompletionStatus
Optional failedStage;
Optional attestationResult;
Optional commissioningError;
- Optional networkCommissioningStatus;
+ Optional networkCommissioningStatus;
};
constexpr uint16_t kDefaultFailsafeTimeout = 60;
@@ -571,10 +571,10 @@ struct CommissioningErrorInfo
struct NetworkCommissioningStatusInfo
{
- NetworkCommissioningStatusInfo(app::Clusters::NetworkCommissioning::NetworkCommissioningStatus result) :
+ NetworkCommissioningStatusInfo(app::Clusters::NetworkCommissioning::NetworkCommissioningStatusEnum result) :
networkCommissioningStatus(result)
{}
- app::Clusters::NetworkCommissioning::NetworkCommissioningStatus networkCommissioningStatus;
+ app::Clusters::NetworkCommissioning::NetworkCommissioningStatusEnum networkCommissioningStatus;
};
class CommissioningDelegate
diff --git a/src/controller/data_model/controller-clusters.matter b/src/controller/data_model/controller-clusters.matter
index 91a84e3ebdd29c..122e8dff8a6234 100644
--- a/src/controller/data_model/controller-clusters.matter
+++ b/src/controller/data_model/controller-clusters.matter
@@ -1481,7 +1481,7 @@ client cluster GeneralCommissioning = 48 {
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
client cluster NetworkCommissioning = 49 {
- enum NetworkCommissioningStatus : ENUM8 {
+ enum NetworkCommissioningStatusEnum : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
@@ -1497,7 +1497,7 @@ client cluster NetworkCommissioning = 49 {
kUnknownError = 12;
}
- enum WiFiBand : ENUM8 {
+ enum WiFiBandEnum : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
@@ -1512,7 +1512,7 @@ client cluster NetworkCommissioning = 49 {
kEthernetNetworkInterface = 0x4;
}
- bitmap WiFiSecurity : BITMAP8 {
+ bitmap WiFiSecurityBitmap : BITMAP8 {
kUnencrypted = 0x1;
kWep = 0x2;
kWpaPersonal = 0x4;
@@ -1520,12 +1520,12 @@ client cluster NetworkCommissioning = 49 {
kWpa3Personal = 0x10;
}
- struct NetworkInfo {
+ struct NetworkInfoStruct {
octet_string<32> networkID = 0;
boolean connected = 1;
}
- struct ThreadInterfaceScanResult {
+ struct ThreadInterfaceScanResultStruct {
int16u panId = 0;
int64u extendedPanId = 1;
char_string<16> networkName = 2;
@@ -1536,21 +1536,21 @@ client cluster NetworkCommissioning = 49 {
int8u lqi = 7;
}
- struct WiFiInterfaceScanResult {
- WiFiSecurity security = 0;
+ struct WiFiInterfaceScanResultStruct {
+ WiFiSecurityBitmap security = 0;
octet_string<32> ssid = 1;
octet_string<6> bssid = 2;
int16u channel = 3;
- WiFiBand wiFiBand = 4;
+ WiFiBandEnum wiFiBand = 4;
int8s rssi = 5;
}
readonly attribute access(read: administer) int8u maxNetworks = 0;
- readonly attribute access(read: administer) NetworkInfo networks[] = 1;
+ readonly attribute access(read: administer) NetworkInfoStruct networks[] = 1;
readonly attribute optional int8u scanMaxTimeSeconds = 2;
readonly attribute optional int8u connectMaxTimeSeconds = 3;
attribute access(write: administer) boolean interfaceEnabled = 4;
- readonly attribute access(read: administer) nullable NetworkCommissioningStatus lastNetworkingStatus = 5;
+ readonly attribute access(read: administer) nullable NetworkCommissioningStatusEnum lastNetworkingStatus = 5;
readonly attribute access(read: administer) nullable octet_string<32> lastNetworkID = 6;
readonly attribute access(read: administer) nullable int32s lastConnectErrorValue = 7;
readonly attribute command_id generatedCommandList[] = 65528;
@@ -1566,10 +1566,10 @@ client cluster NetworkCommissioning = 49 {
}
response struct ScanNetworksResponse = 1 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
- optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
- optional ThreadInterfaceScanResult threadScanResults[] = 3;
+ optional WiFiInterfaceScanResultStruct wiFiScanResults[] = 2;
+ optional ThreadInterfaceScanResultStruct threadScanResults[] = 3;
}
request struct AddOrUpdateWiFiNetworkRequest {
@@ -1589,7 +1589,7 @@ client cluster NetworkCommissioning = 49 {
}
response struct NetworkConfigResponse = 5 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING<512> debugText = 1;
optional INT8U networkIndex = 2;
}
@@ -1600,7 +1600,7 @@ client cluster NetworkCommissioning = 49 {
}
response struct ConnectNetworkResponse = 7 {
- NetworkCommissioningStatus networkingStatus = 0;
+ NetworkCommissioningStatusEnum networkingStatus = 0;
optional CHAR_STRING debugText = 1;
nullable INT32S errorValue = 2;
}
diff --git a/src/controller/data_model/controller-clusters.zap b/src/controller/data_model/controller-clusters.zap
index c24af2a88dd63b..196ec3e3f0733c 100644
--- a/src/controller/data_model/controller-clusters.zap
+++ b/src/controller/data_model/controller-clusters.zap
@@ -617,7 +617,7 @@
"side": "server",
"type": "int8u",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "0x00",
@@ -5365,7 +5365,7 @@
"code": 5,
"mfgCode": null,
"side": "server",
- "type": "NetworkCommissioningStatus",
+ "type": "NetworkCommissioningStatusEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -11482,7 +11482,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -11530,7 +11530,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -11546,7 +11546,7 @@
"side": "server",
"type": "OperationalStateStruct",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -11562,7 +11562,7 @@
"side": "server",
"type": "ErrorStateStruct",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -11578,7 +11578,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -11594,7 +11594,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -11610,7 +11610,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -11626,7 +11626,7 @@
"side": "server",
"type": "array",
"included": 1,
- "storageOption": "RAM",
+ "storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
@@ -19524,7 +19524,7 @@
"code": 4,
"mfgCode": null,
"side": "server",
- "type": "enum8",
+ "type": "LightSensorTypeEnum",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
@@ -37182,6 +37182,5 @@
"endpointVersion": 1,
"deviceIdentifier": 22
}
- ],
- "log": []
+ ]
}
\ No newline at end of file
diff --git a/src/controller/java/AndroidDeviceControllerWrapper.cpp b/src/controller/java/AndroidDeviceControllerWrapper.cpp
index 466c7d6ba92bdb..974cb882cd2a9e 100644
--- a/src/controller/java/AndroidDeviceControllerWrapper.cpp
+++ b/src/controller/java/AndroidDeviceControllerWrapper.cpp
@@ -654,11 +654,11 @@ void AndroidDeviceControllerWrapper::OnScanNetworksSuccess(
jclass wiFiInterfaceScanResultStructClass;
err = chip::JniReferences::GetInstance().GetClassRef(
- env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResult",
+ env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResultStruct",
wiFiInterfaceScanResultStructClass);
if (err != CHIP_NO_ERROR)
{
- ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResult");
+ ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResultStruct");
return;
}
jmethodID wiFiInterfaceScanResultStructCtor =
@@ -666,7 +666,8 @@ void AndroidDeviceControllerWrapper::OnScanNetworksSuccess(
"(Ljava/lang/Integer;[B[BLjava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V");
if (wiFiInterfaceScanResultStructCtor == nullptr)
{
- ChipLogError(Zcl, "Could not find ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResult constructor");
+ ChipLogError(Zcl,
+ "Could not find ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResultStruct constructor");
return;
}
@@ -717,11 +718,11 @@ void AndroidDeviceControllerWrapper::OnScanNetworksSuccess(
jclass threadInterfaceScanResultStructClass;
err = chip::JniReferences::GetInstance().GetClassRef(
- env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResult",
+ env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResultStruct",
threadInterfaceScanResultStructClass);
if (err != CHIP_NO_ERROR)
{
- ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResult");
+ ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResultStruct");
return;
}
jmethodID threadInterfaceScanResultStructCtor =
@@ -730,7 +731,8 @@ void AndroidDeviceControllerWrapper::OnScanNetworksSuccess(
"Integer;[BLjava/lang/Integer;Ljava/lang/Integer;)V");
if (threadInterfaceScanResultStructCtor == nullptr)
{
- ChipLogError(Zcl, "Could not find ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResult constructor");
+ ChipLogError(Zcl,
+ "Could not find ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResultStruct constructor");
return;
}
diff --git a/src/controller/java/src/chip/devicecontroller/ChipDeviceController.java b/src/controller/java/src/chip/devicecontroller/ChipDeviceController.java
index 438f4a107dc62d..2551e08a136ef7 100644
--- a/src/controller/java/src/chip/devicecontroller/ChipDeviceController.java
+++ b/src/controller/java/src/chip/devicecontroller/ChipDeviceController.java
@@ -388,9 +388,9 @@ public void onScanNetworksFailure(int errorCode) {
public void onScanNetworksSuccess(
Integer networkingStatus,
Optional debugText,
- Optional>
+ Optional>
wiFiScanResults,
- Optional>
+ Optional>
threadScanResults) {
if (scanNetworksListener != null) {
scanNetworksListener.onScanNetworksSuccess(
@@ -1174,9 +1174,9 @@ public interface ScanNetworksListener {
void onScanNetworksSuccess(
Integer networkingStatus,
Optional debugText,
- Optional>
+ Optional>
wiFiScanResults,
- Optional>
+ Optional>
threadScanResults);
}
diff --git a/src/controller/java/zap-generated/CHIPAttributeTLVValueDecoder.cpp b/src/controller/java/zap-generated/CHIPAttributeTLVValueDecoder.cpp
index 20146f9072973c..b01814f5a9a2c4 100644
--- a/src/controller/java/zap-generated/CHIPAttributeTLVValueDecoder.cpp
+++ b/src/controller/java/zap-generated/CHIPAttributeTLVValueDecoder.cpp
@@ -5461,23 +5461,24 @@ jobject DecodeAttributeValue(const app::ConcreteAttributePath & aPath, TLV::TLVR
newElement_0_connectedCtorSignature.c_str(),
entry_0.connected, newElement_0_connected);
- jclass networkInfoStructClass_1;
+ jclass networkInfoStructStructClass_1;
err = chip::JniReferences::GetInstance().GetClassRef(
- env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterNetworkInfo", networkInfoStructClass_1);
+ env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterNetworkInfoStruct",
+ networkInfoStructStructClass_1);
if (err != CHIP_NO_ERROR)
{
- ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterNetworkInfo");
+ ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterNetworkInfoStruct");
return nullptr;
}
- jmethodID networkInfoStructCtor_1 =
- env->GetMethodID(networkInfoStructClass_1, "", "([BLjava/lang/Boolean;)V");
- if (networkInfoStructCtor_1 == nullptr)
+ jmethodID networkInfoStructStructCtor_1 =
+ env->GetMethodID(networkInfoStructStructClass_1, "", "([BLjava/lang/Boolean;)V");
+ if (networkInfoStructStructCtor_1 == nullptr)
{
- ChipLogError(Zcl, "Could not find ChipStructs$NetworkCommissioningClusterNetworkInfo constructor");
+ ChipLogError(Zcl, "Could not find ChipStructs$NetworkCommissioningClusterNetworkInfoStruct constructor");
return nullptr;
}
- newElement_0 = env->NewObject(networkInfoStructClass_1, networkInfoStructCtor_1, newElement_0_networkID,
+ newElement_0 = env->NewObject(networkInfoStructStructClass_1, networkInfoStructStructCtor_1, newElement_0_networkID,
newElement_0_connected);
chip::JniReferences::GetInstance().AddToList(value, newElement_0);
}
diff --git a/src/controller/java/zap-generated/CHIPInvokeCallbacks.cpp b/src/controller/java/zap-generated/CHIPInvokeCallbacks.cpp
index fa97d315711e4b..6edbeeb3e9f028 100644
--- a/src/controller/java/zap-generated/CHIPInvokeCallbacks.cpp
+++ b/src/controller/java/zap-generated/CHIPInvokeCallbacks.cpp
@@ -1773,25 +1773,26 @@ void CHIPNetworkCommissioningClusterScanNetworksResponseCallback::CallbackFn(
chip::JniReferences::GetInstance().CreateBoxedObject(
newElement_1_rssiClassName.c_str(), newElement_1_rssiCtorSignature.c_str(), entry_1.rssi, newElement_1_rssi);
- jclass wiFiInterfaceScanResultStructClass_2;
+ jclass wiFiInterfaceScanResultStructStructClass_2;
err = chip::JniReferences::GetInstance().GetClassRef(
- env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResult",
- wiFiInterfaceScanResultStructClass_2);
+ env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResultStruct",
+ wiFiInterfaceScanResultStructStructClass_2);
if (err != CHIP_NO_ERROR)
{
- ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResult");
+ ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResultStruct");
return;
}
- jmethodID wiFiInterfaceScanResultStructCtor_2 =
- env->GetMethodID(wiFiInterfaceScanResultStructClass_2, "",
+ jmethodID wiFiInterfaceScanResultStructStructCtor_2 =
+ env->GetMethodID(wiFiInterfaceScanResultStructStructClass_2, "",
"(Ljava/lang/Integer;[B[BLjava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V");
- if (wiFiInterfaceScanResultStructCtor_2 == nullptr)
+ if (wiFiInterfaceScanResultStructStructCtor_2 == nullptr)
{
- ChipLogError(Zcl, "Could not find ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResult constructor");
+ ChipLogError(Zcl,
+ "Could not find ChipStructs$NetworkCommissioningClusterWiFiInterfaceScanResultStruct constructor");
return;
}
- newElement_1 = env->NewObject(wiFiInterfaceScanResultStructClass_2, wiFiInterfaceScanResultStructCtor_2,
+ newElement_1 = env->NewObject(wiFiInterfaceScanResultStructStructClass_2, wiFiInterfaceScanResultStructStructCtor_2,
newElement_1_security, newElement_1_ssid, newElement_1_bssid, newElement_1_channel,
newElement_1_wiFiBand, newElement_1_rssi);
chip::JniReferences::GetInstance().AddToList(WiFiScanResultsInsideOptional, newElement_1);
@@ -1855,29 +1856,30 @@ void CHIPNetworkCommissioningClusterScanNetworksResponseCallback::CallbackFn(
chip::JniReferences::GetInstance().CreateBoxedObject(
newElement_1_lqiClassName.c_str(), newElement_1_lqiCtorSignature.c_str(), entry_1.lqi, newElement_1_lqi);
- jclass threadInterfaceScanResultStructClass_2;
+ jclass threadInterfaceScanResultStructStructClass_2;
err = chip::JniReferences::GetInstance().GetClassRef(
- env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResult",
- threadInterfaceScanResultStructClass_2);
+ env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResultStruct",
+ threadInterfaceScanResultStructStructClass_2);
if (err != CHIP_NO_ERROR)
{
- ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResult");
+ ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResultStruct");
return;
}
- jmethodID threadInterfaceScanResultStructCtor_2 =
- env->GetMethodID(threadInterfaceScanResultStructClass_2, "",
+ jmethodID threadInterfaceScanResultStructStructCtor_2 =
+ env->GetMethodID(threadInterfaceScanResultStructStructClass_2, "",
"(Ljava/lang/Integer;Ljava/lang/Long;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/"
"Integer;[BLjava/lang/Integer;Ljava/lang/Integer;)V");
- if (threadInterfaceScanResultStructCtor_2 == nullptr)
+ if (threadInterfaceScanResultStructStructCtor_2 == nullptr)
{
- ChipLogError(Zcl, "Could not find ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResult constructor");
+ ChipLogError(Zcl,
+ "Could not find ChipStructs$NetworkCommissioningClusterThreadInterfaceScanResultStruct constructor");
return;
}
newElement_1 =
- env->NewObject(threadInterfaceScanResultStructClass_2, threadInterfaceScanResultStructCtor_2, newElement_1_panId,
- newElement_1_extendedPanId, newElement_1_networkName, newElement_1_channel, newElement_1_version,
- newElement_1_extendedAddress, newElement_1_rssi, newElement_1_lqi);
+ env->NewObject(threadInterfaceScanResultStructStructClass_2, threadInterfaceScanResultStructStructCtor_2,
+ newElement_1_panId, newElement_1_extendedPanId, newElement_1_networkName, newElement_1_channel,
+ newElement_1_version, newElement_1_extendedAddress, newElement_1_rssi, newElement_1_lqi);
chip::JniReferences::GetInstance().AddToList(ThreadScanResultsInsideOptional, newElement_1);
}
chip::JniReferences::GetInstance().CreateOptional(ThreadScanResultsInsideOptional, ThreadScanResults);
diff --git a/src/controller/java/zap-generated/CHIPReadCallbacks.cpp b/src/controller/java/zap-generated/CHIPReadCallbacks.cpp
index 21aec3904f968c..f27d12c65b2ab8 100644
--- a/src/controller/java/zap-generated/CHIPReadCallbacks.cpp
+++ b/src/controller/java/zap-generated/CHIPReadCallbacks.cpp
@@ -9293,8 +9293,8 @@ CHIPNetworkCommissioningNetworksAttributeCallback::~CHIPNetworkCommissioningNetw
void CHIPNetworkCommissioningNetworksAttributeCallback::CallbackFn(
void * context,
- const chip::app::DataModel::DecodableList &
- list)
+ const chip::app::DataModel::DecodableList<
+ chip::app::Clusters::NetworkCommissioning::Structs::NetworkInfoStruct::DecodableType> & list)
{
chip::DeviceLayer::StackUnlock unlock;
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -9335,23 +9335,24 @@ void CHIPNetworkCommissioningNetworksAttributeCallback::CallbackFn(
newElement_0_connectedCtorSignature.c_str(), entry_0.connected,
newElement_0_connected);
- jclass networkInfoStructClass_1;
+ jclass networkInfoStructStructClass_1;
err = chip::JniReferences::GetInstance().GetClassRef(
- env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterNetworkInfo", networkInfoStructClass_1);
+ env, "chip/devicecontroller/ChipStructs$NetworkCommissioningClusterNetworkInfoStruct", networkInfoStructStructClass_1);
if (err != CHIP_NO_ERROR)
{
- ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterNetworkInfo");
+ ChipLogError(Zcl, "Could not find class ChipStructs$NetworkCommissioningClusterNetworkInfoStruct");
return;
}
- jmethodID networkInfoStructCtor_1 = env->GetMethodID(networkInfoStructClass_1, "", "([BLjava/lang/Boolean;)V");
- if (networkInfoStructCtor_1 == nullptr)
+ jmethodID networkInfoStructStructCtor_1 =
+ env->GetMethodID(networkInfoStructStructClass_1, "", "([BLjava/lang/Boolean;)V");
+ if (networkInfoStructStructCtor_1 == nullptr)
{
- ChipLogError(Zcl, "Could not find ChipStructs$NetworkCommissioningClusterNetworkInfo constructor");
+ ChipLogError(Zcl, "Could not find ChipStructs$NetworkCommissioningClusterNetworkInfoStruct constructor");
return;
}
- newElement_0 =
- env->NewObject(networkInfoStructClass_1, networkInfoStructCtor_1, newElement_0_networkID, newElement_0_connected);
+ newElement_0 = env->NewObject(networkInfoStructStructClass_1, networkInfoStructStructCtor_1, newElement_0_networkID,
+ newElement_0_connected);
chip::JniReferences::GetInstance().AddToList(arrayListObj, newElement_0);
}
@@ -9391,7 +9392,7 @@ CHIPNetworkCommissioningLastNetworkingStatusAttributeCallback::~CHIPNetworkCommi
void CHIPNetworkCommissioningLastNetworkingStatusAttributeCallback::CallbackFn(
void * context,
- const chip::app::DataModel::Nullable & value)
+ const chip::app::DataModel::Nullable & value)
{
chip::DeviceLayer::StackUnlock unlock;
CHIP_ERROR err = CHIP_NO_ERROR;
diff --git a/src/controller/java/zap-generated/chip/devicecontroller/ChipClusters.java b/src/controller/java/zap-generated/chip/devicecontroller/ChipClusters.java
index ea9efbb960d7f7..e8125bf824672e 100644
--- a/src/controller/java/zap-generated/chip/devicecontroller/ChipClusters.java
+++ b/src/controller/java/zap-generated/chip/devicecontroller/ChipClusters.java
@@ -6734,7 +6734,7 @@ private native void reorderNetwork(long chipClusterPtr, NetworkConfigResponseCal
, byte[] networkID, Integer networkIndex, Optional breadcrumb
, @Nullable Integer timedInvokeTimeoutMs);
public interface ScanNetworksResponseCallback {
- void onSuccess(Integer networkingStatus, Optional debugText, Optional> wiFiScanResults, Optional> threadScanResults);
+ void onSuccess(Integer networkingStatus, Optional debugText, Optional> wiFiScanResults, Optional> threadScanResults);
void onError(Exception error);
}
@@ -6753,7 +6753,7 @@ public interface ConnectNetworkResponseCallback {
public interface NetworksAttributeCallback {
- void onSuccess( List valueList);
+ void onSuccess( List valueList);
void onError(Exception ex);
default void onSubscriptionEstablished(long subscriptionId) {}
}
diff --git a/src/controller/java/zap-generated/chip/devicecontroller/ChipStructs.java b/src/controller/java/zap-generated/chip/devicecontroller/ChipStructs.java
index 2cc49cd990fbd2..98f6168c19e60c 100644
--- a/src/controller/java/zap-generated/chip/devicecontroller/ChipStructs.java
+++ b/src/controller/java/zap-generated/chip/devicecontroller/ChipStructs.java
@@ -540,11 +540,11 @@ public String toString() {
}
}
-public static class NetworkCommissioningClusterNetworkInfo {
+public static class NetworkCommissioningClusterNetworkInfoStruct {
public byte[] networkID;
public Boolean connected;
- public NetworkCommissioningClusterNetworkInfo(
+ public NetworkCommissioningClusterNetworkInfoStruct(
byte[] networkID
, Boolean connected
) {
@@ -555,7 +555,7 @@ public NetworkCommissioningClusterNetworkInfo(
@Override
public String toString() {
StringBuilder output = new StringBuilder();
- output.append("NetworkCommissioningClusterNetworkInfo {\n");
+ output.append("NetworkCommissioningClusterNetworkInfoStruct {\n");
output.append("\tnetworkID: ");
output.append(Arrays.toString(networkID));
output.append("\n");
@@ -567,7 +567,7 @@ public String toString() {
}
}
-public static class NetworkCommissioningClusterThreadInterfaceScanResult {
+public static class NetworkCommissioningClusterThreadInterfaceScanResultStruct {
public Integer panId;
public Long extendedPanId;
public String networkName;
@@ -577,7 +577,7 @@ public static class NetworkCommissioningClusterThreadInterfaceScanResult {
public Integer rssi;
public Integer lqi;
- public NetworkCommissioningClusterThreadInterfaceScanResult(
+ public NetworkCommissioningClusterThreadInterfaceScanResultStruct(
Integer panId
, Long extendedPanId
, String networkName
@@ -600,7 +600,7 @@ public NetworkCommissioningClusterThreadInterfaceScanResult(
@Override
public String toString() {
StringBuilder output = new StringBuilder();
- output.append("NetworkCommissioningClusterThreadInterfaceScanResult {\n");
+ output.append("NetworkCommissioningClusterThreadInterfaceScanResultStruct {\n");
output.append("\tpanId: ");
output.append(panId);
output.append("\n");
@@ -630,7 +630,7 @@ public String toString() {
}
}
-public static class NetworkCommissioningClusterWiFiInterfaceScanResult {
+public static class NetworkCommissioningClusterWiFiInterfaceScanResultStruct {
public Integer security;
public byte[] ssid;
public byte[] bssid;
@@ -638,7 +638,7 @@ public static class NetworkCommissioningClusterWiFiInterfaceScanResult {
public Integer wiFiBand;
public Integer rssi;
- public NetworkCommissioningClusterWiFiInterfaceScanResult(
+ public NetworkCommissioningClusterWiFiInterfaceScanResultStruct(
Integer security
, byte[] ssid
, byte[] bssid
@@ -657,7 +657,7 @@ public NetworkCommissioningClusterWiFiInterfaceScanResult(
@Override
public String toString() {
StringBuilder output = new StringBuilder();
- output.append("NetworkCommissioningClusterWiFiInterfaceScanResult {\n");
+ output.append("NetworkCommissioningClusterWiFiInterfaceScanResultStruct {\n");
output.append("\tsecurity: ");
output.append(security);
output.append("\n");
diff --git a/src/controller/java/zap-generated/chip/devicecontroller/ClusterInfoMapping.java b/src/controller/java/zap-generated/chip/devicecontroller/ClusterInfoMapping.java
index 712a07424d3dc5..e3215b76b98fd4 100644
--- a/src/controller/java/zap-generated/chip/devicecontroller/ClusterInfoMapping.java
+++ b/src/controller/java/zap-generated/chip/devicecontroller/ClusterInfoMapping.java
@@ -2843,7 +2843,7 @@ public void setCallbackDelegate(ClusterCommandCallback callback) {
}
@Override
- public void onSuccess(Integer NetworkingStatus, Optional DebugText, Optional> WiFiScanResults, Optional> ThreadScanResults) {
+ public void onSuccess(Integer NetworkingStatus, Optional DebugText, Optional> WiFiScanResults, Optional> ThreadScanResults) {
Map responseValues = new LinkedHashMap<>();
CommandResponseInfo NetworkingStatusResponseValue = new CommandResponseInfo("NetworkingStatus", "Integer");
responseValues.put(NetworkingStatusResponseValue, NetworkingStatus);
@@ -2920,9 +2920,9 @@ public void setCallbackDelegate(ClusterCommandCallback callback) {
}
@Override
- public void onSuccess( List valueList) {
+ public void onSuccess( List valueList) {
Map responseValues = new LinkedHashMap<>();
- CommandResponseInfo commandResponseInfo = new CommandResponseInfo("valueList", "List");
+ CommandResponseInfo commandResponseInfo = new CommandResponseInfo("valueList", "List");
responseValues.put(commandResponseInfo, valueList);
callback.onSuccess(responseValues);
}
diff --git a/src/controller/python/chip/clusters/Objects.py b/src/controller/python/chip/clusters/Objects.py
index 48717a8f1b5516..2cabdc0001335c 100644
--- a/src/controller/python/chip/clusters/Objects.py
+++ b/src/controller/python/chip/clusters/Objects.py
@@ -7328,11 +7328,11 @@ def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
Fields=[
ClusterObjectFieldDescriptor(Label="maxNetworks", Tag=0x00000000, Type=uint),
- ClusterObjectFieldDescriptor(Label="networks", Tag=0x00000001, Type=typing.List[NetworkCommissioning.Structs.NetworkInfo]),
+ ClusterObjectFieldDescriptor(Label="networks", Tag=0x00000001, Type=typing.List[NetworkCommissioning.Structs.NetworkInfoStruct]),
ClusterObjectFieldDescriptor(Label="scanMaxTimeSeconds", Tag=0x00000002, Type=typing.Optional[uint]),
ClusterObjectFieldDescriptor(Label="connectMaxTimeSeconds", Tag=0x00000003, Type=typing.Optional[uint]),
ClusterObjectFieldDescriptor(Label="interfaceEnabled", Tag=0x00000004, Type=bool),
- ClusterObjectFieldDescriptor(Label="lastNetworkingStatus", Tag=0x00000005, Type=typing.Union[Nullable, NetworkCommissioning.Enums.NetworkCommissioningStatus]),
+ ClusterObjectFieldDescriptor(Label="lastNetworkingStatus", Tag=0x00000005, Type=typing.Union[Nullable, NetworkCommissioning.Enums.NetworkCommissioningStatusEnum]),
ClusterObjectFieldDescriptor(Label="lastNetworkID", Tag=0x00000006, Type=typing.Union[Nullable, bytes]),
ClusterObjectFieldDescriptor(Label="lastConnectErrorValue", Tag=0x00000007, Type=typing.Union[Nullable, int]),
ClusterObjectFieldDescriptor(Label="generatedCommandList", Tag=0x0000FFF8, Type=typing.List[uint]),
@@ -7344,11 +7344,11 @@ def descriptor(cls) -> ClusterObjectDescriptor:
])
maxNetworks: 'uint' = None
- networks: 'typing.List[NetworkCommissioning.Structs.NetworkInfo]' = None
+ networks: 'typing.List[NetworkCommissioning.Structs.NetworkInfoStruct]' = None
scanMaxTimeSeconds: 'typing.Optional[uint]' = None
connectMaxTimeSeconds: 'typing.Optional[uint]' = None
interfaceEnabled: 'bool' = None
- lastNetworkingStatus: 'typing.Union[Nullable, NetworkCommissioning.Enums.NetworkCommissioningStatus]' = None
+ lastNetworkingStatus: 'typing.Union[Nullable, NetworkCommissioning.Enums.NetworkCommissioningStatusEnum]' = None
lastNetworkID: 'typing.Union[Nullable, bytes]' = None
lastConnectErrorValue: 'typing.Union[Nullable, int]' = None
generatedCommandList: 'typing.List[uint]' = None
@@ -7359,7 +7359,7 @@ def descriptor(cls) -> ClusterObjectDescriptor:
clusterRevision: 'uint' = None
class Enums:
- class NetworkCommissioningStatus(MatterIntEnum):
+ class NetworkCommissioningStatusEnum(MatterIntEnum):
kSuccess = 0x00
kOutOfRange = 0x01
kBoundsExceeded = 0x02
@@ -7379,7 +7379,7 @@ class NetworkCommissioningStatus(MatterIntEnum):
# enum value. This specific should never be transmitted.
kUnknownEnumValue = 13,
- class WiFiBand(MatterIntEnum):
+ class WiFiBandEnum(MatterIntEnum):
k2g4 = 0x00
k3g65 = 0x01
k5g = 0x02
@@ -7398,7 +7398,7 @@ class Feature(IntFlag):
kThreadNetworkInterface = 0x2
kEthernetNetworkInterface = 0x4
- class WiFiSecurity(IntFlag):
+ class WiFiSecurityBitmap(IntFlag):
kUnencrypted = 0x1
kWep = 0x2
kWpaPersonal = 0x4
@@ -7407,7 +7407,7 @@ class WiFiSecurity(IntFlag):
class Structs:
@dataclass
- class NetworkInfo(ClusterObject):
+ class NetworkInfoStruct(ClusterObject):
@ChipUtility.classproperty
def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
@@ -7420,7 +7420,7 @@ def descriptor(cls) -> ClusterObjectDescriptor:
connected: 'bool' = False
@dataclass
- class ThreadInterfaceScanResult(ClusterObject):
+ class ThreadInterfaceScanResultStruct(ClusterObject):
@ChipUtility.classproperty
def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
@@ -7445,7 +7445,7 @@ def descriptor(cls) -> ClusterObjectDescriptor:
lqi: 'uint' = 0
@dataclass
- class WiFiInterfaceScanResult(ClusterObject):
+ class WiFiInterfaceScanResultStruct(ClusterObject):
@ChipUtility.classproperty
def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
@@ -7454,7 +7454,7 @@ def descriptor(cls) -> ClusterObjectDescriptor:
ClusterObjectFieldDescriptor(Label="ssid", Tag=1, Type=bytes),
ClusterObjectFieldDescriptor(Label="bssid", Tag=2, Type=bytes),
ClusterObjectFieldDescriptor(Label="channel", Tag=3, Type=uint),
- ClusterObjectFieldDescriptor(Label="wiFiBand", Tag=4, Type=NetworkCommissioning.Enums.WiFiBand),
+ ClusterObjectFieldDescriptor(Label="wiFiBand", Tag=4, Type=NetworkCommissioning.Enums.WiFiBandEnum),
ClusterObjectFieldDescriptor(Label="rssi", Tag=5, Type=int),
])
@@ -7462,7 +7462,7 @@ def descriptor(cls) -> ClusterObjectDescriptor:
ssid: 'bytes' = b""
bssid: 'bytes' = b""
channel: 'uint' = 0
- wiFiBand: 'NetworkCommissioning.Enums.WiFiBand' = 0
+ wiFiBand: 'NetworkCommissioning.Enums.WiFiBandEnum' = 0
rssi: 'int' = 0
class Commands:
@@ -7495,16 +7495,16 @@ class ScanNetworksResponse(ClusterCommand):
def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
Fields=[
- ClusterObjectFieldDescriptor(Label="networkingStatus", Tag=0, Type=NetworkCommissioning.Enums.NetworkCommissioningStatus),
+ ClusterObjectFieldDescriptor(Label="networkingStatus", Tag=0, Type=NetworkCommissioning.Enums.NetworkCommissioningStatusEnum),
ClusterObjectFieldDescriptor(Label="debugText", Tag=1, Type=typing.Optional[str]),
- ClusterObjectFieldDescriptor(Label="wiFiScanResults", Tag=2, Type=typing.Optional[typing.List[NetworkCommissioning.Structs.WiFiInterfaceScanResult]]),
- ClusterObjectFieldDescriptor(Label="threadScanResults", Tag=3, Type=typing.Optional[typing.List[NetworkCommissioning.Structs.ThreadInterfaceScanResult]]),
+ ClusterObjectFieldDescriptor(Label="wiFiScanResults", Tag=2, Type=typing.Optional[typing.List[NetworkCommissioning.Structs.WiFiInterfaceScanResultStruct]]),
+ ClusterObjectFieldDescriptor(Label="threadScanResults", Tag=3, Type=typing.Optional[typing.List[NetworkCommissioning.Structs.ThreadInterfaceScanResultStruct]]),
])
- networkingStatus: 'NetworkCommissioning.Enums.NetworkCommissioningStatus' = 0
+ networkingStatus: 'NetworkCommissioning.Enums.NetworkCommissioningStatusEnum' = 0
debugText: 'typing.Optional[str]' = None
- wiFiScanResults: 'typing.Optional[typing.List[NetworkCommissioning.Structs.WiFiInterfaceScanResult]]' = None
- threadScanResults: 'typing.Optional[typing.List[NetworkCommissioning.Structs.ThreadInterfaceScanResult]]' = None
+ wiFiScanResults: 'typing.Optional[typing.List[NetworkCommissioning.Structs.WiFiInterfaceScanResultStruct]]' = None
+ threadScanResults: 'typing.Optional[typing.List[NetworkCommissioning.Structs.ThreadInterfaceScanResultStruct]]' = None
@dataclass
class AddOrUpdateWiFiNetwork(ClusterCommand):
@@ -7573,12 +7573,12 @@ class NetworkConfigResponse(ClusterCommand):
def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
Fields=[
- ClusterObjectFieldDescriptor(Label="networkingStatus", Tag=0, Type=NetworkCommissioning.Enums.NetworkCommissioningStatus),
+ ClusterObjectFieldDescriptor(Label="networkingStatus", Tag=0, Type=NetworkCommissioning.Enums.NetworkCommissioningStatusEnum),
ClusterObjectFieldDescriptor(Label="debugText", Tag=1, Type=typing.Optional[str]),
ClusterObjectFieldDescriptor(Label="networkIndex", Tag=2, Type=typing.Optional[uint]),
])
- networkingStatus: 'NetworkCommissioning.Enums.NetworkCommissioningStatus' = 0
+ networkingStatus: 'NetworkCommissioning.Enums.NetworkCommissioningStatusEnum' = 0
debugText: 'typing.Optional[str]' = None
networkIndex: 'typing.Optional[uint]' = None
@@ -7611,12 +7611,12 @@ class ConnectNetworkResponse(ClusterCommand):
def descriptor(cls) -> ClusterObjectDescriptor:
return ClusterObjectDescriptor(
Fields=[
- ClusterObjectFieldDescriptor(Label="networkingStatus", Tag=0, Type=NetworkCommissioning.Enums.NetworkCommissioningStatus),
+ ClusterObjectFieldDescriptor(Label="networkingStatus", Tag=0, Type=NetworkCommissioning.Enums.NetworkCommissioningStatusEnum),
ClusterObjectFieldDescriptor(Label="debugText", Tag=1, Type=typing.Optional[str]),
ClusterObjectFieldDescriptor(Label="errorValue", Tag=2, Type=typing.Union[Nullable, int]),
])
- networkingStatus: 'NetworkCommissioning.Enums.NetworkCommissioningStatus' = 0
+ networkingStatus: 'NetworkCommissioning.Enums.NetworkCommissioningStatusEnum' = 0
debugText: 'typing.Optional[str]' = None
errorValue: 'typing.Union[Nullable, int]' = NullValue
@@ -7669,9 +7669,9 @@ def attribute_id(cls) -> int:
@ChipUtility.classproperty
def attribute_type(cls) -> ClusterObjectFieldDescriptor:
- return ClusterObjectFieldDescriptor(Type=typing.List[NetworkCommissioning.Structs.NetworkInfo])
+ return ClusterObjectFieldDescriptor(Type=typing.List[NetworkCommissioning.Structs.NetworkInfoStruct])
- value: 'typing.List[NetworkCommissioning.Structs.NetworkInfo]' = field(default_factory=lambda: [])
+ value: 'typing.List[NetworkCommissioning.Structs.NetworkInfoStruct]' = field(default_factory=lambda: [])
@dataclass
class ScanMaxTimeSeconds(ClusterAttributeDescriptor):
@@ -7733,9 +7733,9 @@ def attribute_id(cls) -> int:
@ChipUtility.classproperty
def attribute_type(cls) -> ClusterObjectFieldDescriptor:
- return ClusterObjectFieldDescriptor(Type=typing.Union[Nullable, NetworkCommissioning.Enums.NetworkCommissioningStatus])
+ return ClusterObjectFieldDescriptor(Type=typing.Union[Nullable, NetworkCommissioning.Enums.NetworkCommissioningStatusEnum])
- value: 'typing.Union[Nullable, NetworkCommissioning.Enums.NetworkCommissioningStatus]' = NullValue
+ value: 'typing.Union[Nullable, NetworkCommissioning.Enums.NetworkCommissioningStatusEnum]' = NullValue
@dataclass
class LastNetworkID(ClusterAttributeDescriptor):
diff --git a/src/controller/python/chip/commissioning/commissioning_flow_blocks.py b/src/controller/python/chip/commissioning/commissioning_flow_blocks.py
index 6a5603bbc5d08c..7d0d11b37fab1c 100644
--- a/src/controller/python/chip/commissioning/commissioning_flow_blocks.py
+++ b/src/controller/python/chip/commissioning/commissioning_flow_blocks.py
@@ -171,7 +171,7 @@ async def network_commissioning_thread(self, parameter: commissioning.Parameters
self._logger.info("Adding Thread network")
response = await self._devCtrl.SendCommand(nodeid=node_id, endpoint=commissioning.ROOT_ENDPOINT_ID, payload=Clusters.NetworkCommissioning.Commands.AddOrUpdateThreadNetwork(
operationalDataset=parameter.thread_credentials))
- if response.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if response.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise commissioning.CommissionFailure(f"Unexpected result for adding network: {response.networkingStatus}")
network_list = (await self._devCtrl.ReadAttribute(nodeid=node_id, attributes=[(commissioning.ROOT_ENDPOINT_ID, Clusters.NetworkCommissioning.Attributes.Networks)], returnClusterObject=True))[commissioning.ROOT_ENDPOINT_ID][Clusters.NetworkCommissioning].networks
@@ -179,7 +179,7 @@ async def network_commissioning_thread(self, parameter: commissioning.Parameters
self._logger.info("Enabling Thread network")
response = await self._devCtrl.SendCommand(nodeid=node_id, endpoint=commissioning.ROOT_ENDPOINT_ID, payload=Clusters.NetworkCommissioning.Commands.ConnectNetwork(networkID=network_id), interactionTimeoutMs=self._devCtrl.ComputeRoundTripTimeout(node_id, upperLayerProcessingTimeoutMs=30000))
- if response.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if response.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise commissioning.CommissionFailure(f"Unexpected result for enabling network: {response.networkingStatus}")
self._logger.info("Thread network commissioning finished")
@@ -190,7 +190,7 @@ async def network_commissioning_wifi(self, parameter: commissioning.Parameters,
self._logger.info("Adding WiFi network")
response = await self._devCtrl.SendCommand(nodeid=node_id, endpoint=commissioning.ROOT_ENDPOINT_ID, payload=Clusters.NetworkCommissioning.Commands.AddOrUpdateWiFiNetwork(ssid=parameter.wifi_credentials.ssid, credentials=parameter.wifi_credentials.passphrase))
- if response.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if response.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise commissioning.CommissionFailure(f"Unexpected result for adding network: {response.networkingStatus}")
network_list = (await self._devCtrl.ReadAttribute(nodeid=node_id, attributes=[(commissioning.ROOT_ENDPOINT_ID, Clusters.NetworkCommissioning.Attributes.Networks)], returnClusterObject=True))[commissioning.ROOT_ENDPOINT_ID][Clusters.NetworkCommissioning].networks
@@ -198,7 +198,7 @@ async def network_commissioning_wifi(self, parameter: commissioning.Parameters,
self._logger.info("Enabling WiFi network")
response = await self._devCtrl.SendCommand(nodeid=node_id, endpoint=commissioning.ROOT_ENDPOINT_ID, payload=Clusters.NetworkCommissioning.Commands.ConnectNetwork(networkID=network_id), interactionTimeoutMs=self._devCtrl.ComputeRoundTripTimeout(node_id, upperLayerProcessingTimeoutMs=30000))
- if response.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if response.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise commissioning.CommissionFailure(f"Unexpected result for enabling network: {response.networkingStatus}")
self._logger.info("WiFi network commissioning finished")
diff --git a/src/controller/python/test/test_scripts/network_commissioning.py b/src/controller/python/test/test_scripts/network_commissioning.py
index f21e3b4603564e..72635677be9c9d 100644
--- a/src/controller/python/test/test_scripts/network_commissioning.py
+++ b/src/controller/python/test/test_scripts/network_commissioning.py
@@ -159,7 +159,7 @@ async def test_wifi(self, endpointId):
interactionTimeoutMs=interactionTimeoutMs
)
logger.info(f"Received response: {res}")
- if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise AssertionError(f"Unexpected result: {res.networkingStatus}")
await self.must_verify_breadcrumb()
@@ -184,7 +184,7 @@ async def test_wifi(self, endpointId):
networkID=networkList[0].networkID, breadcrumb=self.with_breadcrumb())
res = await self._devCtrl.SendCommand(nodeid=self._nodeid, endpoint=endpointId, payload=req)
logger.info(f"Received response: {res}")
- if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise AssertionError(
f"Unexpected result: {res.networkingStatus}")
await self.must_verify_breadcrumb()
@@ -195,7 +195,7 @@ async def test_wifi(self, endpointId):
ssid=TEST_WIFI_SSID.encode(), credentials=TEST_WIFI_PASS.encode(), breadcrumb=self.with_breadcrumb())
res = await self._devCtrl.SendCommand(nodeid=self._nodeid, endpoint=endpointId, payload=req)
logger.info(f"Received response: {res}")
- if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise AssertionError(f"Unexpected result: {res.networkingStatus}")
if res.networkIndex != 0:
raise AssertionError(
@@ -228,7 +228,7 @@ async def test_wifi(self, endpointId):
interactionTimeoutMs=interactionTimeoutMs
)
logger.info(f"Got response: {res}")
- if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise AssertionError(f"Unexpected result: {res.networkingStatus}")
logger.info("Device connected to a network.")
await self.must_verify_breadcrumb()
@@ -317,7 +317,7 @@ async def test_thread(self, endpointId):
payload=req,
interactionTimeoutMs=interactionTimeoutMs)
logger.info(f"Received response: {res}")
- if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise AssertionError(f"Unexpected result: {res.networkingStatus}")
await self.must_verify_breadcrumb()
@@ -342,7 +342,7 @@ async def test_thread(self, endpointId):
networkID=networkList[0].networkID, breadcrumb=self.with_breadcrumb())
res = await self._devCtrl.SendCommand(nodeid=self._nodeid, endpoint=endpointId, payload=req)
logger.info(f"Received response: {res}")
- if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise AssertionError(
f"Unexpected result: {res.networkingStatus}")
await self.must_verify_breadcrumb()
@@ -353,7 +353,7 @@ async def test_thread(self, endpointId):
operationalDataset=TEST_THREAD_NETWORK_DATASET_TLVS[0], breadcrumb=self.with_breadcrumb())
res = await self._devCtrl.SendCommand(nodeid=self._nodeid, endpoint=endpointId, payload=req)
logger.info(f"Received response: {res}")
- if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise AssertionError(f"Unexpected result: {res.networkingStatus}")
if res.networkIndex != 0:
raise AssertionError(
@@ -384,7 +384,7 @@ async def test_thread(self, endpointId):
payload=req,
interactionTimeoutMs=interactionTimeoutMs)
logger.info(f"Got response: {res}")
- if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatus.kSuccess:
+ if res.networkingStatus != Clusters.NetworkCommissioning.Enums.NetworkCommissioningStatusEnum.kSuccess:
raise AssertionError(f"Unexpected result: {res.networkingStatus}")
logger.info("Device connected to a network.")
await self.must_verify_breadcrumb()
diff --git a/src/darwin/Framework/CHIP/templates/availability.yaml b/src/darwin/Framework/CHIP/templates/availability.yaml
index 189ba87be9a9e5..1d98350e945875 100644
--- a/src/darwin/Framework/CHIP/templates/availability.yaml
+++ b/src/darwin/Framework/CHIP/templates/availability.yaml
@@ -3115,8 +3115,12 @@
# here.
- RegulatoryLocationTypeEnum
NetworkCommissioning:
- - NetworkCommissioningStatus
- - WiFiBand
+ # NetworkCommissioningStatusEnum and WiFiBandEnum were originally
+ # just named NetworkCommissioningStatus and WiFiBand, but we
+ # generate the same API for both of those names, so the name can
+ # just change here.
+ - NetworkCommissioningStatusEnum
+ - WiFiBandEnum
DiagnosticLogs:
- LogsIntent
- LogsStatus
@@ -3459,7 +3463,11 @@
- Outdoor
- IndoorOutdoor
NetworkCommissioning:
- NetworkCommissioningStatus:
+ # NetworkCommissioningStatusEnum and WiFiBandEnum were originally
+ # just named NetworkCommissioningStatus and WiFiBand, but we
+ # generate the same API for both of those names, so the name can
+ # just change here.
+ NetworkCommissioningStatusEnum:
- Success
- OutOfRange
- BoundsExceeded
@@ -3473,7 +3481,7 @@
- IPV6Failed
- IPBindFailed
- UnknownError
- WiFiBand:
+ WiFiBandEnum:
- 2G4
- 3G65
- 5G
@@ -8156,6 +8164,10 @@
- ProductAppearanceStruct
BridgedDeviceBasicInformation:
- ProductAppearanceStruct
+ NetworkCommissioning:
+ - WiFiInterfaceScanResultStruct
+ - ThreadInterfaceScanResultStruct
+ - NetworkInfoStruct
OperationalState:
- OperationalStateStruct
- ErrorStateStruct
@@ -8178,6 +8190,26 @@
ProductAppearanceStruct:
- finish
- primaryColor
+ NetworkCommissioning:
+ WiFiInterfaceScanResultStruct:
+ - security
+ - ssid
+ - bssid
+ - channel
+ - wiFiBand
+ - rssi
+ ThreadInterfaceScanResultStruct:
+ - panId
+ - extendedPanId
+ - networkName
+ - channel
+ - version
+ - extendedAddress
+ - rssi
+ - lqi
+ NetworkInfoStruct:
+ - networkID
+ - connected
OperationalState:
OperationalStateStruct:
- operationalStateID
@@ -8529,7 +8561,10 @@
- Forward
- Reverse
NetworkCommissioning:
- WiFiBand:
+ # WiFiBandEnum was originally just named WiFiBand, but we generate
+ # the same API for both of those names, so the name can just
+ # change here.
+ WiFiBandEnum:
- 1G
HEPAFilterMonitoring:
ChangeIndicationEnum:
@@ -9408,6 +9443,8 @@
Groups:
- Feature
- NameSupportBitmap
+ NetworkCommissioning:
+ - WiFiSecurityBitmap
PressureMeasurement:
- Feature
PumpConfigurationAndControl:
@@ -9532,6 +9569,13 @@
- GroupNames
NameSupportBitmap:
- GroupNames
+ NetworkCommissioning:
+ WiFiSecurityBitmap:
+ - Unencrypted
+ - WEP
+ - WPAPersonal
+ - WPA2Personal
+ - WPA3Personal
PressureMeasurement:
Feature:
- Extended
@@ -9924,12 +9968,18 @@
structs:
AccessControl:
- Target
+ NetworkCommissioning:
+ - WiFiInterfaceScanResult
+ - ThreadInterfaceScanResult
+ - NetworkInfo
ThreadNetworkDiagnostics:
- NeighborTable
- RouteTable
bitmaps:
Groups:
- GroupClusterFeature
+ NetworkCommissioning:
+ - WiFiSecurity
PressureMeasurement:
- PressureFeature
PumpConfigurationAndControl:
@@ -9946,6 +9996,10 @@
structs:
AccessControl:
AccessControlTargetStruct: Target
+ NetworkCommissioning:
+ WiFiInterfaceScanResultStruct: WiFiInterfaceScanResult
+ ThreadInterfaceScanResultStruct: ThreadInterfaceScanResult
+ NetworkInfoStruct: NetworkInfo
ThreadNetworkDiagnostics:
NeighborTableStruct: NeighborTable
RouteTableStruct: RouteTable
@@ -9971,6 +10025,8 @@
bitmaps:
Groups:
Feature: GroupClusterFeature
+ NetworkCommissioning:
+ WiFiSecurityBitmap: WiFiSecurity
PressureMeasurement:
Feature: PressureFeature
PumpConfigurationAndControl:
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm b/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm
index 729103e3900968..ccf803946f8db9 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm
@@ -4725,8 +4725,8 @@ static id _Nullable DecodeAttributeValueForNetworkCommissioningCluster(
auto iter_0 = cppValue.begin();
while (iter_0.Next()) {
auto & entry_0 = iter_0.GetValue();
- MTRNetworkCommissioningClusterNetworkInfo * newElement_0;
- newElement_0 = [MTRNetworkCommissioningClusterNetworkInfo new];
+ MTRNetworkCommissioningClusterNetworkInfoStruct * newElement_0;
+ newElement_0 = [MTRNetworkCommissioningClusterNetworkInfoStruct new];
newElement_0.networkID = AsData(entry_0.networkID);
newElement_0.connected = [NSNumber numberWithBool:entry_0.connected];
[array_0 addObject:newElement_0];
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.h b/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.h
index a215e2e4eddee0..92b8e8ea346ad5 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.h
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.h
@@ -30946,25 +30946,46 @@ typedef NS_OPTIONS(uint32_t, MTRNetworkCommissioningFeature) {
MTRNetworkCommissioningFeatureEthernetNetworkInterface API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1)) = 0x4,
} API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
+typedef NS_OPTIONS(uint8_t, MTRNetworkCommissioningWiFiSecurityBitmap) {
+ MTRNetworkCommissioningWiFiSecurityBitmapUnencrypted MTR_NEWLY_AVAILABLE = 0x1,
+ MTRNetworkCommissioningWiFiSecurityBitmapWEP MTR_NEWLY_AVAILABLE = 0x2,
+ MTRNetworkCommissioningWiFiSecurityBitmapWPAPersonal MTR_NEWLY_AVAILABLE = 0x4,
+ MTRNetworkCommissioningWiFiSecurityBitmapWPA2Personal MTR_NEWLY_AVAILABLE = 0x8,
+ MTRNetworkCommissioningWiFiSecurityBitmapWPA3Personal MTR_NEWLY_AVAILABLE = 0x10,
+} MTR_NEWLY_AVAILABLE;
+
typedef NS_OPTIONS(uint8_t, MTRNetworkCommissioningWiFiSecurity) {
- MTRNetworkCommissioningWiFiSecurityUnencrypted API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1)) = 0x1,
- MTRNetworkCommissioningWiFiSecurityWEP API_AVAILABLE(ios(16.4), macos(13.3), watchos(9.4), tvos(16.4)) = 0x2,
- MTRNetworkCommissioningWiFiSecurityWepPersonal MTR_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityWEP",
- ios(16.1, 16.4), macos(13.0, 13.3), watchos(9.1, 9.4), tvos(16.1, 16.4))
+ MTRNetworkCommissioningWiFiSecurityUnencrypted API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1))
+ MTR_NEWLY_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityBitmapUnencrypted")
+ = 0x1,
+ MTRNetworkCommissioningWiFiSecurityWEP API_AVAILABLE(ios(16.4), macos(13.3), watchos(9.4), tvos(16.4))
+ MTR_NEWLY_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityBitmapWEP")
= 0x2,
- MTRNetworkCommissioningWiFiSecurityWPAPersonal API_AVAILABLE(ios(16.4), macos(13.3), watchos(9.4), tvos(16.4)) = 0x4,
- MTRNetworkCommissioningWiFiSecurityWpaPersonal MTR_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityWPAPersonal",
+ MTRNetworkCommissioningWiFiSecurityWepPersonal MTR_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityBitmapWEP",
ios(16.1, 16.4), macos(13.0, 13.3), watchos(9.1, 9.4), tvos(16.1, 16.4))
+ = 0x2,
+ MTRNetworkCommissioningWiFiSecurityWPAPersonal API_AVAILABLE(ios(16.4), macos(13.3), watchos(9.4), tvos(16.4))
+ MTR_NEWLY_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityBitmapWPAPersonal")
= 0x4,
- MTRNetworkCommissioningWiFiSecurityWPA2Personal API_AVAILABLE(ios(16.4), macos(13.3), watchos(9.4), tvos(16.4)) = 0x8,
- MTRNetworkCommissioningWiFiSecurityWpa2Personal MTR_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityWPA2Personal",
+ MTRNetworkCommissioningWiFiSecurityWpaPersonal MTR_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityBitmapWPAPersonal",
ios(16.1, 16.4), macos(13.0, 13.3), watchos(9.1, 9.4), tvos(16.1, 16.4))
+ = 0x4,
+ MTRNetworkCommissioningWiFiSecurityWPA2Personal API_AVAILABLE(ios(16.4), macos(13.3), watchos(9.4), tvos(16.4))
+ MTR_NEWLY_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityBitmapWPA2Personal")
= 0x8,
- MTRNetworkCommissioningWiFiSecurityWPA3Personal API_AVAILABLE(ios(16.4), macos(13.3), watchos(9.4), tvos(16.4)) = 0x10,
- MTRNetworkCommissioningWiFiSecurityWpa3Personal MTR_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityWPA3Personal",
- ios(16.1, 16.4), macos(13.0, 13.3), watchos(9.1, 9.4), tvos(16.1, 16.4))
+ MTRNetworkCommissioningWiFiSecurityWpa2Personal MTR_DEPRECATED(
+ "Please use MTRNetworkCommissioningWiFiSecurityBitmapWPA2Personal", ios(16.1, 16.4), macos(13.0, 13.3), watchos(9.1, 9.4),
+ tvos(16.1, 16.4))
+ = 0x8,
+ MTRNetworkCommissioningWiFiSecurityWPA3Personal API_AVAILABLE(ios(16.4), macos(13.3), watchos(9.4), tvos(16.4))
+ MTR_NEWLY_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityBitmapWPA3Personal")
= 0x10,
-} API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
+ MTRNetworkCommissioningWiFiSecurityWpa3Personal MTR_DEPRECATED(
+ "Please use MTRNetworkCommissioningWiFiSecurityBitmapWPA3Personal", ios(16.1, 16.4), macos(13.0, 13.3), watchos(9.1, 9.4),
+ tvos(16.1, 16.4))
+ = 0x10,
+} API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1))
+ MTR_NEWLY_DEPRECATED("Please use MTRNetworkCommissioningWiFiSecurityBitmap");
typedef NS_ENUM(uint8_t, MTRDiagnosticLogsIntent) {
MTRDiagnosticLogsIntentEndUserSupport API_AVAILABLE(ios(16.5), macos(13.4), watchos(9.5), tvos(16.5)) = 0x00,
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.mm b/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.mm
index 60a358fc650369..0a93d5662fc3c7 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.mm
@@ -25579,7 +25579,7 @@ - (void)readAttributeLastNetworkingStatusWithCompletion:(void (^)(NSNumber * _Nu
{
MTRReadParams * params = [[MTRReadParams alloc] init];
using TypeInfo = NetworkCommissioning::Attributes::LastNetworkingStatus::TypeInfo;
- return MTRReadAttribute(
params, completion, self.callbackQueue, self.device, self->_endpoint, TypeInfo::GetClusterId(), TypeInfo::GetAttributeId());
}
@@ -25590,7 +25590,7 @@ - (void)subscribeAttributeLastNetworkingStatusWithParams:(MTRSubscribeParams * _
(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))reportHandler
{
using TypeInfo = NetworkCommissioning::Attributes::LastNetworkingStatus::TypeInfo;
- MTRSubscribeAttribute(params, subscriptionEstablished, reportHandler, self.callbackQueue, self.device,
self->_endpoint, TypeInfo::GetClusterId(), TypeInfo::GetAttributeId());
}
@@ -25601,9 +25601,11 @@ + (void)readAttributeLastNetworkingStatusWithClusterStateCache:(MTRClusterStateC
completion:
(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))completion
{
- auto * bridge = new MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge(queue, completion);
+ auto * bridge
+ = new MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge(queue, completion);
std::move(*bridge).DispatchLocalAction(clusterStateCacheContainer.baseDevice,
- ^(NullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallback successCb, MTRErrorCallback failureCb) {
+ ^(NullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallback successCb,
+ MTRErrorCallback failureCb) {
if (clusterStateCacheContainer.cppClusterStateCache) {
chip::app::ConcreteAttributePath path;
using TypeInfo = NetworkCommissioning::Attributes::LastNetworkingStatus::TypeInfo;
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.h b/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.h
index fdd8abdd589752..d546e766e6dfc0 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.h
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.h
@@ -277,13 +277,14 @@ typedef void (*GeneralCommissioningClusterRegulatoryLocationTypeEnumAttributeCal
void *, chip::app::Clusters::GeneralCommissioning::RegulatoryLocationTypeEnum);
typedef void (*NullableGeneralCommissioningClusterRegulatoryLocationTypeEnumAttributeCallback)(
void *, const chip::app::DataModel::Nullable &);
-typedef void (*NetworkCommissioningClusterNetworkCommissioningStatusAttributeCallback)(
- void *, chip::app::Clusters::NetworkCommissioning::NetworkCommissioningStatus);
-typedef void (*NullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallback)(
- void *, const chip::app::DataModel::Nullable &);
-typedef void (*NetworkCommissioningClusterWiFiBandAttributeCallback)(void *, chip::app::Clusters::NetworkCommissioning::WiFiBand);
-typedef void (*NullableNetworkCommissioningClusterWiFiBandAttributeCallback)(
- void *, const chip::app::DataModel::Nullable &);
+typedef void (*NetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallback)(
+ void *, chip::app::Clusters::NetworkCommissioning::NetworkCommissioningStatusEnum);
+typedef void (*NullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallback)(
+ void *, const chip::app::DataModel::Nullable &);
+typedef void (*NetworkCommissioningClusterWiFiBandEnumAttributeCallback)(void *,
+ chip::app::Clusters::NetworkCommissioning::WiFiBandEnum);
+typedef void (*NullableNetworkCommissioningClusterWiFiBandEnumAttributeCallback)(
+ void *, const chip::app::DataModel::Nullable &);
typedef void (*DiagnosticLogsClusterIntentEnumAttributeCallback)(void *, chip::app::Clusters::DiagnosticLogs::IntentEnum);
typedef void (*NullableDiagnosticLogsClusterIntentEnumAttributeCallback)(
void *, const chip::app::DataModel::Nullable &);
@@ -1391,8 +1392,8 @@ typedef void (*GeneralCommissioningAttributeListListAttributeCallback)(
void * context, const chip::app::DataModel::DecodableList & data);
typedef void (*NetworkCommissioningNetworksListAttributeCallback)(
void * context,
- const chip::app::DataModel::DecodableList &
- data);
+ const chip::app::DataModel::DecodableList<
+ chip::app::Clusters::NetworkCommissioning::Structs::NetworkInfoStruct::DecodableType> & data);
typedef void (*NetworkCommissioningGeneratedCommandListListAttributeCallback)(
void * context, const chip::app::DataModel::DecodableList & data);
typedef void (*NetworkCommissioningAcceptedCommandListListAttributeCallback)(
@@ -6510,10 +6511,9 @@ class MTRNetworkCommissioningNetworksListAttributeCallbackBridge
MTRActionBlock action) :
MTRCallbackBridge(queue, handler, action, OnSuccessFn){};
- static void OnSuccessFn(
- void * context,
- const chip::app::DataModel::DecodableList &
- value);
+ static void OnSuccessFn(void * context,
+ const chip::app::DataModel::DecodableList<
+ chip::app::Clusters::NetworkCommissioning::Structs::NetworkInfoStruct::DecodableType> & value);
};
class MTRNetworkCommissioningNetworksListAttributeCallbackSubscriptionBridge
@@ -25585,142 +25585,144 @@ class MTRNullableGeneralCommissioningClusterRegulatoryLocationTypeEnumAttributeC
MTRSubscriptionEstablishedHandler mEstablishedHandler;
};
-class MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge
- : public MTRCallbackBridge
+class MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge
+ : public MTRCallbackBridge
{
public:
- MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge(dispatch_queue_t queue,
- ResponseHandler handler) :
- MTRCallbackBridge(queue, handler, OnSuccessFn){};
+ MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge(dispatch_queue_t queue,
+ ResponseHandler handler) :
+ MTRCallbackBridge(queue, handler,
+ OnSuccessFn){};
- MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge(dispatch_queue_t queue, ResponseHandler handler,
- MTRActionBlock action) :
- MTRCallbackBridge(queue, handler, action,
- OnSuccessFn){};
+ MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge(dispatch_queue_t queue,
+ ResponseHandler handler,
+ MTRActionBlock action) :
+ MTRCallbackBridge(queue, handler, action,
+ OnSuccessFn){};
- static void OnSuccessFn(void * context, chip::app::Clusters::NetworkCommissioning::NetworkCommissioningStatus value);
+ static void OnSuccessFn(void * context, chip::app::Clusters::NetworkCommissioning::NetworkCommissioningStatusEnum value);
};
-class MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackSubscriptionBridge
- : public MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge
+class MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackSubscriptionBridge
+ : public MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge
{
public:
- MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackSubscriptionBridge(
+ MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackSubscriptionBridge(
dispatch_queue_t queue, ResponseHandler handler, MTRActionBlock action,
MTRSubscriptionEstablishedHandler establishedHandler) :
- MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge(queue, handler, action),
+ MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge(queue, handler, action),
mEstablishedHandler(establishedHandler)
{}
void OnSubscriptionEstablished();
- using MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge::KeepAliveOnCallback;
- using MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge::OnDone;
+ using MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge::KeepAliveOnCallback;
+ using MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge::OnDone;
private:
MTRSubscriptionEstablishedHandler mEstablishedHandler;
};
-class MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge
- : public MTRCallbackBridge
+class MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge
+ : public MTRCallbackBridge
{
public:
- MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge(dispatch_queue_t queue,
- ResponseHandler handler) :
- MTRCallbackBridge(queue, handler,
- OnSuccessFn){};
+ MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge(dispatch_queue_t queue,
+ ResponseHandler handler) :
+ MTRCallbackBridge(queue, handler,
+ OnSuccessFn){};
- MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge(dispatch_queue_t queue,
- ResponseHandler handler,
- MTRActionBlock action) :
- MTRCallbackBridge(queue, handler, action,
- OnSuccessFn){};
+ MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge(dispatch_queue_t queue,
+ ResponseHandler handler,
+ MTRActionBlock action) :
+ MTRCallbackBridge(
+ queue, handler, action, OnSuccessFn){};
static void OnSuccessFn(
void * context,
- const chip::app::DataModel::Nullable & value);
+ const chip::app::DataModel::Nullable & value);
};
-class MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackSubscriptionBridge
- : public MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge
+class MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackSubscriptionBridge
+ : public MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge
{
public:
- MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackSubscriptionBridge(
+ MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackSubscriptionBridge(
dispatch_queue_t queue, ResponseHandler handler, MTRActionBlock action,
MTRSubscriptionEstablishedHandler establishedHandler) :
- MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge(queue, handler, action),
+ MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge(queue, handler, action),
mEstablishedHandler(establishedHandler)
{}
void OnSubscriptionEstablished();
- using MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge::KeepAliveOnCallback;
- using MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge::OnDone;
+ using MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge::KeepAliveOnCallback;
+ using MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge::OnDone;
private:
MTRSubscriptionEstablishedHandler mEstablishedHandler;
};
-class MTRNetworkCommissioningClusterWiFiBandAttributeCallbackBridge
- : public MTRCallbackBridge
+class MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge
+ : public MTRCallbackBridge
{
public:
- MTRNetworkCommissioningClusterWiFiBandAttributeCallbackBridge(dispatch_queue_t queue, ResponseHandler handler) :
- MTRCallbackBridge(queue, handler, OnSuccessFn){};
+ MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge(dispatch_queue_t queue, ResponseHandler handler) :
+ MTRCallbackBridge(queue, handler, OnSuccessFn){};
- MTRNetworkCommissioningClusterWiFiBandAttributeCallbackBridge(dispatch_queue_t queue, ResponseHandler handler,
- MTRActionBlock action) :
- MTRCallbackBridge(queue, handler, action, OnSuccessFn){};
+ MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge(dispatch_queue_t queue, ResponseHandler handler,
+ MTRActionBlock action) :
+ MTRCallbackBridge(queue, handler, action, OnSuccessFn){};
- static void OnSuccessFn(void * context, chip::app::Clusters::NetworkCommissioning::WiFiBand value);
+ static void OnSuccessFn(void * context, chip::app::Clusters::NetworkCommissioning::WiFiBandEnum value);
};
-class MTRNetworkCommissioningClusterWiFiBandAttributeCallbackSubscriptionBridge
- : public MTRNetworkCommissioningClusterWiFiBandAttributeCallbackBridge
+class MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackSubscriptionBridge
+ : public MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge
{
public:
- MTRNetworkCommissioningClusterWiFiBandAttributeCallbackSubscriptionBridge(
+ MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackSubscriptionBridge(
dispatch_queue_t queue, ResponseHandler handler, MTRActionBlock action,
MTRSubscriptionEstablishedHandler establishedHandler) :
- MTRNetworkCommissioningClusterWiFiBandAttributeCallbackBridge(queue, handler, action),
+ MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge(queue, handler, action),
mEstablishedHandler(establishedHandler)
{}
void OnSubscriptionEstablished();
- using MTRNetworkCommissioningClusterWiFiBandAttributeCallbackBridge::KeepAliveOnCallback;
- using MTRNetworkCommissioningClusterWiFiBandAttributeCallbackBridge::OnDone;
+ using MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge::KeepAliveOnCallback;
+ using MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge::OnDone;
private:
MTRSubscriptionEstablishedHandler mEstablishedHandler;
};
-class MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackBridge
- : public MTRCallbackBridge
+class MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge
+ : public MTRCallbackBridge
{
public:
- MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackBridge(dispatch_queue_t queue, ResponseHandler handler) :
- MTRCallbackBridge(queue, handler, OnSuccessFn){};
+ MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge(dispatch_queue_t queue, ResponseHandler handler) :
+ MTRCallbackBridge(queue, handler, OnSuccessFn){};
- MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackBridge(dispatch_queue_t queue, ResponseHandler handler,
- MTRActionBlock action) :
- MTRCallbackBridge(queue, handler, action, OnSuccessFn){};
+ MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge(dispatch_queue_t queue, ResponseHandler handler,
+ MTRActionBlock action) :
+ MTRCallbackBridge(queue, handler, action, OnSuccessFn){};
static void OnSuccessFn(void * context,
- const chip::app::DataModel::Nullable & value);
+ const chip::app::DataModel::Nullable & value);
};
-class MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackSubscriptionBridge
- : public MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackBridge
+class MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackSubscriptionBridge
+ : public MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge
{
public:
- MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackSubscriptionBridge(
+ MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackSubscriptionBridge(
dispatch_queue_t queue, ResponseHandler handler, MTRActionBlock action,
MTRSubscriptionEstablishedHandler establishedHandler) :
- MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackBridge(queue, handler, action),
+ MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge(queue, handler, action),
mEstablishedHandler(establishedHandler)
{}
void OnSubscriptionEstablished();
- using MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackBridge::KeepAliveOnCallback;
- using MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackBridge::OnDone;
+ using MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge::KeepAliveOnCallback;
+ using MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge::OnDone;
private:
MTRSubscriptionEstablishedHandler mEstablishedHandler;
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.mm b/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.mm
index f490db43d38b49..7198986eee0a05 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRCallbackBridge.mm
@@ -4657,8 +4657,8 @@
}
void MTRNetworkCommissioningNetworksListAttributeCallbackBridge::OnSuccessFn(void * context,
- const chip::app::DataModel::DecodableList &
- value)
+ const chip::app::DataModel::DecodableList<
+ chip::app::Clusters::NetworkCommissioning::Structs::NetworkInfoStruct::DecodableType> & value)
{
NSArray * _Nonnull objCValue;
{ // Scope for our temporary variables
@@ -4666,8 +4666,8 @@
auto iter_0 = value.begin();
while (iter_0.Next()) {
auto & entry_0 = iter_0.GetValue();
- MTRNetworkCommissioningClusterNetworkInfo * newElement_0;
- newElement_0 = [MTRNetworkCommissioningClusterNetworkInfo new];
+ MTRNetworkCommissioningClusterNetworkInfoStruct * newElement_0;
+ newElement_0 = [MTRNetworkCommissioningClusterNetworkInfoStruct new];
newElement_0.networkID = AsData(entry_0.networkID);
newElement_0.connected = [NSNumber numberWithBool:entry_0.connected];
[array_0 addObject:newElement_0];
@@ -25189,15 +25189,15 @@
}
}
-void MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge::OnSuccessFn(
- void * context, chip::app::Clusters::NetworkCommissioning::NetworkCommissioningStatus value)
+void MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge::OnSuccessFn(
+ void * context, chip::app::Clusters::NetworkCommissioning::NetworkCommissioningStatusEnum value)
{
NSNumber * _Nonnull objCValue;
objCValue = [NSNumber numberWithUnsignedChar:chip::to_underlying(value)];
DispatchSuccess(context, objCValue);
};
-void MTRNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackSubscriptionBridge::OnSubscriptionEstablished()
+void MTRNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackSubscriptionBridge::OnSubscriptionEstablished()
{
if (!mQueue) {
return;
@@ -25212,8 +25212,8 @@
}
}
-void MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackBridge::OnSuccessFn(void * context,
- const chip::app::DataModel::Nullable & value)
+void MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackBridge::OnSuccessFn(void * context,
+ const chip::app::DataModel::Nullable & value)
{
NSNumber * _Nullable objCValue;
if (value.IsNull()) {
@@ -25224,7 +25224,7 @@
DispatchSuccess(context, objCValue);
};
-void MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusAttributeCallbackSubscriptionBridge::
+void MTRNullableNetworkCommissioningClusterNetworkCommissioningStatusEnumAttributeCallbackSubscriptionBridge::
OnSubscriptionEstablished()
{
if (!mQueue) {
@@ -25240,15 +25240,15 @@
}
}
-void MTRNetworkCommissioningClusterWiFiBandAttributeCallbackBridge::OnSuccessFn(
- void * context, chip::app::Clusters::NetworkCommissioning::WiFiBand value)
+void MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge::OnSuccessFn(
+ void * context, chip::app::Clusters::NetworkCommissioning::WiFiBandEnum value)
{
NSNumber * _Nonnull objCValue;
objCValue = [NSNumber numberWithUnsignedChar:chip::to_underlying(value)];
DispatchSuccess(context, objCValue);
};
-void MTRNetworkCommissioningClusterWiFiBandAttributeCallbackSubscriptionBridge::OnSubscriptionEstablished()
+void MTRNetworkCommissioningClusterWiFiBandEnumAttributeCallbackSubscriptionBridge::OnSubscriptionEstablished()
{
if (!mQueue) {
return;
@@ -25263,8 +25263,8 @@
}
}
-void MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackBridge::OnSuccessFn(
- void * context, const chip::app::DataModel::Nullable & value)
+void MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackBridge::OnSuccessFn(
+ void * context, const chip::app::DataModel::Nullable & value)
{
NSNumber * _Nullable objCValue;
if (value.IsNull()) {
@@ -25275,7 +25275,7 @@
DispatchSuccess(context, objCValue);
};
-void MTRNullableNetworkCommissioningClusterWiFiBandAttributeCallbackSubscriptionBridge::OnSubscriptionEstablished()
+void MTRNullableNetworkCommissioningClusterWiFiBandEnumAttributeCallbackSubscriptionBridge::OnSubscriptionEstablished()
{
if (!mQueue) {
return;
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRCommandPayloadsObjc.mm b/src/darwin/Framework/CHIP/zap-generated/MTRCommandPayloadsObjc.mm
index 54b2ccaabd56cd..0f7cc9d3233ebd 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRCommandPayloadsObjc.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRCommandPayloadsObjc.mm
@@ -4514,8 +4514,8 @@ - (CHIP_ERROR)_setFieldsFromDecodableStruct:
auto iter_1 = decodableStruct.wiFiScanResults.Value().begin();
while (iter_1.Next()) {
auto & entry_1 = iter_1.GetValue();
- MTRNetworkCommissioningClusterWiFiInterfaceScanResult * newElement_1;
- newElement_1 = [MTRNetworkCommissioningClusterWiFiInterfaceScanResult new];
+ MTRNetworkCommissioningClusterWiFiInterfaceScanResultStruct * newElement_1;
+ newElement_1 = [MTRNetworkCommissioningClusterWiFiInterfaceScanResultStruct new];
newElement_1.security = [NSNumber numberWithUnsignedChar:entry_1.security.Raw()];
newElement_1.ssid = AsData(entry_1.ssid);
newElement_1.bssid = AsData(entry_1.bssid);
@@ -4541,8 +4541,8 @@ - (CHIP_ERROR)_setFieldsFromDecodableStruct:
auto iter_1 = decodableStruct.threadScanResults.Value().begin();
while (iter_1.Next()) {
auto & entry_1 = iter_1.GetValue();
- MTRNetworkCommissioningClusterThreadInterfaceScanResult * newElement_1;
- newElement_1 = [MTRNetworkCommissioningClusterThreadInterfaceScanResult new];
+ MTRNetworkCommissioningClusterThreadInterfaceScanResultStruct * newElement_1;
+ newElement_1 = [MTRNetworkCommissioningClusterThreadInterfaceScanResultStruct new];
newElement_1.panId = [NSNumber numberWithUnsignedShort:entry_1.panId];
newElement_1.extendedPanId = [NSNumber numberWithUnsignedLongLong:entry_1.extendedPanId];
newElement_1.networkName = AsString(entry_1.networkName);
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRStructsObjc.h b/src/darwin/Framework/CHIP/zap-generated/MTRStructsObjc.h
index 70c25dfb65ac46..5bac17ec0460ad 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRStructsObjc.h
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRStructsObjc.h
@@ -305,32 +305,45 @@ API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1))
NSNumber * _Nonnull maxCumulativeFailsafeSeconds API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
@end
+MTR_NEWLY_AVAILABLE
+@interface MTRNetworkCommissioningClusterNetworkInfoStruct : NSObject
+@property (nonatomic, copy) NSData * _Nonnull networkID MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSNumber * _Nonnull connected MTR_NEWLY_AVAILABLE;
+@end
+
API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1))
-@interface MTRNetworkCommissioningClusterNetworkInfo : NSObject
-@property (nonatomic, copy) NSData * _Nonnull networkID API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSNumber * _Nonnull connected API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
+MTR_NEWLY_DEPRECATED("Please use MTRNetworkCommissioningClusterNetworkInfoStruct")
+@interface MTRNetworkCommissioningClusterNetworkInfo : MTRNetworkCommissioningClusterNetworkInfoStruct
+@end
+MTR_NEWLY_AVAILABLE
+@interface MTRNetworkCommissioningClusterThreadInterfaceScanResultStruct : NSObject
+@property (nonatomic, copy) NSNumber * _Nonnull panId MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSNumber * _Nonnull extendedPanId MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSString * _Nonnull networkName MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSNumber * _Nonnull channel MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSNumber * _Nonnull version MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSData * _Nonnull extendedAddress MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSNumber * _Nonnull rssi MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSNumber * _Nonnull lqi MTR_NEWLY_AVAILABLE;
@end
API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1))
-@interface MTRNetworkCommissioningClusterThreadInterfaceScanResult : NSObject
-@property (nonatomic, copy) NSNumber * _Nonnull panId API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSNumber * _Nonnull extendedPanId API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSString * _Nonnull networkName API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSNumber * _Nonnull channel API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSNumber * _Nonnull version API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSData * _Nonnull extendedAddress API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSNumber * _Nonnull rssi API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSNumber * _Nonnull lqi API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
+MTR_NEWLY_DEPRECATED("Please use MTRNetworkCommissioningClusterThreadInterfaceScanResultStruct")
+@interface MTRNetworkCommissioningClusterThreadInterfaceScanResult : MTRNetworkCommissioningClusterThreadInterfaceScanResultStruct
+@end
+MTR_NEWLY_AVAILABLE
+@interface MTRNetworkCommissioningClusterWiFiInterfaceScanResultStruct : NSObject
+@property (nonatomic, copy) NSNumber * _Nonnull security MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSData * _Nonnull ssid MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSData * _Nonnull bssid MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSNumber * _Nonnull channel MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSNumber * _Nonnull wiFiBand MTR_NEWLY_AVAILABLE;
+@property (nonatomic, copy) NSNumber * _Nonnull rssi MTR_NEWLY_AVAILABLE;
@end
API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1))
-@interface MTRNetworkCommissioningClusterWiFiInterfaceScanResult : NSObject
-@property (nonatomic, copy) NSNumber * _Nonnull security API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSData * _Nonnull ssid API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSData * _Nonnull bssid API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSNumber * _Nonnull channel API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSNumber * _Nonnull wiFiBand API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
-@property (nonatomic, copy) NSNumber * _Nonnull rssi API_AVAILABLE(ios(16.1), macos(13.0), watchos(9.1), tvos(16.1));
+MTR_NEWLY_DEPRECATED("Please use MTRNetworkCommissioningClusterWiFiInterfaceScanResultStruct")
+@interface MTRNetworkCommissioningClusterWiFiInterfaceScanResult : MTRNetworkCommissioningClusterWiFiInterfaceScanResultStruct
@end
API_AVAILABLE(ios(16.4), macos(13.3), watchos(9.4), tvos(16.4))
diff --git a/src/darwin/Framework/CHIP/zap-generated/MTRStructsObjc.mm b/src/darwin/Framework/CHIP/zap-generated/MTRStructsObjc.mm
index 0dc8ce3582f28a..d30dc53a11a5ec 100644
--- a/src/darwin/Framework/CHIP/zap-generated/MTRStructsObjc.mm
+++ b/src/darwin/Framework/CHIP/zap-generated/MTRStructsObjc.mm
@@ -1089,7 +1089,7 @@ - (NSString *)description
@end
-@implementation MTRNetworkCommissioningClusterNetworkInfo
+@implementation MTRNetworkCommissioningClusterNetworkInfoStruct
- (instancetype)init
{
if (self = [super init]) {
@@ -1103,7 +1103,7 @@ - (instancetype)init
- (id)copyWithZone:(NSZone * _Nullable)zone
{
- auto other = [[MTRNetworkCommissioningClusterNetworkInfo alloc] init];
+ auto other = [[MTRNetworkCommissioningClusterNetworkInfoStruct alloc] init];
other.networkID = self.networkID;
other.connected = self.connected;
@@ -1121,7 +1121,10 @@ - (NSString *)description
@end
-@implementation MTRNetworkCommissioningClusterThreadInterfaceScanResult
+@implementation MTRNetworkCommissioningClusterNetworkInfo : MTRNetworkCommissioningClusterNetworkInfoStruct
+@end
+
+@implementation MTRNetworkCommissioningClusterThreadInterfaceScanResultStruct
- (instancetype)init
{
if (self = [super init]) {
@@ -1147,7 +1150,7 @@ - (instancetype)init
- (id)copyWithZone:(NSZone * _Nullable)zone
{
- auto other = [[MTRNetworkCommissioningClusterThreadInterfaceScanResult alloc] init];
+ auto other = [[MTRNetworkCommissioningClusterThreadInterfaceScanResultStruct alloc] init];
other.panId = self.panId;
other.extendedPanId = self.extendedPanId;
@@ -1173,7 +1176,11 @@ - (NSString *)description
@end
-@implementation MTRNetworkCommissioningClusterWiFiInterfaceScanResult
+@implementation MTRNetworkCommissioningClusterThreadInterfaceScanResult
+ : MTRNetworkCommissioningClusterThreadInterfaceScanResultStruct
+@end
+
+@implementation MTRNetworkCommissioningClusterWiFiInterfaceScanResultStruct
- (instancetype)init
{
if (self = [super init]) {
@@ -1195,7 +1202,7 @@ - (instancetype)init
- (id)copyWithZone:(NSZone * _Nullable)zone
{
- auto other = [[MTRNetworkCommissioningClusterWiFiInterfaceScanResult alloc] init];
+ auto other = [[MTRNetworkCommissioningClusterWiFiInterfaceScanResultStruct alloc] init];
other.security = self.security;
other.ssid = self.ssid;
@@ -1218,6 +1225,9 @@ - (NSString *)description
@end
+@implementation MTRNetworkCommissioningClusterWiFiInterfaceScanResult : MTRNetworkCommissioningClusterWiFiInterfaceScanResultStruct
+@end
+
@implementation MTRGeneralDiagnosticsClusterNetworkInterface
- (instancetype)init
{
diff --git a/src/include/platform/NetworkCommissioning.h b/src/include/platform/NetworkCommissioning.h
index 5880ec56658fca..7a9cbc3c6db8c0 100644
--- a/src/include/platform/NetworkCommissioning.h
+++ b/src/include/platform/NetworkCommissioning.h
@@ -89,12 +89,12 @@ static_assert(sizeof(Network::networkID) <= std::numeric_limits security;
+ chip::BitFlags security;
uint8_t ssid[DeviceLayer::Internal::kMaxWiFiSSIDLength];
uint8_t ssidLen;
uint8_t bssid[6];
uint16_t channel;
- app::Clusters::NetworkCommissioning::WiFiBand wiFiBand;
+ app::Clusters::NetworkCommissioning::WiFiBandEnum wiFiBand;
int8_t rssi;
};
@@ -120,9 +120,9 @@ static_assert(sizeof(ThreadScanResponse::networkName) <= std::numeric_limits;
using WiFiScanResponseIterator = Iterator;
using ThreadScanResponseIterator = Iterator;
-using Status = app::Clusters::NetworkCommissioning::NetworkCommissioningStatus;
-using WiFiBand = app::Clusters::NetworkCommissioning::WiFiBand;
-using WiFiSecurity = app::Clusters::NetworkCommissioning::WiFiSecurity;
+using Status = app::Clusters::NetworkCommissioning::NetworkCommissioningStatusEnum;
+using WiFiBand = app::Clusters::NetworkCommissioning::WiFiBandEnum;
+using WiFiSecurity = app::Clusters::NetworkCommissioning::WiFiSecurityBitmap;
// BaseDriver and WirelessDriver are the common interfaces for a network driver, platform drivers should not implement this
// directly, instead, users are expected to implement WiFiDriver, ThreadDriver and EthernetDriver.
diff --git a/src/include/platform/internal/GenericPlatformManagerImpl_POSIX.h b/src/include/platform/internal/GenericPlatformManagerImpl_POSIX.h
index acdd2a4d3b762c..e4e5255d5b13bd 100644
--- a/src/include/platform/internal/GenericPlatformManagerImpl_POSIX.h
+++ b/src/include/platform/internal/GenericPlatformManagerImpl_POSIX.h
@@ -65,11 +65,14 @@ class GenericPlatformManagerImpl_POSIX : public GenericPlatformManagerImpl mState{ State::kStopped };
+
+#if !CHIP_SYSTEM_CONFIG_USE_LIBEV
pthread_cond_t mEventQueueStoppedCond;
pthread_mutex_t mStateLock;
pthread_attr_t mChipTaskAttr;
struct sched_param mChipTaskSchedParam;
+#endif
#if CHIP_STACK_LOCK_TRACKING_ENABLED
bool mChipStackIsLocked = false;
@@ -101,16 +104,25 @@ class GenericPlatformManagerImpl_POSIX : public GenericPlatformManagerImpl(this); }
- void ProcessDeviceEvents();
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+ static void _DispatchEventViaScheduleWork(System::Layer * aLayer, void * appState);
+#else
DeviceSafeQueue mChipEventQueue;
std::atomic mShouldRunEventLoop{ true };
static void * EventLoopTaskMain(void * arg);
+#endif
+ void ProcessDeviceEvents();
};
// Instruct the compiler to instantiate the template only when explicitly told to do so.
extern template class GenericPlatformManagerImpl_POSIX;
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+// with external libev mainloop, this should be implemented externally to terminate the mainloop cleanly
+// (Note that there is a weak default implementation that just calls chipDie() when the external implementation is missing)
+extern void ExitExternalMainLoop();
+#endif
} // namespace Internal
} // namespace DeviceLayer
} // namespace chip
diff --git a/src/include/platform/internal/GenericPlatformManagerImpl_POSIX.ipp b/src/include/platform/internal/GenericPlatformManagerImpl_POSIX.ipp
index 5c9061a901a3f2..ee87cfb7726989 100644
--- a/src/include/platform/internal/GenericPlatformManagerImpl_POSIX.ipp
+++ b/src/include/platform/internal/GenericPlatformManagerImpl_POSIX.ipp
@@ -46,12 +46,14 @@ namespace chip {
namespace DeviceLayer {
namespace Internal {
+#if !CHIP_SYSTEM_CONFIG_USE_LIBEV
namespace {
System::LayerSocketsLoop & SystemLayerSocketsLoop()
{
return static_cast(DeviceLayer::SystemLayer());
}
} // anonymous namespace
+#endif
template
CHIP_ERROR GenericPlatformManagerImpl_POSIX::_InitChipStack()
@@ -59,6 +61,8 @@ CHIP_ERROR GenericPlatformManagerImpl_POSIX::_InitChipStack()
// Call up to the base class _InitChipStack() to perform the bulk of the initialization.
ReturnErrorOnFailure(GenericPlatformManagerImpl::_InitChipStack());
+#if !CHIP_SYSTEM_CONFIG_USE_LIBEV
+
mShouldRunEventLoop.store(true, std::memory_order_relaxed);
int ret = pthread_cond_init(&mEventQueueStoppedCond, nullptr);
@@ -66,6 +70,7 @@ CHIP_ERROR GenericPlatformManagerImpl_POSIX::_InitChipStack()
ret = pthread_mutex_init(&mStateLock, nullptr);
VerifyOrReturnError(ret == 0, CHIP_ERROR_POSIX(ret));
+#endif
return CHIP_NO_ERROR;
}
@@ -130,15 +135,44 @@ CHIP_ERROR GenericPlatformManagerImpl_POSIX::_StartChipTimer(System::
return CHIP_NO_ERROR;
}
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+template
+void GenericPlatformManagerImpl_POSIX::_DispatchEventViaScheduleWork(System::Layer * aLayer, void * appState)
+{
+ auto * event = static_cast(appState);
+ PlatformMgrImpl().DispatchEvent(event);
+ delete event;
+}
+#endif // CHIP_SYSTEM_CONFIG_USE_LIBEV
+
template
CHIP_ERROR GenericPlatformManagerImpl_POSIX::_PostEvent(const ChipDeviceEvent * event)
{
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+ // Note: PostEvent() is documented to allow being called "from any thread".
+ // In the libev mainloop case however, calling from another thread is NOT supported.
+ // Introducing this restriction is OK because the very goal of using libev is to avoid
+ // multiple threads by running matter and all application code in the same thread on the
+ // libev mainloop. So getting called from another thread here is very likely a
+ // application design error.
+ VerifyOrDieWithMsg(_IsChipStackLockedByCurrentThread(), DeviceLayer, "PostEvent() not allowed from outside chip stack lock");
+
+ // Schedule dispatching this event via System Layer's ScheduleWork
+ ChipDeviceEvent * eventCopyP = new ChipDeviceEvent;
+ VerifyOrDie(eventCopyP != nullptr);
+ *eventCopyP = *event;
+ SystemLayer().ScheduleWork(&_DispatchEventViaScheduleWork, eventCopyP);
+ return CHIP_NO_ERROR;
+#else
mChipEventQueue.Push(*event);
SystemLayerSocketsLoop().Signal(); // Trigger wake select on CHIP thread
return CHIP_NO_ERROR;
+#endif // CHIP_SYSTEM_CONFIG_USE_LIBEV
}
+#if !CHIP_SYSTEM_CONFIG_USE_LIBEV
+
template
void GenericPlatformManagerImpl_POSIX::ProcessDeviceEvents()
{
@@ -152,6 +186,12 @@ void GenericPlatformManagerImpl_POSIX::ProcessDeviceEvents()
template
void GenericPlatformManagerImpl_POSIX::_RunEventLoop()
{
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+
+ VerifyOrDieWithMsg(false, DeviceLayer, "libev based app should never try to run a separate event loop");
+
+#else
+
pthread_mutex_lock(&mStateLock);
//
@@ -203,6 +243,7 @@ void GenericPlatformManagerImpl_POSIX::_RunEventLoop()
// Shutdown() method.
//
mState.store(State::kStopped, std::memory_order_relaxed);
+#endif // CHIP_SYSTEM_CONFIG_USE_LIBEV
}
template
@@ -213,9 +254,22 @@ void * GenericPlatformManagerImpl_POSIX::EventLoopTaskMain(void * arg
return nullptr;
}
+#endif // !CHIP_SYSTEM_CONFIG_USE_LIBEV
+
template
CHIP_ERROR GenericPlatformManagerImpl_POSIX::_StartEventLoopTask()
{
+
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+ // Note: With libev, we dont need our own mainloop.
+ // Still, we set State::kRunning to activate lock checking, because
+ // calls to ScheduleWork and some System Layer methods may not
+ // occur from other threads (which usually don't exist in a
+ // libev app)
+ mState.store(State::kRunning, std::memory_order_relaxed);
+ return CHIP_NO_ERROR;
+#else
+
int err;
err = pthread_attr_init(&mChipTaskAttr);
VerifyOrReturnError(err == 0, CHIP_ERROR_POSIX(err));
@@ -247,11 +301,30 @@ CHIP_ERROR GenericPlatformManagerImpl_POSIX::_StartEventLoopTask()
pthread_mutex_unlock(&mStateLock);
return CHIP_ERROR_POSIX(err);
+#endif // CHIP_SYSTEM_CONFIG_USE_LIBEV
+}
+
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+// fallback implementation
+void __attribute__((weak)) ExitExternalMainLoop()
+{
+ // FIXME: implement better exit
+ VerifyOrDieWithMsg(false, DeviceLayer, "Missing custom ExitExternalMainLoop() implementation for clean shutdown -> just die");
}
+#endif // CHIP_SYSTEM_CONFIG_USE_LIBEV
template
CHIP_ERROR GenericPlatformManagerImpl_POSIX::_StopEventLoopTask()
{
+
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+ // with libev, the mainloop is set up and managed externally
+ mState.store(State::kStopping, std::memory_order_relaxed);
+ ExitExternalMainLoop(); // this callback needs to be implemented.
+ mState.store(State::kStopped, std::memory_order_relaxed);
+ return CHIP_NO_ERROR;
+#else
+
int err = 0;
//
@@ -304,6 +377,7 @@ CHIP_ERROR GenericPlatformManagerImpl_POSIX::_StopEventLoopTask()
exit:
return CHIP_ERROR_POSIX(err);
+#endif // CHIP_SYSTEM_CONFIG_USE_LIBEV
}
template
@@ -316,8 +390,10 @@ void GenericPlatformManagerImpl_POSIX::_Shutdown()
//
VerifyOrDie(mState.load(std::memory_order_relaxed) == State::kStopped);
+#if !CHIP_SYSTEM_CONFIG_USE_LIBEV
pthread_mutex_destroy(&mStateLock);
pthread_cond_destroy(&mEventQueueStoppedCond);
+#endif
//
// Call up to the base class _Shutdown() to perform the actual stack de-initialization
diff --git a/src/platform/Darwin/PlatformManagerImpl.cpp b/src/platform/Darwin/PlatformManagerImpl.cpp
index f1d5e4841e761b..bf2dde3d4fe360 100644
--- a/src/platform/Darwin/PlatformManagerImpl.cpp
+++ b/src/platform/Darwin/PlatformManagerImpl.cpp
@@ -52,8 +52,10 @@ CHIP_ERROR PlatformManagerImpl::_InitChipStack()
SuccessOrExit(err);
#endif // CHIP_DISABLE_PLATFORM_KVS
+#if !CHIP_SYSTEM_CONFIG_USE_LIBEV
// Ensure there is a dispatch queue available
static_cast(DeviceLayer::SystemLayer()).SetDispatchQueue(GetWorkQueue());
+#endif
// Call _InitChipStack() on the generic implementation base class
// to finish the initialization process.
diff --git a/src/platform/Darwin/SystemPlatformConfig.h b/src/platform/Darwin/SystemPlatformConfig.h
index 76995250738a69..5311b538ed7ea2 100644
--- a/src/platform/Darwin/SystemPlatformConfig.h
+++ b/src/platform/Darwin/SystemPlatformConfig.h
@@ -34,9 +34,14 @@ struct ChipDeviceEvent;
// ==================== Platform Adaptations ====================
+#if !CHIP_SYSTEM_CONFIG_USE_LIBEV
+// FIXME: these should not be hardcoded here, it is set via build config
+// Need to exclude these for now in libev case
#define CHIP_SYSTEM_CONFIG_POSIX_LOCKING 0
#define CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING 0
#define CHIP_SYSTEM_CONFIG_NO_LOCKING 1
+#endif
+
#define CHIP_SYSTEM_CONFIG_PLATFORM_PROVIDES_TIME 1
#define CHIP_SYSTEM_CONFIG_USE_POSIX_TIME_FUNCTS 1
#define CHIP_SYSTEM_CONFIG_POOL_USE_HEAP 1
diff --git a/src/platform/Infineon/PSOC6/NetworkCommissioningDriver.h b/src/platform/Infineon/PSOC6/NetworkCommissioningDriver.h
index d0f8dcf2929e5a..d7f5683d516356 100644
--- a/src/platform/Infineon/PSOC6/NetworkCommissioningDriver.h
+++ b/src/platform/Infineon/PSOC6/NetworkCommissioningDriver.h
@@ -116,7 +116,7 @@ class P6WiFiDriver final : public WiFiDriver
CHIP_ERROR ConnectWiFiNetwork(const char * ssid, uint8_t ssidLen, const char * key, uint8_t keyLen);
static void scan_result_callback(cy_wcm_scan_result_t * result_ptr, void * user_data, cy_wcm_scan_status_t status);
- BitFlags ConvertSecuritytype(cy_wcm_security_t security);
+ BitFlags ConvertSecuritytype(cy_wcm_security_t security);
void OnConnectWiFiNetwork();
void OnScanWiFiNetworkDone();
diff --git a/src/platform/Infineon/PSOC6/NetworkCommissioningWiFiDriver.cpp b/src/platform/Infineon/PSOC6/NetworkCommissioningWiFiDriver.cpp
index a228582a4cbffb..4e866a069b25d9 100644
--- a/src/platform/Infineon/PSOC6/NetworkCommissioningWiFiDriver.cpp
+++ b/src/platform/Infineon/PSOC6/NetworkCommissioningWiFiDriver.cpp
@@ -190,30 +190,30 @@ void P6WiFiDriver::ConnectNetwork(ByteSpan networkId, ConnectCallback * callback
}
}
-BitFlags P6WiFiDriver::ConvertSecuritytype(cy_wcm_security_t security)
+BitFlags P6WiFiDriver::ConvertSecuritytype(cy_wcm_security_t security)
{
- using app::Clusters::NetworkCommissioning::WiFiSecurity;
+ using app::Clusters::NetworkCommissioning::WiFiSecurityBitmap;
- BitFlags securityType;
+ BitFlags securityType;
if (security == CY_WCM_SECURITY_OPEN)
{
- securityType.Set(WiFiSecurity::kUnencrypted);
+ securityType.Set(WiFiSecurityBitmap::kUnencrypted);
}
else if (security & WPA3_SECURITY)
{
- securityType.Set(WiFiSecurity::kWpa3Personal);
+ securityType.Set(WiFiSecurityBitmap::kWpa3Personal);
}
else if (security & WPA2_SECURITY)
{
- securityType.Set(WiFiSecurity::kWpa2Personal);
+ securityType.Set(WiFiSecurityBitmap::kWpa2Personal);
}
else if (security & WPA_SECURITY)
{
- securityType.Set(WiFiSecurity::kWpaPersonal);
+ securityType.Set(WiFiSecurityBitmap::kWpaPersonal);
}
else if (security & WEP_ENABLED)
{
- securityType.Set(WiFiSecurity::kWep);
+ securityType.Set(WiFiSecurityBitmap::kWep);
}
return securityType;
}
diff --git a/src/platform/mt793x/NetworkCommissioningWiFiDriver.cpp b/src/platform/mt793x/NetworkCommissioningWiFiDriver.cpp
index 20579f9161f0f2..df8a372e021c45 100644
--- a/src/platform/mt793x/NetworkCommissioningWiFiDriver.cpp
+++ b/src/platform/mt793x/NetworkCommissioningWiFiDriver.cpp
@@ -213,9 +213,9 @@ void GenioWiFiDriver::ConnectNetwork(ByteSpan networkId, ConnectCallback * callb
}
}
-chip::BitFlags GenioWiFiDriver::ConvertSecuritytype(wifi_auth_mode_t auth_mode)
+chip::BitFlags GenioWiFiDriver::ConvertSecuritytype(wifi_auth_mode_t auth_mode)
{
- chip::BitFlags securityType;
+ chip::BitFlags securityType;
if (auth_mode == WIFI_AUTH_MODE_OPEN)
{
securityType = WiFiSecurity::kUnencrypted;
@@ -281,7 +281,7 @@ void GenioWiFiDriver::OnScanWiFiNetworkDone(wifi_scan_list_item_t * aScanResult)
while (aScanResult->is_valid)
{
NetworkCommissioning::WiFiScanResponse scanResponse = {};
- chip::BitFlags security;
+ chip::BitFlags security;
security = GetInstance().ConvertSecuritytype(aScanResult->auth_mode);
diff --git a/src/platform/mt793x/NetworkCommissioningWiFiDriver.h b/src/platform/mt793x/NetworkCommissioningWiFiDriver.h
index d51f734fcffbfa..ac810727d92808 100644
--- a/src/platform/mt793x/NetworkCommissioningWiFiDriver.h
+++ b/src/platform/mt793x/NetworkCommissioningWiFiDriver.h
@@ -122,7 +122,7 @@ class GenioWiFiDriver final : public WiFiDriver
CHIP_ERROR ConnectWiFiNetwork(const char * ssid, uint8_t ssidLen, const char * key, uint8_t keyLen);
- chip::BitFlags ConvertSecuritytype(wifi_auth_mode_t auth_mode);
+ chip::BitFlags ConvertSecuritytype(wifi_auth_mode_t auth_mode);
void OnConnectWiFiNetwork();
static GenioWiFiDriver & GetInstance()
diff --git a/src/platform/nxp/mw320/ConnectivityManagerImpl.cpp b/src/platform/nxp/mw320/ConnectivityManagerImpl.cpp
index 2f69495a9ff6f4..802fe2708e3e26 100644
--- a/src/platform/nxp/mw320/ConnectivityManagerImpl.cpp
+++ b/src/platform/nxp/mw320/ConnectivityManagerImpl.cpp
@@ -367,7 +367,7 @@ bool ConnectivityManagerImpl::_GetBssInfo(const uint8_t sid, NetworkCommissionin
// => rssi
result.rssi = static_cast(0 - res.rssi);
// => band, mw320 only works in 2.4G
- result.wiFiBand = app::Clusters::NetworkCommissioning::WiFiBand::k2g4;
+ result.wiFiBand = app::Clusters::NetworkCommissioning::WiFiBandEnum::k2g4;
// => channel
result.channel = res.channel;
// => security
diff --git a/src/platform/webos/ConnectivityManagerImpl.cpp b/src/platform/webos/ConnectivityManagerImpl.cpp
index b9275ef482f8f6..12f261cc541fbe 100644
--- a/src/platform/webos/ConnectivityManagerImpl.cpp
+++ b/src/platform/webos/ConnectivityManagerImpl.cpp
@@ -1324,9 +1324,9 @@ CHIP_ERROR ConnectivityManagerImpl::StartWiFiScan(ByteSpan ssid, WiFiDriver::Sca
namespace {
// wpa_supplicant's scan results don't contains the channel infomation, so we need this lookup table for resolving the band and
// channel infomation.
-std::pair GetBandAndChannelFromFrequency(uint32_t freq)
+std::pair GetBandAndChannelFromFrequency(uint32_t freq)
{
- std::pair ret = std::make_pair(WiFiBand::k2g4, 0);
+ std::pair ret = std::make_pair(WiFiBand::k2g4, 0);
if (freq <= 931)
{
ret.first = WiFiBand::k1g;
diff --git a/src/python_testing/TC_DA_1_7.py b/src/python_testing/TC_DA_1_7.py
index 35eae6a29db700..b9f3a787390ddb 100644
--- a/src/python_testing/TC_DA_1_7.py
+++ b/src/python_testing/TC_DA_1_7.py
@@ -29,11 +29,19 @@
from matter_testing_support import MatterBaseTest, async_test_body, bytes_from_hex, default_matter_test_main, hex_from_bytes
from mobly import asserts
+# Those are SDK samples that are known to be non-production.
FORBIDDEN_AKID = [
bytes_from_hex("78:5C:E7:05:B8:6B:8F:4E:6F:C7:93:AA:60:CB:43:EA:69:68:82:D5"),
bytes_from_hex("6A:FD:22:77:1F:51:1F:EC:BF:16:41:97:67:10:DC:DC:31:A1:71:7E")
]
+# List of certificate names that are known to have some issues, but not yet
+# updated in DCL. They will fail the test at runtime if seen, but not in CI.
+ALLOWED_SKIPPED_FILENAMES = [
+ "dcld_mirror_SERIALNUMBER_63709380400001_CN_NXP_Matter_Test_PAA_O_NXP_Semiconductors_NV_C_NL.der",
+ "dcld_mirror_SERIALNUMBER_63709330400001_CN_NXP_Matter_PAA_O_NXP_Semiconductors_NV_C_NL.der"
+]
+
def load_all_paa(paa_path: Path) -> dict:
logging.info("Loading all PAAs in %s" % paa_path)
@@ -41,15 +49,22 @@ def load_all_paa(paa_path: Path) -> dict:
paa_by_skid = {}
for filename in glob(str(paa_path.joinpath("*.der"))):
with open(filename, "rb") as derfile:
- # Load cert
- paa_der = derfile.read()
- paa_cert = load_der_x509_certificate(paa_der)
-
- # Find the subject key identifier (if present), and record it
- for extension in paa_cert.extensions:
- if extension.oid == SubjectKeyIdentifier.oid:
- skid = extension.value.key_identifier
- paa_by_skid[skid] = (Path(filename).name, paa_cert)
+ logging.info(f"Loading PAA: {filename}")
+ try:
+ # Load cert
+ paa_der = derfile.read()
+ paa_cert = load_der_x509_certificate(paa_der)
+
+ # Find the subject key identifier (if present), and record it
+ for extension in paa_cert.extensions:
+ if extension.oid == SubjectKeyIdentifier.oid:
+ skid = extension.value.key_identifier
+ paa_by_skid[skid] = (Path(filename).name, paa_cert)
+ except (ValueError, IOError) as e:
+ logging.error(f"Failed to load {filename}: {str(e)}")
+ if Path(filename).name not in ALLOWED_SKIPPED_FILENAMES:
+ logging.error(f"Re-raising error and failing: found new invalid PAA: {filename}")
+ raise
return paa_by_skid
diff --git a/src/system/BUILD.gn b/src/system/BUILD.gn
index acc7f790e3471d..7ce311d6499f19 100644
--- a/src/system/BUILD.gn
+++ b/src/system/BUILD.gn
@@ -85,6 +85,7 @@ buildconfig_header("system_buildconfig") {
"CHIP_SYSTEM_CONFIG_TEST=${chip_build_tests}",
"CHIP_WITH_NLFAULTINJECTION=${chip_with_nlfaultinjection}",
"CHIP_SYSTEM_CONFIG_USE_DISPATCH=${chip_system_config_use_dispatch}",
+ "CHIP_SYSTEM_CONFIG_USE_LIBEV=${chip_system_config_use_libev}",
"CHIP_SYSTEM_CONFIG_USE_LWIP=${chip_system_config_use_lwip}",
"CHIP_SYSTEM_CONFIG_USE_OPEN_THREAD_ENDPOINT=${chip_system_config_use_open_thread_inet_endpoints}",
"CHIP_SYSTEM_CONFIG_USE_SOCKETS=${chip_system_config_use_sockets}",
diff --git a/src/system/SystemLayer.h b/src/system/SystemLayer.h
index 4321edeb02b883..279ac057b05ff7 100644
--- a/src/system/SystemLayer.h
+++ b/src/system/SystemLayer.h
@@ -43,7 +43,9 @@
#if CHIP_SYSTEM_CONFIG_USE_DISPATCH
#include
-#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+#include
+#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH/LIBEV
#include
@@ -250,7 +252,10 @@ class LayerSocketsLoop : public LayerSockets
#if CHIP_SYSTEM_CONFIG_USE_DISPATCH
virtual void SetDispatchQueue(dispatch_queue_t dispatchQueue) = 0;
virtual dispatch_queue_t GetDispatchQueue() = 0;
-#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ virtual void SetLibEvLoop(struct ev_loop * aLibEvLoopP) = 0;
+ virtual struct ev_loop * GetLibEvLoop() = 0;
+#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH/LIBEV
};
#endif // CHIP_SYSTEM_CONFIG_USE_SOCKETS
diff --git a/src/system/SystemLayerImplSelect.cpp b/src/system/SystemLayerImplSelect.cpp
index 171f14f8a6cfb7..513cfff4860f5a 100644
--- a/src/system/SystemLayerImplSelect.cpp
+++ b/src/system/SystemLayerImplSelect.cpp
@@ -35,6 +35,17 @@
#define PTHREAD_NULL 0
#endif // CHIP_SYSTEM_CONFIG_POSIX_LOCKING && !defined(PTHREAD_NULL)
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+// older libev do not yet have ev_io_modify
+#ifndef ev_io_modify
+#define ev_io_modify(ev, events_) \
+ do \
+ { \
+ (ev)->events = ((ev)->events & EV__IOFDSET) | (events_); \
+ } while (0)
+#endif // ev_io_modify
+#endif // CHIP_SYSTEM_CONFIG_USE_LIBEV
+
namespace chip {
namespace System {
@@ -82,11 +93,25 @@ void LayerImplSelect::Shutdown()
{
w.DisableAndClear();
}
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ TimerList::Node * timer;
+ while ((timer = mTimerList.PopEarliest()) != nullptr)
+ {
+ if (ev_is_active(&timer->mLibEvTimer))
+ {
+ ev_timer_stop(mLibEvLoopP, &timer->mLibEvTimer);
+ }
+ }
+ mTimerPool.ReleaseAll();
-#else // CHIP_SYSTEM_CONFIG_USE_DISPATCH
+ for (auto & w : mSocketWatchPool)
+ {
+ w.DisableAndClear();
+ }
+#else
mTimerList.Clear();
mTimerPool.ReleaseAll();
-#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
+#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH/LIBEV
mWakeEvent.Close(*this);
@@ -139,10 +164,7 @@ CHIP_ERROR LayerImplSelect::StartTimer(Clock::Timeout delay, TimerCompleteCallba
{
(void) mTimerList.Add(timer);
dispatch_source_t timerSource = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, DISPATCH_TIMER_STRICT, dispatchQueue);
- if (timerSource == nullptr)
- {
- chipDie();
- }
+ VerifyOrDie(timerSource != nullptr);
timer->mTimerSource = timerSource;
dispatch_source_set_timer(
@@ -157,14 +179,25 @@ CHIP_ERROR LayerImplSelect::StartTimer(Clock::Timeout delay, TimerCompleteCallba
dispatch_resume(timerSource);
return CHIP_NO_ERROR;
}
-#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
-
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ VerifyOrDie(mLibEvLoopP != nullptr);
+ ev_timer_init(&timer->mLibEvTimer, &LayerImplSelect::HandleLibEvTimer, 1, 0);
+ timer->mLibEvTimer.data = timer;
+ auto t = Clock::Milliseconds64(delay).count();
+ ev_timer_set(&timer->mLibEvTimer, static_cast(t) / 1E3, 0.);
+ (void) mTimerList.Add(timer);
+ ev_timer_start(mLibEvLoopP, &timer->mLibEvTimer);
+ return CHIP_NO_ERROR;
+#endif
+#if !CHIP_SYSTEM_CONFIG_USE_LIBEV
+ // Note: dispatch based implementation needs this as fallback, but not LIBEV (and dead code is not allowed with -Werror)
if (mTimerList.Add(timer) == timer)
{
// The new timer is the earliest, so the time until the next event has probably changed.
Signal();
}
return CHIP_NO_ERROR;
+#endif // !CHIP_SYSTEM_CONFIG_USE_LIBEV
}
void LayerImplSelect::CancelTimer(TimerCompleteCallback onComplete, void * appState)
@@ -190,7 +223,10 @@ void LayerImplSelect::CancelTimer(TimerCompleteCallback onComplete, void * appSt
dispatch_source_cancel(timer->mTimerSource);
dispatch_release(timer->mTimerSource);
}
-#endif
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ VerifyOrDie(mLibEvLoopP != nullptr);
+ ev_timer_stop(mLibEvLoopP, &timer->mLibEvTimer);
+#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH/LIBEV
mTimerPool.Release(timer);
Signal();
@@ -211,8 +247,21 @@ CHIP_ERROR LayerImplSelect::ScheduleWork(TimerCompleteCallback onComplete, void
});
return CHIP_NO_ERROR;
}
-#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
-
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ // schedule as timer with no delay, but do NOT cancel previous timers with same onComplete/appState!
+ TimerList::Node * timer = mTimerPool.Create(*this, SystemClock().GetMonotonicTimestamp(), onComplete, appState);
+ VerifyOrReturnError(timer != nullptr, CHIP_ERROR_NO_MEMORY);
+ VerifyOrDie(mLibEvLoopP != nullptr);
+ ev_timer_init(&timer->mLibEvTimer, &LayerImplSelect::HandleLibEvTimer, 1, 0);
+ timer->mLibEvTimer.data = timer;
+ auto t = Clock::Milliseconds64(0).count();
+ ev_timer_set(&timer->mLibEvTimer, static_cast(t) / 1E3, 0.);
+ (void) mTimerList.Add(timer);
+ ev_timer_start(mLibEvLoopP, &timer->mLibEvTimer);
+ return CHIP_NO_ERROR;
+#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH/LIBEV
+#if !CHIP_SYSTEM_CONFIG_USE_LIBEV
+ // Note: dispatch based implementation needs this as fallback, but not LIBEV (and dead code is not allowed with -Werror)
// Ideally we would not use a timer here at all, but if we try to just
// ScheduleLambda the lambda needs to capture the following:
// 1) onComplete
@@ -247,6 +296,7 @@ CHIP_ERROR LayerImplSelect::ScheduleWork(TimerCompleteCallback onComplete, void
Signal();
}
return CHIP_NO_ERROR;
+#endif // !CHIP_SYSTEM_CONFIG_USE_LIBEV
}
CHIP_ERROR LayerImplSelect::StartWatchingSocket(int fd, SocketWatchToken * tokenOut)
@@ -268,6 +318,11 @@ CHIP_ERROR LayerImplSelect::StartWatchingSocket(int fd, SocketWatchToken * token
VerifyOrReturnError(watch != nullptr, CHIP_ERROR_ENDPOINT_POOL_FULL);
watch->mFD = fd;
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+ ev_io_init(&watch->mIoWatcher, &LayerImplSelect::HandleLibEvIoWatcher, 0, 0);
+ watch->mIoWatcher.data = watch;
+ watch->mLayerImplSelectP = this;
+#endif
*tokenOut = reinterpret_cast(watch);
return CHIP_NO_ERROR;
@@ -320,6 +375,24 @@ CHIP_ERROR LayerImplSelect::RequestCallbackOnPendingRead(SocketWatchToken token)
dispatch_activate(watch->mRdSource);
}
}
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ VerifyOrDie(mLibEvLoopP != nullptr);
+ int evs = (watch->mPendingIO.Has(SocketEventFlags::kRead) ? EV_READ : 0) |
+ (watch->mPendingIO.Has(SocketEventFlags::kWrite) ? EV_WRITE : 0);
+ if (!ev_is_active(&watch->mIoWatcher))
+ {
+ // First time actually using that watch
+ ev_io_set(&watch->mIoWatcher, watch->mFD, evs);
+ ev_io_start(mLibEvLoopP, &watch->mIoWatcher);
+ }
+ else
+ {
+ // already active, just change flags
+ // Note: changing flags only reliably works when the watcher is stopped
+ ev_io_stop(mLibEvLoopP, &watch->mIoWatcher);
+ ev_io_modify(&watch->mIoWatcher, evs);
+ ev_io_start(mLibEvLoopP, &watch->mIoWatcher);
+ }
#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
return CHIP_NO_ERROR;
@@ -359,10 +432,27 @@ CHIP_ERROR LayerImplSelect::RequestCallbackOnPendingWrite(SocketWatchToken token
}
});
// only now we are sure the source exists and can become active
- watch->mPendingIO.Set(SocketEventFlags::kWrite);
dispatch_activate(watch->mWrSource);
}
}
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ VerifyOrDie(mLibEvLoopP != nullptr);
+ int evs = (watch->mPendingIO.Has(SocketEventFlags::kRead) ? EV_READ : 0) |
+ (watch->mPendingIO.Has(SocketEventFlags::kWrite) ? EV_WRITE : 0);
+ if (!ev_is_active(&watch->mIoWatcher))
+ {
+ // First time actually using that watch
+ ev_io_set(&watch->mIoWatcher, watch->mFD, evs);
+ ev_io_start(mLibEvLoopP, &watch->mIoWatcher);
+ }
+ else
+ {
+ // already active, just change flags
+ // Note: changing flags only reliably works when the watcher is stopped
+ ev_io_stop(mLibEvLoopP, &watch->mIoWatcher);
+ ev_io_modify(&watch->mIoWatcher, evs);
+ ev_io_start(mLibEvLoopP, &watch->mIoWatcher);
+ }
#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
return CHIP_NO_ERROR;
@@ -375,6 +465,14 @@ CHIP_ERROR LayerImplSelect::ClearCallbackOnPendingRead(SocketWatchToken token)
watch->mPendingIO.Clear(SocketEventFlags::kRead);
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+ if (ev_is_active(&watch->mIoWatcher) && watch->mPendingIO.Raw() == 0)
+ {
+ // all flags cleared now, stop watching
+ ev_io_stop(mLibEvLoopP, &watch->mIoWatcher);
+ }
+#endif
+
return CHIP_NO_ERROR;
}
@@ -385,6 +483,14 @@ CHIP_ERROR LayerImplSelect::ClearCallbackOnPendingWrite(SocketWatchToken token)
watch->mPendingIO.Clear(SocketEventFlags::kWrite);
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+ if (ev_is_active(&watch->mIoWatcher) && watch->mPendingIO.Raw() == 0)
+ {
+ // all flags cleared now, stop watching
+ ev_io_stop(mLibEvLoopP, &watch->mIoWatcher);
+ }
+#endif
+
return CHIP_NO_ERROR;
}
@@ -396,7 +502,7 @@ CHIP_ERROR LayerImplSelect::StopWatchingSocket(SocketWatchToken * tokenInOut)
VerifyOrReturnError(watch != nullptr, CHIP_ERROR_INVALID_ARGUMENT);
VerifyOrReturnError(watch->mFD >= 0, CHIP_ERROR_INCORRECT_STATE);
-#if CHIP_SYSTEM_CONFIG_USE_DISPATCH
+#if CHIP_SYSTEM_CONFIG_USE_DISPATCH || CHIP_SYSTEM_CONFIG_USE_LIBEV
watch->DisableAndClear();
#else
watch->Clear();
@@ -532,12 +638,47 @@ void LayerImplSelect::HandleEvents()
}
#if CHIP_SYSTEM_CONFIG_USE_DISPATCH
+
void LayerImplSelect::HandleTimerComplete(TimerList::Node * timer)
{
mTimerList.Remove(timer);
mTimerPool.Invoke(timer);
}
-#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
+
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+
+void LayerImplSelect::HandleLibEvTimer(EV_P_ struct ev_timer * t, int revents)
+{
+ TimerList::Node * timer = static_cast(t->data);
+ VerifyOrDie(timer != nullptr);
+ LayerImplSelect * layerP = dynamic_cast(timer->mCallback.mSystemLayer);
+ VerifyOrDie(layerP != nullptr);
+ layerP->mTimerList.Remove(timer);
+ layerP->mTimerPool.Invoke(timer);
+}
+
+void LayerImplSelect::HandleLibEvIoWatcher(EV_P_ struct ev_io * i, int revents)
+{
+ SocketWatch * watch = static_cast(i->data);
+ if (watch != nullptr && watch->mCallback != nullptr && watch->mLayerImplSelectP != nullptr)
+ {
+ SocketEvents events;
+ if (revents & EV_READ)
+ {
+ events.Set(SocketEventFlags::kRead);
+ }
+ if (revents & EV_WRITE)
+ {
+ events.Set(SocketEventFlags::kWrite);
+ }
+ if (events.HasAny())
+ {
+ watch->mCallback(events, watch->mCallbackData);
+ }
+ }
+}
+
+#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH/LIBEV
void LayerImplSelect::SocketWatch::Clear()
{
@@ -548,6 +689,8 @@ void LayerImplSelect::SocketWatch::Clear()
#if CHIP_SYSTEM_CONFIG_USE_DISPATCH
mRdSource = nullptr;
mWrSource = nullptr;
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ mLayerImplSelectP = nullptr;
#endif
}
@@ -566,7 +709,16 @@ void LayerImplSelect::SocketWatch::DisableAndClear()
}
Clear();
}
-#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+void LayerImplSelect::SocketWatch::DisableAndClear()
+{
+ if (mLayerImplSelectP != nullptr && mLayerImplSelectP->mLibEvLoopP != nullptr)
+ {
+ ev_io_stop(mLayerImplSelectP->mLibEvLoopP, &mIoWatcher);
+ }
+ Clear();
+}
+#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH/LIBEV
} // namespace System
} // namespace chip
diff --git a/src/system/SystemLayerImplSelect.h b/src/system/SystemLayerImplSelect.h
index 76a58537c935eb..552e8d9e40163d 100644
--- a/src/system/SystemLayerImplSelect.h
+++ b/src/system/SystemLayerImplSelect.h
@@ -35,6 +35,13 @@
#include
#endif // CHIP_SYSTEM_CONFIG_POSIX_LOCKING
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+#include
+#if CHIP_SYSTEM_CONFIG_USE_DISPATCH
+#error "CHIP_SYSTEM_CONFIG_USE_LIBEV and CHIP_SYSTEM_CONFIG_USE_DISPATCH are mutually exclusive"
+#endif
+#endif // CHIP_SYSTEM_CONFIG_USE_LIBEV
+
#include
#include
#include
@@ -79,7 +86,12 @@ class LayerImplSelect : public LayerSocketsLoop
void SetDispatchQueue(dispatch_queue_t dispatchQueue) override { mDispatchQueue = dispatchQueue; };
dispatch_queue_t GetDispatchQueue() override { return mDispatchQueue; };
void HandleTimerComplete(TimerList::Node * timer);
-#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ virtual void SetLibEvLoop(struct ev_loop * aLibEvLoopP) override { mLibEvLoopP = aLibEvLoopP; };
+ virtual struct ev_loop * GetLibEvLoop() override { return mLibEvLoopP; };
+ static void HandleLibEvTimer(EV_P_ struct ev_timer * t, int revents);
+ static void HandleLibEvIoWatcher(EV_P_ struct ev_io * i, int revents);
+#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH/LIBEV
// Expose the result of WaitForEvents() for non-blocking socket implementations.
bool IsSelectResultValid() const { return mSelectResult >= 0; }
@@ -101,6 +113,12 @@ class LayerImplSelect : public LayerSocketsLoop
dispatch_source_t mWrSource;
void DisableAndClear();
#endif
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+ struct ev_io mIoWatcher;
+ LayerImplSelect * mLayerImplSelectP;
+ void DisableAndClear();
+#endif
+
intptr_t mCallbackData;
};
SocketWatch mSocketWatchPool[kSocketWatchMax];
@@ -134,6 +152,8 @@ class LayerImplSelect : public LayerSocketsLoop
#if CHIP_SYSTEM_CONFIG_USE_DISPATCH
dispatch_queue_t mDispatchQueue = nullptr;
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ struct ev_loop * mLibEvLoopP;
#endif
};
diff --git a/src/system/SystemTimer.h b/src/system/SystemTimer.h
index 54b07f8c092f49..cd27fefcf11ef2 100644
--- a/src/system/SystemTimer.h
+++ b/src/system/SystemTimer.h
@@ -64,6 +64,9 @@ class DLL_EXPORT TimerData
Layer * GetSystemLayer() const { return mSystemLayer; }
private:
+#if CHIP_SYSTEM_CONFIG_USE_LIBEV
+ friend class LayerImplSelect;
+#endif
Layer * mSystemLayer;
TimerCompleteCallback mOnComplete;
void * mAppState;
@@ -91,6 +94,9 @@ class DLL_EXPORT TimerData
#if CHIP_SYSTEM_CONFIG_USE_DISPATCH
friend class LayerImplSelect;
dispatch_source_t mTimerSource = nullptr;
+#elif CHIP_SYSTEM_CONFIG_USE_LIBEV
+ friend class LayerImplSelect;
+ struct ev_timer mLibEvTimer;
#endif // CHIP_SYSTEM_CONFIG_USE_DISPATCH
// Not defined
diff --git a/src/system/system.gni b/src/system/system.gni
index e91dd0dee460d3..67bf9b61b8f881 100644
--- a/src/system/system.gni
+++ b/src/system/system.gni
@@ -37,7 +37,10 @@ declare_args() {
}
declare_args() {
- # use the dispatch library
+ # do not use libev by default
+ chip_system_config_use_libev = false
+
+ # use the dispatch library on darwin targets
chip_system_config_use_dispatch = chip_system_config_use_sockets &&
(current_os == "mac" || current_os == "ios")
}
diff --git a/src/tracing/BUILD.gn b/src/tracing/BUILD.gn
new file mode 100644
index 00000000000000..673f5adc260833
--- /dev/null
+++ b/src/tracing/BUILD.gn
@@ -0,0 +1,42 @@
+# Copyright (c) 2023 Project CHIP Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import("//build_overrides/build.gni")
+import("//build_overrides/chip.gni")
+
+declare_args() {
+ matter_enable_tracing_support = true
+}
+
+config("tracing_enabled") {
+ defines = [ "MATTER_TRACING_ENABLED" ]
+}
+
+static_library("tracing") {
+ sources = [
+ "backend.h",
+ "log_declares.h",
+ "macros.h",
+ "registry.cpp",
+ "registry.h",
+ "scope.h",
+ "scopes.h",
+ ]
+
+ public_deps = [ "${chip_root}/src/lib/support" ]
+
+ if (matter_enable_tracing_support) {
+ public_configs = [ ":tracing_enabled" ]
+ }
+}
diff --git a/src/tracing/README.md b/src/tracing/README.md
new file mode 100644
index 00000000000000..6eb9323ad01150
--- /dev/null
+++ b/src/tracing/README.md
@@ -0,0 +1,44 @@
+# Matter tracing
+
+This library provides a runtime-configurable tracing and logging infrastructure
+for matter.
+
+## Types of data
+
+### Tracing
+
+Tracing is mostly intended for following execution flow and measuring time spent
+for various operations. They are:
+
+- _scoped_ where separate begin and end events are emitted _or_
+
+- _instant_ where a single notable event is emitted, representing a point in
+ time of a notable event
+
+Tracing and instant values are set to know enumeration values at compile time,
+to allow implementation of backends that require compile-time strings for their
+tracing.
+
+### Data Logging
+
+Data logging provides the tracing module the opportunity to report input/output
+data for matter data processing.
+
+The data logging is generally limited in count and covers:
+
+- _Messages_, specifically sent matter requests and received matter responses
+
+- _DNSSD_ operations as they are a core component of matter, specifically
+ attempts to discover nodes as well as when a node is discovered or fails
+ discovery.
+
+## Usage
+
+Backends are defined by extending `chip::Tracing::Backend` in `backend.h` and
+registering it via functions in `registry.h`
+
+Actual usage is controlled using `macros.h` (and for convenience `scope.h`
+provides scoped begin/end invocations).
+
+tracing macros can be completely made a `noop` by setting
+``matter_enable_tracing_support=false` when compiling.
diff --git a/src/tracing/backend.h b/src/tracing/backend.h
new file mode 100644
index 00000000000000..bc6501dbf6b4be
--- /dev/null
+++ b/src/tracing/backend.h
@@ -0,0 +1,69 @@
+/*
+ * Copyright (c) 2023 Project CHIP Authors
+ * All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#pragma once
+
+#include
+#include
+#include
+
+namespace chip {
+namespace Tracing {
+
+/// Represents a generic tracing back-end.
+///
+/// Derived from an intrusive list base as multiple
+/// tracing back-ends may exist per application.
+class Backend : public ::chip::IntrusiveListNodeBase<>
+{
+public:
+ virtual ~Backend() = default;
+
+ /// Begin a trace for the specified scope.
+ ///
+ /// Scopes must be completed by a corresponding
+ /// TraceEnd call.
+ virtual void TraceBegin(Scope scope) = 0;
+
+ /// Tracing end assumes completing a previously
+ /// started scope with TraceBegin and nesting is assumed.
+ ///
+ /// Expect scopes like:
+ /// TraceBegin(Foo)
+ /// TraceBegin(Bar)
+ /// TraceEnd(Bar)
+ /// TraceEnd(Foo)
+ ///
+ /// The following is NOT acceptable:
+ /// TraceBegin(Foo)
+ /// TraceBegin(Bar)
+ /// TraceEnd(Foo)
+ /// TraceEnd(Bar)
+ virtual void TraceEnd(Scope scope) = 0;
+
+ /// Trace a zero-sized event
+ virtual void TraceInstant(Instant instant) = 0;
+
+ virtual void LogMessageSend(MessageSendInfo &) { TraceInstant(Instant::Log_MessageSend); }
+ virtual void LogMessageReceived(MessageReceiveInfo &) { TraceInstant(Instant::Log_MessageReceived); }
+
+ virtual void LogNodeLookup(NodeLookupInfo &) { TraceInstant(Instant::Log_NodeLookup); }
+ virtual void LogNodeDiscovered(NodeDiscoveredInfo &) { TraceInstant(Instant::Log_NodeDiscovered); }
+ virtual void LogNodeDiscoveryFailed(NodeDiscoveryFailedInfo &) { TraceInstant(Instant::Log_NodeDiscoveryFailed); }
+};
+
+} // namespace Tracing
+} // namespace chip
diff --git a/src/tracing/log_declares.h b/src/tracing/log_declares.h
new file mode 100644
index 00000000000000..8cc4e11a7e2cb3
--- /dev/null
+++ b/src/tracing/log_declares.h
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2023 Project CHIP Authors
+ * All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#pragma once
+
+namespace chip {
+namespace Tracing {
+
+// These structures are forward-declared so that tracing itself has no direct dependencies
+// on actual types. This allows tracing to be used anywhere lib/support could be used.
+
+struct MessageSendInfo;
+struct MessageReceiveInfo;
+struct NodeLookupInfo;
+struct NodeDiscoveredInfo;
+struct NodeDiscoveryFailedInfo;
+
+} // namespace Tracing
+} // namespace chip
diff --git a/src/tracing/macros.h b/src/tracing/macros.h
new file mode 100644
index 00000000000000..3b024e147bd2f4
--- /dev/null
+++ b/src/tracing/macros.h
@@ -0,0 +1,84 @@
+/*
+ *
+ * Copyright (c) 2023 Project CHIP Authors
+ * All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#pragma once
+
+#ifndef MATTER_TRACING_ENABLED
+
+#define _MATTER_TRACE_DISABLE \
+ do \
+ { \
+ } while (false)
+
+#define MATTER_TRACE_BEGIN(...) _MATTER_TRACE_DISABLE(__VA_ARGS__)
+#define MATTER_TRACE_END(...) _MATTER_TRACE_DISABLE(__VA_ARGS__)
+
+#define MATTER_TRACE_INSTANT(...) _MATTER_TRACE_DISABLE(__VA_ARGS__)
+
+#define MATTER_LOG_MESSAGE_SEND(...) _MATTER_TRACE_DISABLE(__VA_ARGS__)
+#define MATTER_LOG_MESSAGE_RECEIVED(...) _MATTER_TRACE_DISABLE(__VA_ARGS__)
+
+#define MATTER_LOG_NODE_LOOKUP(...) _MATTER_TRACE_DISABLE(__VA_ARGS__)
+#define MATTER_LOG_NODE_DISCOVERED(...) _MATTER_TRACE_DISABLE(__VA_ARGS__)
+#define MATTER_LOG_NODE_DISCOVERY_FAILED(...) _MATTER_TRACE_DISABLE(__VA_ARGS__)
+
+#else // MATTER_TRACING_ENABLED
+
+#include
+#include
+#include
+
+#define MATTER_TRACE_BEGIN(scope) ::chip::Tracing::Internal::Begin(scope)
+#define MATTER_TRACE_END(scope) ::chip::Tracing::Internal::End(scope)
+#define MATTER_TRACE_INSTANT(scope) ::chip::Tracing::Internal::Instant(scope)
+
+#define MATTER_LOG_MESSAGE_SEND(...) \
+ do \
+ { \
+ ::chip::Tracing::MessageSendInfo _trace_data(__VA_ARGS__); \
+ ::chip::Tracing::Internal::LogMessageSend(_trace_data); \
+ } while (false)
+
+#define MATTER_LOG_MESSAGE_RECEIVED(...) \
+ do \
+ { \
+ ::chip::Tracing::MessageReceivedInfo _trace_data(__VA_ARGS__); \
+ ::chip::Tracing::Internal::LogMessageReceived(_trace_data); \
+ } while (false)
+
+#define MATTER_LOG_NODE_LOOKUP(...) \
+ do \
+ { \
+ ::chip::Tracing::NodeLookupInfo _trace_data(__VA_ARGS__); \
+ ::chip::Tracing::Internal::LogNodeLookup(_trace_data); \
+ } while (false)
+
+#define MATTER_LOG_NODE_DISCOVERED(...) \
+ do \
+ { \
+ ::chip::Tracing::NodeDiscoveredInfo _trace_data(__VA_ARGS__); \
+ ::chip::Tracing::Internal::LogNodeDiscovered(_trace_data); \
+ } while (false)
+
+#define MATTER_LOG_NODE_DISCOVERY_FAILED(...) \
+ do \
+ { \
+ ::chip::Tracing::NodeDiscoveryFailedInfo _trace_data(__VA_ARGS__); \
+ ::chip::Tracing::Internal::LogNodeDiscoveryFailed(_trace_data); \
+ } while (false)
+
+#endif
diff --git a/src/tracing/registry.cpp b/src/tracing/registry.cpp
new file mode 100644
index 00000000000000..f3497a27f2643f
--- /dev/null
+++ b/src/tracing/registry.cpp
@@ -0,0 +1,114 @@
+/*
+ * Copyright (c) 2023 Project CHIP Authors
+ * All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#include
+
+#include
+#include
+
+namespace chip {
+namespace Tracing {
+namespace {
+
+IntrusiveList gTracingBackends;
+
+} // namespace
+
+void Register(Backend & backend)
+{
+ assertChipStackLockedByCurrentThread();
+ gTracingBackends.PushBack(&backend);
+}
+
+void Unregister(Backend & backend)
+{
+ assertChipStackLockedByCurrentThread();
+ gTracingBackends.Remove(&backend);
+}
+
+#ifdef MATTER_TRACING_ENABLED
+
+namespace Internal {
+
+void Begin(::chip::Tracing::Scope scope)
+{
+ for (auto & backend : gTracingBackends)
+ {
+ backend.TraceBegin(scope);
+ }
+}
+
+void End(::chip::Tracing::Scope scope)
+{
+ for (auto & backend : gTracingBackends)
+ {
+ backend.TraceEnd(scope);
+ }
+}
+void Instant(::chip::Tracing::Instant instant)
+{
+ for (auto & backend : gTracingBackends)
+ {
+ backend.TraceInstant(instant);
+ }
+}
+
+void LogMessageSend(::chip::Tracing::MessageSendInfo & info)
+{
+ for (auto & backend : gTracingBackends)
+ {
+ backend.LogMessageSend(info);
+ }
+}
+
+void LogMessageReceived(::chip::Tracing::MessageReceiveInfo & info)
+{
+ for (auto & backend : gTracingBackends)
+ {
+ backend.LogMessageReceived(info);
+ }
+}
+
+void LogNodeLookup(::chip::Tracing::NodeLookupInfo & info)
+{
+ for (auto & backend : gTracingBackends)
+ {
+ backend.LogNodeLookup(info);
+ }
+}
+
+void LogNodeDiscovered(::chip::Tracing::NodeDiscoveredInfo & info)
+{
+ for (auto & backend : gTracingBackends)
+ {
+ backend.LogNodeDiscovered(info);
+ }
+}
+
+void LogNodeDiscoveryFailed(::chip::Tracing::NodeDiscoveryFailedInfo & info)
+{
+ for (auto & backend : gTracingBackends)
+ {
+ backend.LogNodeDiscoveryFailed(info);
+ }
+}
+
+} // namespace Internal
+
+#endif // MATTTER_TRACING_ENABLED
+
+} // namespace Tracing
+} // namespace chip
diff --git a/src/tracing/registry.h b/src/tracing/registry.h
new file mode 100644
index 00000000000000..b1596144dbc00f
--- /dev/null
+++ b/src/tracing/registry.h
@@ -0,0 +1,77 @@
+/*
+ * Copyright (c) 2023 Project CHIP Authors
+ * All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#pragma once
+
+#include
+
+namespace chip {
+namespace Tracing {
+
+/// Registers a tracing backend to receive trace and logging data
+/// Until it is unregistered
+///
+/// All tracing backends MUST be unregistered before the application
+/// exits. Consider using [ScopedRegistration]
+///
+/// MUST be called with the Matter thread lock held (from the Matter main loop or
+/// at application main)
+void Register(Backend & backend);
+
+/// Unregister a backend from receiving tracing/logging data
+///
+/// MUST be called with the Matter thread lock held (from the Matter main loop or
+/// at application main)
+void Unregister(Backend & backend);
+
+/// Convenience class to apply Register/Unregister automatically
+/// for a backend.
+///
+/// This ensures the "MUST unregister before application exit"
+/// is always met.
+///
+/// Prefer to use this class instead of direct register/unregister.
+class ScopedRegistration
+{
+public:
+ ScopedRegistration(Backend & backend) : mBackend(&backend) { Register(*mBackend); }
+ ~ScopedRegistration() { Unregister(*mBackend); }
+
+private:
+ Backend * mBackend;
+};
+
+#ifdef MATTER_TRACING_ENABLED
+
+// Internal calls, that will delegate to appropriate backends as needed
+namespace Internal {
+
+void Begin(::chip::Tracing::Scope scope);
+void End(::chip::Tracing::Scope scope);
+void Instant(::chip::Tracing::Instant instant);
+
+void LogMessageSend(::chip::Tracing::MessageSendInfo & info);
+void LogMessageReceived(::chip::Tracing::MessageReceiveInfo & info);
+void LogNodeLookup(::chip::Tracing::NodeLookupInfo & info);
+void LogNodeDiscovered(::chip::Tracing::NodeDiscoveredInfo & info);
+void LogNodeDiscoveryFailed(::chip::Tracing::NodeDiscoveryFailedInfo & info);
+
+} // namespace Internal
+
+#endif // MATTTER_TRACING_ENABLED
+
+} // namespace Tracing
+} // namespace chip
diff --git a/src/tracing/scope.h b/src/tracing/scope.h
new file mode 100644
index 00000000000000..a636d2511d0dc8
--- /dev/null
+++ b/src/tracing/scope.h
@@ -0,0 +1,62 @@
+/*
+ *
+ * Copyright (c) 2020-2021 Project CHIP Authors
+ * All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#pragma once
+
+#include
+#include
+
+namespace chip {
+namespace Tracing {
+
+/// Convenience class for RAII for scoped tracing
+///
+/// Usage:
+/// {
+/// ::chip::Tracing::Scoped scope(::chip::Tracing::Scope::CASESession_SendSigma1);
+/// // TRACE_BEGIN called here
+///
+/// // ... add code here
+///
+/// } // TRACE_END called here
+class Scoped
+{
+public:
+ inline Scoped(Scope scope) : mScope(scope) { MATTER_TRACE_BEGIN(scope); }
+ inline ~Scoped() { MATTER_TRACE_END(mScope); }
+
+private:
+ Scope mScope;
+};
+
+} // namespace Tracing
+} // namespace chip
+
+#define _CONCAT_IMPL(a, b) a##b
+#define _MACRO_CONCAT(a, b) _CONCAT_IMPL(a, b)
+
+/// convenience macro to create a tracing scope
+///
+/// Usage:
+/// {
+/// MATTER_TRACE_SCOPE(::chip::Tracing::Scope::CASESession_SendSigma1);
+/// // TRACE_BEGIN called here
+///
+/// // ... add code here
+///
+/// } // TRACE_END called here
+#define MATTER_TRACE_SCOPE(scope) ::chip::Tracing::Scoped _MACRO_CONCAT(_trace_scope, __COUNTER__)(scope)
diff --git a/src/tracing/scopes.h b/src/tracing/scopes.h
new file mode 100644
index 00000000000000..f184d7fc521b27
--- /dev/null
+++ b/src/tracing/scopes.h
@@ -0,0 +1,120 @@
+/*
+ * Copyright (c) 2023 Project CHIP Authors
+ * All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#pragma once
+
+namespace chip {
+namespace Tracing {
+
+/// Trace scopes defined as an enumeration, since various tracing back-ends
+/// may need to use constant strings for tracing.
+///
+/// As a result, tracing scopes in CHIP are from a known list.
+enum class Scope
+{
+ UndefinedDoNotUse = 0,
+
+ CASESession_EstablishSession = 1,
+ CASESession_HandleSigma1 = 2,
+ CASESession_HandleSigma1_and_SendSigma2 = 3,
+ CASESession_HandleSigma2 = 4,
+ CASESession_HandleSigma2_and_SendSigma3 = 5,
+ CASESession_HandleSigma2Resume = 6,
+ CASESession_HandleSigma3 = 7,
+ CASESession_SendSigma1 = 8,
+ CASESession_SendSigma2 = 9,
+ CASESession_SendSigma2Resume = 10,
+ CASESession_SendSigma3 = 11,
+ DeviceCommissioner_Commission = 12,
+ DeviceCommissioner_CommissioningStageComplete = 13,
+ DeviceCommissioner_continueCommissioningDevice = 14,
+ DeviceCommissioner_EstablishPASEConnection = 15,
+ DeviceCommissioner_FindCommissioneeDevice = 16,
+ DeviceCommissioner_IssueNOCChain = 17,
+ DeviceCommissioner_OnAddNOCFailureResponse = 18,
+ DeviceCommissioner_OnAttestationFailureResponse = 19,
+ DeviceCommissioner_OnAttestationResponse = 20,
+ DeviceCommissioner_OnCertificateChainFailureResponse = 21,
+ DeviceCommissioner_OnCertificateChainResponse = 22,
+ DeviceCommissioner_OnCSRFailureResponse = 23,
+ DeviceCommissioner_OnDeviceAttestationInformationVerification = 24,
+ DeviceCommissioner_OnDeviceNOCChainGeneration = 25,
+ DeviceCommissioner_OnOperationalCertificateAddResponse = 26,
+ DeviceCommissioner_OnOperationalCertificateSigningRequest = 27,
+ DeviceCommissioner_OnOperationalCredentialsProvisioningCompletion = 28,
+ DeviceCommissioner_OnRootCertFailureResponse = 29,
+ DeviceCommissioner_OnRootCertSuccessResponse = 30,
+ DeviceCommissioner_PairDevice = 31,
+ DeviceCommissioner_ProcessOpCSR = 32,
+ DeviceCommissioner_SendAttestationRequestCommand = 33,
+ DeviceCommissioner_SendCertificateChainRequestCommand = 34,
+ DeviceCommissioner_SendOperationalCertificate = 35,
+ DeviceCommissioner_SendOperationalCertificateSigningRequestCommand = 36,
+ DeviceCommissioner_SendTrustedRootCertificate = 37,
+ DeviceCommissioner_UnpairDevice = 38,
+ DeviceCommissioner_ValidateAttestationInfo = 39,
+ DeviceCommissioner_ValidateCSR = 40,
+ GeneralCommissioning_ArmFailSafe = 41,
+ GeneralCommissioning_CommissioningComplete = 42,
+ GeneralCommissioning_SetRegulatoryConfig = 43,
+ NetworkCommissioning_HandleAddOrUpdateThreadNetwork = 44,
+ NetworkCommissioning_HandleAddOrUpdateWiFiNetwork = 45,
+ NetworkCommissioning_HandleConnectNetwork = 46,
+ NetworkCommissioning_HandleRemoveNetwork = 47,
+ NetworkCommissioning_HandleReorderNetwork = 48,
+ NetworkCommissioning_HandleScanNetwork = 49,
+ OperationalCredentials_AddNOC = 50,
+ OperationalCredentials_AddTrustedRootCertificate = 51,
+ OperationalCredentials_AttestationRequest = 52,
+ OperationalCredentials_CertificateChainRequest = 53,
+ OperationalCredentials_CSRRequest = 54,
+ OperationalCredentials_RemoveFabric = 55,
+ OperationalCredentials_UpdateFabricLabel = 56,
+ OperationalCredentials_UpdateNOC = 57,
+ PASESession_GeneratePASEVerifier = 58,
+ PASESession_HandleMsg1_and_SendMsg2 = 59,
+ PASESession_HandleMsg2_and_SendMsg3 = 60,
+ PASESession_HandleMsg3 = 61,
+ PASESession_HandlePBKDFParamRequest = 62,
+ PASESession_HandlePBKDFParamResponse = 63,
+ PASESession_Pair = 64,
+ PASESession_SendMsg1 = 65,
+ PASESession_SendPBKDFParamRequest = 66,
+ PASESession_SendPBKDFParamResponse = 67,
+ PASESession_SetupSpake2p = 68,
+};
+
+/// An event that happened at an instant (like a zero sized scope)
+enum class Instant
+{
+ UndefinedDoNotUse = 0,
+
+ // General instant notifications
+ Resolve_TxtNotApplicable = 1,
+ Resolve_Ipv4NotApplicable = 2,
+ Resolve_Ipv6NotApplicable = 3,
+
+ // Used if and only if default "Log*" requests
+ // are not implemented in the backend.
+ Log_MessageSend = 1000,
+ Log_MessageReceived = 1001,
+ Log_NodeLookup = 1002,
+ Log_NodeDiscovered = 1003,
+ Log_NodeDiscoveryFailed = 1004,
+};
+
+} // namespace Tracing
+} // namespace chip
diff --git a/src/tracing/tests/BUILD.gn b/src/tracing/tests/BUILD.gn
new file mode 100644
index 00000000000000..674f33ec5b3c78
--- /dev/null
+++ b/src/tracing/tests/BUILD.gn
@@ -0,0 +1,33 @@
+# Copyright (c) 2023 Project CHIP Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import("//build_overrides/build.gni")
+import("//build_overrides/chip.gni")
+import("//build_overrides/nlunit_test.gni")
+
+import("${chip_root}/build/chip/chip_test_suite.gni")
+
+chip_test_suite("tests") {
+ output_name = "libTracingTests"
+
+ test_sources = [ "TestTracing.cpp" ]
+ sources = []
+
+ public_deps = [
+ "${chip_root}/src/lib/support:testing",
+ "${chip_root}/src/platform",
+ "${chip_root}/src/tracing",
+ "${nlunit_test_root}:nlunit-test",
+ ]
+}
diff --git a/src/tracing/tests/TestTracing.cpp b/src/tracing/tests/TestTracing.cpp
new file mode 100644
index 00000000000000..2026f376daa3ab
--- /dev/null
+++ b/src/tracing/tests/TestTracing.cpp
@@ -0,0 +1,181 @@
+/*
+ * Copyright (c) 2023 Project CHIP Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#include
+#include
+#include
+#include
+
+#include
+
+#include
+#include
+
+using namespace chip;
+using namespace chip::Tracing;
+
+namespace {
+
+// This keeps a log of all received trace items
+class LoggingTraceBackend : public Backend
+{
+public:
+ enum class TraceEventType
+ {
+ BEGIN,
+ END
+ };
+
+ struct ReceivedTraceEvent
+ {
+ TraceEventType type;
+ Scope scope;
+
+ bool operator==(const ReceivedTraceEvent & other) const { return (type == other.type) && (scope == other.scope); }
+ };
+
+ LoggingTraceBackend() {}
+ const std::vector & traces() const { return mTraces; }
+
+ // Implementation
+ void TraceBegin(Scope scope) override { mTraces.push_back(ReceivedTraceEvent{ TraceEventType::BEGIN, scope }); }
+
+ void TraceEnd(Scope scope) override { mTraces.push_back(ReceivedTraceEvent{ TraceEventType::END, scope }); }
+
+ void TraceInstant(Instant instant) override
+ {
+ // NOT SUPPORTED HERE
+ }
+
+private:
+ std::vector mTraces;
+};
+
+void TestBasicTracing(nlTestSuite * inSuite, void * inContext)
+{
+ LoggingTraceBackend backend;
+
+ {
+ ScopedRegistration scope(backend);
+
+ MATTER_TRACE_SCOPE(Scope::CASESession_SendSigma1);
+ {
+ MATTER_TRACE_SCOPE(Scope::CASESession_SendSigma2);
+
+ // direct scope begin/end (not usual, but should work)
+ MATTER_TRACE_BEGIN(Scope::OperationalCredentials_AddNOC);
+ MATTER_TRACE_BEGIN(Scope::OperationalCredentials_UpdateNOC);
+ MATTER_TRACE_END(Scope::OperationalCredentials_UpdateNOC);
+ MATTER_TRACE_END(Scope::OperationalCredentials_AddNOC);
+ }
+ {
+ MATTER_TRACE_SCOPE(Scope::CASESession_SendSigma3);
+ }
+ }
+
+ std::vector expected = {
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::CASESession_SendSigma1 },
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::CASESession_SendSigma2 },
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::OperationalCredentials_AddNOC },
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::OperationalCredentials_UpdateNOC },
+ { LoggingTraceBackend::TraceEventType::END, Scope::OperationalCredentials_UpdateNOC },
+ { LoggingTraceBackend::TraceEventType::END, Scope::OperationalCredentials_AddNOC },
+ { LoggingTraceBackend::TraceEventType::END, Scope::CASESession_SendSigma2 },
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::CASESession_SendSigma3 },
+ { LoggingTraceBackend::TraceEventType::END, Scope::CASESession_SendSigma3 },
+ { LoggingTraceBackend::TraceEventType::END, Scope::CASESession_SendSigma1 },
+ };
+
+ NL_TEST_ASSERT(inSuite, backend.traces().size() == expected.size());
+ NL_TEST_ASSERT(inSuite, std::equal(backend.traces().begin(), backend.traces().end(), expected.begin(), expected.end()));
+}
+
+void TestMultipleBackends(nlTestSuite * inSuite, void * inContext)
+{
+ LoggingTraceBackend b1;
+ LoggingTraceBackend b2;
+ LoggingTraceBackend b3;
+
+ {
+ ScopedRegistration register1(b1);
+ MATTER_TRACE_SCOPE(Scope::CASESession_SendSigma1);
+
+ {
+ ScopedRegistration register2(b2);
+ MATTER_TRACE_SCOPE(Scope::CASESession_SendSigma2);
+
+ {
+ ScopedRegistration register3(b3);
+ MATTER_TRACE_SCOPE(Scope::CASESession_SendSigma3);
+ }
+ {
+ MATTER_TRACE_SCOPE(Scope::OperationalCredentials_AddNOC);
+ }
+ }
+ }
+
+ std::vector expected1 = {
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::CASESession_SendSigma1 },
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::CASESession_SendSigma2 },
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::CASESession_SendSigma3 },
+ { LoggingTraceBackend::TraceEventType::END, Scope::CASESession_SendSigma3 },
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::OperationalCredentials_AddNOC },
+ { LoggingTraceBackend::TraceEventType::END, Scope::OperationalCredentials_AddNOC },
+ { LoggingTraceBackend::TraceEventType::END, Scope::CASESession_SendSigma2 },
+ { LoggingTraceBackend::TraceEventType::END, Scope::CASESession_SendSigma1 },
+ };
+
+ NL_TEST_ASSERT(inSuite, b1.traces().size() == expected1.size());
+ NL_TEST_ASSERT(inSuite, std::equal(b1.traces().begin(), b1.traces().end(), expected1.begin(), expected1.end()));
+
+ std::vector expected2 = {
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::CASESession_SendSigma2 },
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::CASESession_SendSigma3 },
+ { LoggingTraceBackend::TraceEventType::END, Scope::CASESession_SendSigma3 },
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::OperationalCredentials_AddNOC },
+ { LoggingTraceBackend::TraceEventType::END, Scope::OperationalCredentials_AddNOC },
+ { LoggingTraceBackend::TraceEventType::END, Scope::CASESession_SendSigma2 },
+ };
+
+ NL_TEST_ASSERT(inSuite, b2.traces().size() == expected2.size());
+ NL_TEST_ASSERT(inSuite, std::equal(b2.traces().begin(), b2.traces().end(), expected2.begin(), expected2.end()));
+
+ std::vector expected3 = {
+ { LoggingTraceBackend::TraceEventType::BEGIN, Scope::CASESession_SendSigma3 },
+ { LoggingTraceBackend::TraceEventType::END, Scope::CASESession_SendSigma3 },
+ };
+
+ NL_TEST_ASSERT(inSuite, b3.traces().size() == expected3.size());
+ NL_TEST_ASSERT(inSuite, std::equal(b3.traces().begin(), b3.traces().end(), expected3.begin(), expected3.end()));
+}
+
+const nlTest sTests[] = {
+ NL_TEST_DEF("BasicTracing", TestBasicTracing), //
+ NL_TEST_DEF("BasicMultipleBackends", TestMultipleBackends), //
+ NL_TEST_SENTINEL() //
+};
+
+} // namespace
+
+int TestTracing()
+{
+ nlTestSuite theSuite = { "Tracing tests", &sTests[0], nullptr, nullptr };
+
+ // Run test suit againt one context.
+ nlTestRunner(&theSuite, nullptr);
+ return nlTestRunnerStats(&theSuite);
+}
+
+CHIP_REGISTER_TEST_SUITE(TestTracing)
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 efd5559e973537..5f24b15d1653dc 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
@@ -4419,9 +4419,9 @@ EmberAfStatus Set(chip::EndpointId endpoint, bool value)
namespace LastNetworkingStatus {
EmberAfStatus Get(chip::EndpointId endpoint,
- DataModel::Nullable & value)
+ DataModel::Nullable & value)
{
- using Traits = NumericAttributeTraits;
+ using Traits = NumericAttributeTraits;
Traits::StorageType temp;
uint8_t * readable = Traits::ToAttributeStoreRepresentation(temp);
EmberAfStatus status = emberAfReadAttribute(endpoint, Clusters::NetworkCommissioning::Id, Id, readable, sizeof(temp));
@@ -4436,9 +4436,9 @@ EmberAfStatus Get(chip::EndpointId endpoint,
}
return status;
}
-EmberAfStatus Set(chip::EndpointId endpoint, chip::app::Clusters::NetworkCommissioning::NetworkCommissioningStatus value)
+EmberAfStatus Set(chip::EndpointId endpoint, chip::app::Clusters::NetworkCommissioning::NetworkCommissioningStatusEnum value)
{
- using Traits = NumericAttributeTraits;
+ using Traits = NumericAttributeTraits;
if (!Traits::CanRepresentValue(/* isNullable = */ true, value))
{
return EMBER_ZCL_STATUS_CONSTRAINT_ERROR;
@@ -4451,7 +4451,7 @@ EmberAfStatus Set(chip::EndpointId endpoint, chip::app::Clusters::NetworkCommiss
EmberAfStatus SetNull(chip::EndpointId endpoint)
{
- using Traits = NumericAttributeTraits;
+ using Traits = NumericAttributeTraits;
Traits::StorageType value;
Traits::SetNull(value);
uint8_t * writable = Traits::ToAttributeStoreRepresentation(value);
@@ -4460,7 +4460,7 @@ EmberAfStatus SetNull(chip::EndpointId endpoint)
EmberAfStatus
Set(chip::EndpointId endpoint,
- const chip::app::DataModel::Nullable & value)
+ const chip::app::DataModel::Nullable & value)
{
if (value.IsNull())
{
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 8df76d7b406bc8..d0a536d149e604 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
@@ -834,13 +834,13 @@ EmberAfStatus Set(chip::EndpointId endpoint, bool value);
namespace LastNetworkingStatus {
EmberAfStatus Get(chip::EndpointId endpoint,
- DataModel::Nullable &
- value); // NetworkCommissioningStatus
-EmberAfStatus Set(chip::EndpointId endpoint, chip::app::Clusters::NetworkCommissioning::NetworkCommissioningStatus value);
+ DataModel::Nullable &
+ value); // NetworkCommissioningStatusEnum
+EmberAfStatus Set(chip::EndpointId endpoint, chip::app::Clusters::NetworkCommissioning::NetworkCommissioningStatusEnum value);
EmberAfStatus SetNull(chip::EndpointId endpoint);
EmberAfStatus
Set(chip::EndpointId endpoint,
- const chip::app::DataModel::Nullable & value);
+ const chip::app::DataModel::Nullable & value);
} // namespace LastNetworkingStatus
namespace LastNetworkID {
diff --git a/zzz_generated/app-common/app-common/zap-generated/cluster-enums-check.h b/zzz_generated/app-common/app-common/zap-generated/cluster-enums-check.h
index 500281c430ee03..a89a22f776c552 100644
--- a/zzz_generated/app-common/app-common/zap-generated/cluster-enums-check.h
+++ b/zzz_generated/app-common/app-common/zap-generated/cluster-enums-check.h
@@ -721,9 +721,9 @@ static auto __attribute__((unused)) EnsureKnownEnumValue(GeneralCommissioning::R
}
}
-static auto __attribute__((unused)) EnsureKnownEnumValue(NetworkCommissioning::NetworkCommissioningStatus val)
+static auto __attribute__((unused)) EnsureKnownEnumValue(NetworkCommissioning::NetworkCommissioningStatusEnum val)
{
- using EnumType = NetworkCommissioning::NetworkCommissioningStatus;
+ using EnumType = NetworkCommissioning::NetworkCommissioningStatusEnum;
switch (val)
{
case EnumType::kSuccess:
@@ -744,9 +744,9 @@ static auto __attribute__((unused)) EnsureKnownEnumValue(NetworkCommissioning::N
return static_cast(13);
}
}
-static auto __attribute__((unused)) EnsureKnownEnumValue(NetworkCommissioning::WiFiBand val)
+static auto __attribute__((unused)) EnsureKnownEnumValue(NetworkCommissioning::WiFiBandEnum val)
{
- using EnumType = NetworkCommissioning::WiFiBand;
+ using EnumType = NetworkCommissioning::WiFiBandEnum;
switch (val)
{
case EnumType::k2g4:
diff --git a/zzz_generated/app-common/app-common/zap-generated/cluster-enums.h b/zzz_generated/app-common/app-common/zap-generated/cluster-enums.h
index 81be49547595aa..34679c83ac976a 100644
--- a/zzz_generated/app-common/app-common/zap-generated/cluster-enums.h
+++ b/zzz_generated/app-common/app-common/zap-generated/cluster-enums.h
@@ -853,8 +853,8 @@ enum class RegulatoryLocationTypeEnum : uint8_t
namespace NetworkCommissioning {
-// Enum for NetworkCommissioningStatus
-enum class NetworkCommissioningStatus : uint8_t
+// Enum for NetworkCommissioningStatusEnum
+enum class NetworkCommissioningStatusEnum : uint8_t
{
kSuccess = 0x00,
kOutOfRange = 0x01,
@@ -876,8 +876,8 @@ enum class NetworkCommissioningStatus : uint8_t
kUnknownEnumValue = 13,
};
-// Enum for WiFiBand
-enum class WiFiBand : uint8_t
+// Enum for WiFiBandEnum
+enum class WiFiBandEnum : uint8_t
{
k2g4 = 0x00,
k3g65 = 0x01,
@@ -900,8 +900,8 @@ enum class Feature : uint32_t
kEthernetNetworkInterface = 0x4,
};
-// Bitmap for WiFiSecurity
-enum class WiFiSecurity : uint8_t
+// Bitmap for WiFiSecurityBitmap
+enum class WiFiSecurityBitmap : uint8_t
{
kUnencrypted = 0x1,
kWep = 0x2,
diff --git a/zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp b/zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp
index 67f09f88a33d55..0378afc94fc072 100644
--- a/zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp
+++ b/zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp
@@ -5828,7 +5828,7 @@ namespace Events {} // namespace Events
} // namespace GeneralCommissioning
namespace NetworkCommissioning {
namespace Structs {
-namespace NetworkInfo {
+namespace NetworkInfoStruct {
CHIP_ERROR Type::Encode(TLV::TLVWriter & writer, TLV::Tag tag) const
{
TLV::TLVType outer;
@@ -5871,8 +5871,8 @@ CHIP_ERROR DecodableType::Decode(TLV::TLVReader & reader)
return CHIP_NO_ERROR;
}
-} // namespace NetworkInfo
-namespace ThreadInterfaceScanResult {
+} // namespace NetworkInfoStruct
+namespace ThreadInterfaceScanResultStruct {
CHIP_ERROR Type::Encode(TLV::TLVWriter & writer, TLV::Tag tag) const
{
TLV::TLVType outer;
@@ -5939,8 +5939,8 @@ CHIP_ERROR DecodableType::Decode(TLV::TLVReader & reader)
return CHIP_NO_ERROR;
}
-} // namespace ThreadInterfaceScanResult
-namespace WiFiInterfaceScanResult {
+} // namespace ThreadInterfaceScanResultStruct
+namespace WiFiInterfaceScanResultStruct {
CHIP_ERROR Type::Encode(TLV::TLVWriter & writer, TLV::Tag tag) const
{
TLV::TLVType outer;
@@ -5999,7 +5999,7 @@ CHIP_ERROR DecodableType::Decode(TLV::TLVReader & reader)
return CHIP_NO_ERROR;
}
-} // namespace WiFiInterfaceScanResult
+} // namespace WiFiInterfaceScanResultStruct
} // namespace Structs
namespace Commands {
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 3511e17584a67c..dd413ae7bb3f1d 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
@@ -7119,7 +7119,7 @@ struct TypeInfo
} // namespace GeneralCommissioning
namespace NetworkCommissioning {
namespace Structs {
-namespace NetworkInfo {
+namespace NetworkInfoStruct {
enum class Fields : uint8_t
{
kNetworkID = 0,
@@ -7141,8 +7141,8 @@ struct Type
using DecodableType = Type;
-} // namespace NetworkInfo
-namespace ThreadInterfaceScanResult {
+} // namespace NetworkInfoStruct
+namespace ThreadInterfaceScanResultStruct {
enum class Fields : uint8_t
{
kPanId = 0,
@@ -7176,8 +7176,8 @@ struct Type
using DecodableType = Type;
-} // namespace ThreadInterfaceScanResult
-namespace WiFiInterfaceScanResult {
+} // namespace ThreadInterfaceScanResultStruct
+namespace WiFiInterfaceScanResultStruct {
enum class Fields : uint8_t
{
kSecurity = 0,
@@ -7191,12 +7191,12 @@ enum class Fields : uint8_t
struct Type
{
public:
- chip::BitMask security = static_cast>(0);
+ chip::BitMask security = static_cast>(0);
chip::ByteSpan ssid;
chip::ByteSpan bssid;
- uint16_t channel = static_cast(0);
- WiFiBand wiFiBand = static_cast(0);
- int8_t rssi = static_cast(0);
+ uint16_t channel = static_cast(0);
+ WiFiBandEnum wiFiBand = static_cast(0);
+ int8_t rssi = static_cast(0);
CHIP_ERROR Decode(TLV::TLVReader & reader);
@@ -7207,7 +7207,7 @@ struct Type
using DecodableType = Type;
-} // namespace WiFiInterfaceScanResult
+} // namespace WiFiInterfaceScanResultStruct
} // namespace Structs
namespace Commands {
@@ -7312,10 +7312,10 @@ struct Type
static constexpr CommandId GetCommandId() { return Commands::ScanNetworksResponse::Id; }
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
- NetworkCommissioningStatus networkingStatus = static_cast(0);
+ NetworkCommissioningStatusEnum networkingStatus = static_cast(0);
Optional debugText;
- Optional> wiFiScanResults;
- Optional> threadScanResults;
+ Optional> wiFiScanResults;
+ Optional> threadScanResults;
CHIP_ERROR Encode(TLV::TLVWriter & writer, TLV::Tag tag) const;
@@ -7330,10 +7330,10 @@ struct DecodableType
static constexpr CommandId GetCommandId() { return Commands::ScanNetworksResponse::Id; }
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
- NetworkCommissioningStatus networkingStatus = static_cast(0);
+ NetworkCommissioningStatusEnum networkingStatus = static_cast(0);
Optional debugText;
- Optional> wiFiScanResults;
- Optional> threadScanResults;
+ Optional> wiFiScanResults;
+ Optional> threadScanResults;
CHIP_ERROR Decode(TLV::TLVReader & reader);
};
}; // namespace ScanNetworksResponse
@@ -7460,7 +7460,7 @@ struct Type
static constexpr CommandId GetCommandId() { return Commands::NetworkConfigResponse::Id; }
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
- NetworkCommissioningStatus networkingStatus = static_cast(0);
+ NetworkCommissioningStatusEnum networkingStatus = static_cast(0);
Optional debugText;
Optional networkIndex;
@@ -7477,7 +7477,7 @@ struct DecodableType
static constexpr CommandId GetCommandId() { return Commands::NetworkConfigResponse::Id; }
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
- NetworkCommissioningStatus networkingStatus = static_cast(0);
+ NetworkCommissioningStatusEnum networkingStatus = static_cast(0);
Optional debugText;
Optional networkIndex;
CHIP_ERROR Decode(TLV::TLVReader & reader);
@@ -7533,7 +7533,7 @@ struct Type
static constexpr CommandId GetCommandId() { return Commands::ConnectNetworkResponse::Id; }
static constexpr ClusterId GetClusterId() { return Clusters::NetworkCommissioning::Id; }
- NetworkCommissioningStatus networkingStatus = static_cast(0);
+ NetworkCommissioningStatusEnum networkingStatus = static_cast(0);
Optional debugText;
DataModel::Nullable