components/esp_matter: add CustomNetworkConfig support

Skip the Network Commissioning cluster on the root node when
CONFIG_CUSTOM_NETWORK_CONFIG is enabled, per Matter spec condition
(!CustomNetworkConfig). This allows devices with out-of-band network
configuration (rich UI, manufacturer-specific means) to omit the
cluster as the spec permits.

- Add CONFIG_CUSTOM_NETWORK_CONFIG Kconfig option
- Conditionally skip network_commissioning in root_node config/add
- Exclude integration.cpp from build when custom config enabled
- Add weak stubs for Plugin callbacks as fallback
- Also guarded secondary network device type and all the
  attributes and commands that are part of network commissioning
  cluster
This commit is contained in:
Shubham Patil
2026-03-04 13:09:45 +05:30
parent c6f767254f
commit c466b7ce81
11 changed files with 53 additions and 2 deletions
@@ -133,6 +133,7 @@ attribute_t *create_tc_update_deadline(cluster_t *cluster, nullable<uint32_t> va
} /* attribute */
} /* general_commissioning */
#ifndef CONFIG_CUSTOM_NETWORK_CONFIG
namespace network_commissioning {
namespace attribute {
attribute_t *create_max_networks(cluster_t *cluster, uint8_t value);
@@ -148,6 +149,7 @@ attribute_t *create_supported_thread_features(cluster_t *cluster, uint16_t value
attribute_t *create_thread_version(cluster_t *cluster, uint16_t value);
} /* attribute */
} /* network_commissioning */
#endif // CONFIG_CUSTOM_NETWORK_CONFIG
namespace general_diagnostics {
namespace attribute {