diff --git a/.github/workflows/darwin-tests.yaml b/.github/workflows/darwin-tests.yaml
index 1ddc9e9fbc42a6..2d46de23cfa523 100644
--- a/.github/workflows/darwin-tests.yaml
+++ b/.github/workflows/darwin-tests.yaml
@@ -73,6 +73,10 @@ jobs:
platform: darwin
bootstrap-log-name: bootstrap-logs-darwin-${{ matrix.build_variant }}
+ - name: Build iOS Darwin Framework Tool Build Debug
+ working-directory: src/darwin/Framework
+ run: xcodebuild -target "darwin-framework-tool" -sdk iphoneos -configuration Debug AD_HOC_CODE_SIGNING_ALLOWED=YES
+
- name: Run macOS Darwin Framework Tool Build Debug
working-directory: src/darwin/Framework
run: xcodebuild -target "darwin-framework-tool" -sdk macosx -configuration Debug
diff --git a/docs/guides/repl/Matter_Access_Control.ipynb b/docs/development_controllers/chip-repl/Matter_Access_Control.ipynb
similarity index 100%
rename from docs/guides/repl/Matter_Access_Control.ipynb
rename to docs/development_controllers/chip-repl/Matter_Access_Control.ipynb
diff --git a/docs/guides/repl/Matter_Basic_Interactions.ipynb b/docs/development_controllers/chip-repl/Matter_Basic_Interactions.ipynb
similarity index 100%
rename from docs/guides/repl/Matter_Basic_Interactions.ipynb
rename to docs/development_controllers/chip-repl/Matter_Basic_Interactions.ipynb
diff --git a/docs/guides/repl/Matter_Multi_Fabric_Commissioning.ipynb b/docs/development_controllers/chip-repl/Matter_Multi_Fabric_Commissioning.ipynb
similarity index 100%
rename from docs/guides/repl/Matter_Multi_Fabric_Commissioning.ipynb
rename to docs/development_controllers/chip-repl/Matter_Multi_Fabric_Commissioning.ipynb
diff --git a/docs/guides/repl/Matter_REPL_Intro.ipynb b/docs/development_controllers/chip-repl/Matter_REPL_Intro.ipynb
similarity index 100%
rename from docs/guides/repl/Matter_REPL_Intro.ipynb
rename to docs/development_controllers/chip-repl/Matter_REPL_Intro.ipynb
diff --git a/docs/development_controllers/chip-repl/index.md b/docs/development_controllers/chip-repl/index.md
new file mode 100644
index 00000000000000..b17962ab667446
--- /dev/null
+++ b/docs/development_controllers/chip-repl/index.md
@@ -0,0 +1,15 @@
+# chip-repl
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+- [Matter REPL](./matter-repl.md)
+- [Intro](./Matter_REPL_Intro.ipynb)
+- [Access Control](./Matter_Access_Control.ipynb)
+- [Basic interactions](./Matter_Basic_Interactions.ipynb)
+- [Fabric Commissioning](./Matter_Multi_Fabric_Commissioning.ipynb)
diff --git a/docs/guides/matter-repl.md b/docs/development_controllers/chip-repl/matter-repl.md
similarity index 100%
rename from docs/guides/matter-repl.md
rename to docs/development_controllers/chip-repl/matter-repl.md
diff --git a/docs/guides/python_chip_controller_advanced_usage.md b/docs/development_controllers/chip-repl/python_chip_controller_advanced_usage.md
similarity index 100%
rename from docs/guides/python_chip_controller_advanced_usage.md
rename to docs/development_controllers/chip-repl/python_chip_controller_advanced_usage.md
diff --git a/docs/guides/python_chip_controller_building.md b/docs/development_controllers/chip-repl/python_chip_controller_building.md
similarity index 99%
rename from docs/guides/python_chip_controller_building.md
rename to docs/development_controllers/chip-repl/python_chip_controller_building.md
index 62e60b819b7db2..aa49adad246f5e 100644
--- a/docs/guides/python_chip_controller_building.md
+++ b/docs/development_controllers/chip-repl/python_chip_controller_building.md
@@ -39,7 +39,7 @@ Linux (amd64 / aarch64) or macOS.
To build and run the Python CHIP controller:
1. Install all necessary packages and prepare the build system. For more
- details, see the [Building Matter](BUILDING.md) documentation:
+ details, see the [Building Matter](../../guides/BUILDING.md) documentation:
```
sudo apt-get update
diff --git a/docs/guides/chip_tool_guide.md b/docs/development_controllers/chip-tool/chip_tool_guide.md
similarity index 99%
rename from docs/guides/chip_tool_guide.md
rename to docs/development_controllers/chip-tool/chip_tool_guide.md
index 31aa29353c91ab..8aac8daa121812 100644
--- a/docs/guides/chip_tool_guide.md
+++ b/docs/development_controllers/chip-tool/chip_tool_guide.md
@@ -38,7 +38,8 @@ Before you can use the CHIP Tool, you must compile it from source on Linux
To build and run the CHIP Tool:
1. Install all required packages for Matter and prepare the source code and the
- build system. Read the [Building Matter](BUILDING.md) guide for instructions.
+ build system. Read the [Building Matter](../../guides/BUILDING.md) guide for
+ instructions.
2. Open a command prompt in the `connectedhomeip` directory.
3. Run the following command:
diff --git a/docs/development_controllers/chip-tool/index.md b/docs/development_controllers/chip-tool/index.md
new file mode 100644
index 00000000000000..69dc7dcd68b131
--- /dev/null
+++ b/docs/development_controllers/chip-tool/index.md
@@ -0,0 +1,11 @@
+# chip-tool
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+- [chip-tool guide](./chip_tool_guide.md)
diff --git a/docs/development_controllers/index.md b/docs/development_controllers/index.md
new file mode 100644
index 00000000000000..dfc6b330b1753f
--- /dev/null
+++ b/docs/development_controllers/index.md
@@ -0,0 +1,13 @@
+# Development Controllers
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+chip-repl/index
+chip-tool/index
+```
+
+- [chip-tool](./chip-tool)
+- [chip-repl](./chip-repl)
diff --git a/docs/getting_started/first_example.md b/docs/getting_started/first_example.md
index 89ab7d493d6aa8..14fe239749ab17 100644
--- a/docs/getting_started/first_example.md
+++ b/docs/getting_started/first_example.md
@@ -26,7 +26,7 @@ for testing.
[chip-tool](../../examples/chip-tool/) is a C++ command line controller with an
interactive shell. More information on chip-tool can be found in the
-[chip-tool guide](../guides/chip_tool_guide.md).
+[chip-tool guide](../development_controllers/chip-tool/chip_tool_guide.md).
[chip-repl](../../src/controller/python/chip-repl.py) is a shell for the python
controller. The chip-repl is part of the python controller framework, often used
diff --git a/docs/guides/darwin.md b/docs/guides/darwin.md
index 00165e6fcac14f..4692c0b065dc02 100644
--- a/docs/guides/darwin.md
+++ b/docs/guides/darwin.md
@@ -292,17 +292,17 @@ Example:
- [ESP32 Lighting](/examples/lighting-app/esp32/README.md)
- [ESP32 Temperature Sensor](/examples/temperature-measurement-app/esp32/README.md)
- [mbedOS](/examples/all-clusters-app/mbed/README.md)
-- [nRF Connect All Clusters](./nrfconnect_examples_configuration.md)
+- [nRF Connect All Clusters](../platforms/nrf/nrfconnect_examples_configuration.md)
- [nRF Connect Pump](/examples/pump-app/nrfconnect/README.md)
-- [NXP Examples](./nxp/nxp_imx8m_linux_examples.md)
+- [NXP Examples](../platforms/nxp/nxp_imx8m_linux_examples.md)
- [NXP](/examples/all-clusters-app/nxp/mw320/README.md)
- [Infineon CYW30739 Lighting](/examples/lighting-app/infineon/cyw30739/README.md)
- [Infineon PSoC6](/examples/all-clusters-app/infineon/psoc6/README.md)
- [Qorvo](/examples/lighting-app/qpg/README.md)
-- [Silicon Labs](./silabs_getting_started.md)
+- [Silicon Labs](../platforms/silabs/silabs_getting_started.md)
- [Simulated Linux](./simulated_device_linux.md)
- [Telink](/examples/lighting-app/telink/README.md)
-- [TI Platform](./ti/ti_matter_overview.md)
+- [TI Platform](../platforms/ti/ti_matter_overview.md)
- [Tizen](/examples/lighting-app/tizen/README.md)
## Providing Feedback to Apple
diff --git a/docs/guides/index.md b/docs/guides/index.md
index c1a879277865ed..97167c84ae0b4b 100644
--- a/docs/guides/index.md
+++ b/docs/guides/index.md
@@ -9,56 +9,13 @@ and features.
:hidden:
*
-bouffalolab/matter_factory_data
-esp32/README
-nxp/README
-ti/ti_matter_overview
```
## Build Guides
- [Building](./BUILDING.md)
-## Platform Guides
-
-- [Android - Building](./android_building.md)
-- [Apple - Testing with iPhone, iPad, macOS, Apple TV, HomePod, Watch, etc](./darwin.md)
-- [ASR - Getting Started Guide](./asr_getting_started_guide.md)
-- [Bouffalo Lab - Matter factory data generation](./bouffalolab/matter_factory_data.md)
-- [Espressif (ESP32) - Getting Started Guide](./esp32/README.md)
-- [Infineon PSoC6 - Software Update](./infineon_psoc6_software_update.md)
-- [Linux - Simulated Devices](./simulated_device_linux.md)
-- [mbedOS - Adding a new target](./mbedos_add_new_target.md)
-- [mbedOS - Commissioning](./mbedos_commissioning.md)
-- [mbedOS - Platform Overview](./mbedos_platform_overview.md)
-- [nRF Connect - Android Commissioning](./nrfconnect_android_commissioning.md)
-- [nRF Connect - CLI Guide](./nrfconnect_examples_cli.md)
-- [nRF Connect - Configuration](./nrfconnect_examples_configuration.md)
-- [nRF Connect - Factory Data Configuration](./nrfconnect_factory_data_configuration.md)
-- [nRF Connect - Platform Overview](./nrfconnect_platform_overview.md)
-- [nRF Connect - Software Update](./nrfconnect_examples_software_update.md)
-- [NXP - Getting Started Guide](./nxp/README.md)
-- [Silicon Labs - Documentation](https://siliconlabs.github.io/matter/latest/index.html)
-- [Silicon Labs - Getting Started](./silabs_getting_started.md)
-- [Silicon Labs - Software Update](./silabs_efr32_software_update.md)
-- [Silicon Labs - CLI Guide](./silabs_cli_guide.md)
-- [TI - Platform Overview](./ti/ti_matter_overview.md)
-
-## Tool Guides
-
-- [CHIP Tool](./chip_tool_guide.md)
-- [Python Matter-Repl](./matter-repl.md)
-- [python-chip-controller - Advanced](./python_chip_controller_advanced_usage.md)
-- [python-chip-controller - Building](./python_chip_controller_building.md)
-- [CHEF test devices](../../examples/chef/README.md)
- - [New device type adding](../../examples/chef/NEW_CHEF_DEVICES.md)
-
## Development Guides
- [Access Control](./access-control-guide.md)
- [Matter IDL tooling and validation](./matter_idl_tooling.md)
-
-## Setup Guides
-
-- [Open Thread - Hardware suggestions](./openthread_rcp_nrf_dongle.md)
-- [Open Thread - Setting up a Raspberry Pi as a Border Router](./openthread_border_router_pi.md)
diff --git a/docs/index.md b/docs/index.md
index f4b40622714eae..6b7553f205ae1f 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -8,9 +8,11 @@
PROJECT_FLOW
VSCODE_DEVELOPMENT
ci-cd/index
+development_controllers/index
getting_started/index
cluster_and_device_type_dev/index
guides/index
+platforms/index
style/index
examples/index
product_considerations/index
diff --git a/docs/guides/android_building.md b/docs/platforms/android/android_building.md
similarity index 100%
rename from docs/guides/android_building.md
rename to docs/platforms/android/android_building.md
diff --git a/docs/platforms/android/index.md b/docs/platforms/android/index.md
new file mode 100644
index 00000000000000..a8bdd37290997a
--- /dev/null
+++ b/docs/platforms/android/index.md
@@ -0,0 +1,11 @@
+# Android
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+[Android - Building](./android_building.md)
diff --git a/docs/guides/asr_getting_started_guide.md b/docs/platforms/asr/asr_getting_started_guide.md
similarity index 97%
rename from docs/guides/asr_getting_started_guide.md
rename to docs/platforms/asr/asr_getting_started_guide.md
index e47cc554ef2158..e5a4bac6e2eb21 100644
--- a/docs/guides/asr_getting_started_guide.md
+++ b/docs/platforms/asr/asr_getting_started_guide.md
@@ -33,7 +33,7 @@ to speed up development. You can find them in the samples with `/asr` subfolder.
## Building the Example Application
-- [Setup Matter Environment](./BUILDING.md)
+- [Setup Matter Environment](../../guides/BUILDING.md)
- Setup toolchain
- for ASR582X and ASR550X
@@ -140,7 +140,7 @@ There are two commissioning modes supported by ASR platform:
`build_examples.py` script. For example:
`./scripts/build/build_examples.py --target asr-$ASR_BOARD-lighting-ota build`
2. For more usage details, please refer to the
- [OTA example](../../examples/ota-requestor-app/asr/README.md)
+ [OTA example](../../../examples/ota-requestor-app/asr/README.md)
## Factory
diff --git a/docs/platforms/asr/index.md b/docs/platforms/asr/index.md
new file mode 100644
index 00000000000000..f4748a4c704511
--- /dev/null
+++ b/docs/platforms/asr/index.md
@@ -0,0 +1,11 @@
+# ASR
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+[ASR - Getting Started Guide](./asr_getting_started_guide.md)
diff --git a/docs/platforms/bouffalolab/index.md b/docs/platforms/bouffalolab/index.md
new file mode 100644
index 00000000000000..bacc0e63ca1d25
--- /dev/null
+++ b/docs/platforms/bouffalolab/index.md
@@ -0,0 +1,11 @@
+# Bouffalolab
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+[Bouffalo Lab - Matter factory data generation](./matter_factory_data.md)
diff --git a/docs/guides/bouffalolab/matter_factory_data.md b/docs/platforms/bouffalolab/matter_factory_data.md
similarity index 100%
rename from docs/guides/bouffalolab/matter_factory_data.md
rename to docs/platforms/bouffalolab/matter_factory_data.md
diff --git a/docs/guides/esp32/ble_settings.md b/docs/platforms/esp32/ble_settings.md
similarity index 100%
rename from docs/guides/esp32/ble_settings.md
rename to docs/platforms/esp32/ble_settings.md
diff --git a/docs/guides/esp32/build_app_and_commission.md b/docs/platforms/esp32/build_app_and_commission.md
similarity index 98%
rename from docs/guides/esp32/build_app_and_commission.md
rename to docs/platforms/esp32/build_app_and_commission.md
index 942cb6add83bdc..df295cc49373c9 100644
--- a/docs/guides/esp32/build_app_and_commission.md
+++ b/docs/platforms/esp32/build_app_and_commission.md
@@ -168,7 +168,7 @@ $ out/debug/chip-tool pairing ble-wifi 12345 MY_SSID MY_PASSWORD 20202021 3840
#### Commissioning the Thread device (ESP32H2)
- For ESP32-H2, firstly start OpenThread Border Router, you can either use
- [Raspberry Pi OpenThread Border Router](../openthread_border_router_pi.md)
+ [Raspberry Pi OpenThread Border Router](../openthread/openthread_border_router_pi.md)
OR
[ESP32 OpenThread Border Router](../../../examples/thread-br-app/esp32/README.md)
diff --git a/docs/guides/esp32/config_options.md b/docs/platforms/esp32/config_options.md
similarity index 100%
rename from docs/guides/esp32/config_options.md
rename to docs/platforms/esp32/config_options.md
diff --git a/docs/guides/esp32/factory_data.md b/docs/platforms/esp32/factory_data.md
similarity index 100%
rename from docs/guides/esp32/factory_data.md
rename to docs/platforms/esp32/factory_data.md
diff --git a/docs/guides/esp32/flash_nvs_encryption.md b/docs/platforms/esp32/flash_nvs_encryption.md
similarity index 100%
rename from docs/guides/esp32/flash_nvs_encryption.md
rename to docs/platforms/esp32/flash_nvs_encryption.md
diff --git a/docs/guides/esp32/README.md b/docs/platforms/esp32/index.md
similarity index 100%
rename from docs/guides/esp32/README.md
rename to docs/platforms/esp32/index.md
diff --git a/docs/guides/esp32/ota.md b/docs/platforms/esp32/ota.md
similarity index 100%
rename from docs/guides/esp32/ota.md
rename to docs/platforms/esp32/ota.md
diff --git a/docs/guides/esp32/providers.md b/docs/platforms/esp32/providers.md
similarity index 100%
rename from docs/guides/esp32/providers.md
rename to docs/platforms/esp32/providers.md
diff --git a/docs/guides/esp32/rpc_console.md b/docs/platforms/esp32/rpc_console.md
similarity index 100%
rename from docs/guides/esp32/rpc_console.md
rename to docs/platforms/esp32/rpc_console.md
diff --git a/docs/guides/esp32/secure_cert_partition.md b/docs/platforms/esp32/secure_cert_partition.md
similarity index 100%
rename from docs/guides/esp32/secure_cert_partition.md
rename to docs/platforms/esp32/secure_cert_partition.md
diff --git a/docs/guides/esp32/setup_idf_chip.md b/docs/platforms/esp32/setup_idf_chip.md
similarity index 100%
rename from docs/guides/esp32/setup_idf_chip.md
rename to docs/platforms/esp32/setup_idf_chip.md
diff --git a/docs/guides/esp32/vs_code_development.md b/docs/platforms/esp32/vs_code_development.md
similarity index 100%
rename from docs/guides/esp32/vs_code_development.md
rename to docs/platforms/esp32/vs_code_development.md
diff --git a/docs/platforms/index.md b/docs/platforms/index.md
new file mode 100644
index 00000000000000..4011f2e4c266b8
--- /dev/null
+++ b/docs/platforms/index.md
@@ -0,0 +1,35 @@
+# Platform Guides
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+android/index
+asr/index
+bouffalolab/index
+esp32/index
+infineon/index
+mbedos/index
+nrf/index
+nxp/index
+openiotsdk/index
+openthread/index
+silabs/index
+stm32/index
+ti/index
+```
+
+- [Android](./android/)
+- [ASR](./asr/)
+- [Bouffalo Lab](./bouffalolab)
+- [ESP32](./esp32/)
+- [Infineon](./infineon/)
+- [MbedOS](./mbedos/)
+- [NRF](./nrf/)
+- [NXP](./nxp/)
+- [OpenIoTSDK](./openiotsdk/)
+- [OpenThread](./openthread/)
+- [Silabs](./silabs/)
+- [STM32](./stm32/)
+- [TI](./ti/)
diff --git a/docs/platforms/infineon/index.md b/docs/platforms/infineon/index.md
new file mode 100644
index 00000000000000..7784db777f1f20
--- /dev/null
+++ b/docs/platforms/infineon/index.md
@@ -0,0 +1,12 @@
+# Infineon
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+[Provisioning](./infineon_psoc6_software_update.md)
+[Software update](./infineon_psoc6_software_update.md)
diff --git a/docs/guides/infineon_psoc6_software_update.md b/docs/platforms/infineon/infineon_psoc6_software_update.md
similarity index 100%
rename from docs/guides/infineon_psoc6_software_update.md
rename to docs/platforms/infineon/infineon_psoc6_software_update.md
diff --git a/docs/guides/infineon_trustm_provisioning.md b/docs/platforms/infineon/infineon_trustm_provisioning.md
similarity index 100%
rename from docs/guides/infineon_trustm_provisioning.md
rename to docs/platforms/infineon/infineon_trustm_provisioning.md
diff --git a/docs/guides/images/matter_mbedos_overview_simplified.png b/docs/platforms/mbedos/images/matter_mbedos_overview_simplified.png
similarity index 100%
rename from docs/guides/images/matter_mbedos_overview_simplified.png
rename to docs/platforms/mbedos/images/matter_mbedos_overview_simplified.png
diff --git a/docs/platforms/mbedos/index.md b/docs/platforms/mbedos/index.md
new file mode 100644
index 00000000000000..5c29ab774de2bc
--- /dev/null
+++ b/docs/platforms/mbedos/index.md
@@ -0,0 +1,13 @@
+# MbedOS
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+[Add new target](./mbedos_add_new_target.md)
+[Commissioning](./mbedos_commissioning.md)
+[Platform overview](./mbedos_platform_overview.md)
diff --git a/docs/guides/mbedos_add_new_target.md b/docs/platforms/mbedos/mbedos_add_new_target.md
similarity index 100%
rename from docs/guides/mbedos_add_new_target.md
rename to docs/platforms/mbedos/mbedos_add_new_target.md
diff --git a/docs/guides/mbedos_commissioning.md b/docs/platforms/mbedos/mbedos_commissioning.md
similarity index 96%
rename from docs/guides/mbedos_commissioning.md
rename to docs/platforms/mbedos/mbedos_commissioning.md
index 8b6987878aacb8..1d6dc7243c053e 100644
--- a/docs/guides/mbedos_commissioning.md
+++ b/docs/platforms/mbedos/mbedos_commissioning.md
@@ -58,7 +58,7 @@ To make provisioning possible and to control the Matter device from your Android
based smartphone, you must first build and install the CHIPTool application.
To build the CHIPTool application for your smartphone, read
-[Android building guide](android_building.md).
+[Android building guide](../android/android_building.md).
After building, install the application by completing the following steps:
@@ -154,7 +154,7 @@ brightness between 0-255.
If **Lighting LED** is available then brightness change can be observed.
> For more details about Android CHIPTool please visit
-> [CHIPTool](../../examples/android/CHIPTool/README.md)
+> [CHIPTool](../../../examples/android/CHIPTool/README.md)
## POSIX CLI CHIPTool
@@ -164,7 +164,7 @@ To make provisioning possible and to control the Matter device from Linux-based
device, you can build and run the Matter Client example application on it.
To build the POSIX CLI CHIPTool application check the guide
-[POSIX CLI guide](../../examples/chip-tool/README.md).
+[POSIX CLI guide](../../../examples/chip-tool/README.md).
### Device commissioning for CLI
@@ -196,7 +196,7 @@ For example:
The client will send a single command packet and then exit.
> For more details about POSIX CLI CHIPTool please visit
-> [POSIX CLI CHIPTool](../../examples/chip-tool/README.md)
+> [POSIX CLI CHIPTool](../../../examples/chip-tool/README.md)
## Python Device Controller
@@ -206,7 +206,7 @@ To make provisioning possible and to control the Matter device with Python
application, you can build and run the Python CHIP controller.
To build and install the Python Device Controller application check the guide
-[Python Device Controller guide](python_chip_controller_building.md).
+[Python Device Controller guide](../../development_controllers/chip-repl/python_chip_controller_building.md).
### Device commissioning for Python Device Controller
diff --git a/docs/guides/mbedos_platform_overview.md b/docs/platforms/mbedos/mbedos_platform_overview.md
similarity index 95%
rename from docs/guides/mbedos_platform_overview.md
rename to docs/platforms/mbedos/mbedos_platform_overview.md
index b70d5ed89cc1ba..8cdce2c20c253e 100644
--- a/docs/guides/mbedos_platform_overview.md
+++ b/docs/platforms/mbedos/mbedos_platform_overview.md
@@ -85,11 +85,11 @@ needed to perform communication through the Matter stack.
Sample Matter applications are provided for the Mbed OS platform. They can be
used to speed up development:
-- [shell](../../examples/shell/mbed/README.md)
-- [all-clusters-app](../../examples/all-clusters-app/mbed/README.md)
-- [lock-app](../../examples/lock-app/mbed/README.md)
-- [lighting-app](../../examples/lighting-app/mbed/README.md)
-- [pigweed-app](../../examples/pigweed-app/mbed/README.md)
+- [shell](../../../examples/shell/mbed/README.md)
+- [all-clusters-app](../../../examples/all-clusters-app/mbed/README.md)
+- [lock-app](../../../examples/lock-app/mbed/README.md)
+- [lighting-app](../../../examples/lighting-app/mbed/README.md)
+- [pigweed-app](../../../examples/pigweed-app/mbed/README.md)
### Example configuration
diff --git a/docs/guides/images/CHIPTool_device_commissioned.png b/docs/platforms/nrf/images/CHIPTool_device_commissioned.png
similarity index 100%
rename from docs/guides/images/CHIPTool_device_commissioned.png
rename to docs/platforms/nrf/images/CHIPTool_device_commissioned.png
diff --git a/docs/guides/images/matter_nrfconnect_overview_simplified_ncs.svg b/docs/platforms/nrf/images/matter_nrfconnect_overview_simplified_ncs.svg
similarity index 100%
rename from docs/guides/images/matter_nrfconnect_overview_simplified_ncs.svg
rename to docs/platforms/nrf/images/matter_nrfconnect_overview_simplified_ncs.svg
diff --git a/docs/guides/images/nrfconnect_android_connectivity.png b/docs/platforms/nrf/images/nrfconnect_android_connectivity.png
similarity index 100%
rename from docs/guides/images/nrfconnect_android_connectivity.png
rename to docs/platforms/nrf/images/nrfconnect_android_connectivity.png
diff --git a/docs/platforms/nrf/index.md b/docs/platforms/nrf/index.md
new file mode 100644
index 00000000000000..bf74c43fcc9722
--- /dev/null
+++ b/docs/platforms/nrf/index.md
@@ -0,0 +1,16 @@
+# NRF
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+[Android Commissioning](./nrfconnect_android_commissioning.md)
+[Examples CLI](./nrfconnect_examples_cli.md)
+[Examples configuration](./nrfconnect_examples_configuration.md)
+[Examples Software update](./nrfconnect_examples_software_update.md)
+[Factory data](./nrfconnect_factory_data_configuration.md)
+[Platform overview](./nrfconnect_platform_overview.md)
diff --git a/docs/guides/nrfconnect_android_commissioning.md b/docs/platforms/nrf/nrfconnect_android_commissioning.md
similarity index 94%
rename from docs/guides/nrfconnect_android_commissioning.md
rename to docs/platforms/nrf/nrfconnect_android_commissioning.md
index 0c93f4579298e5..9c6358d501adbd 100644
--- a/docs/guides/nrfconnect_android_commissioning.md
+++ b/docs/platforms/nrf/nrfconnect_android_commissioning.md
@@ -1,7 +1,7 @@
# Commissioning nRF Connect Accessory using Android CHIPTool
-You can use [CHIPTool](android_building.md) for Android smartphones to
-commission a Nordic Semiconductor's development kit programmed with a Matter
+You can use [CHIPTool](../android/android_building.md) for Android smartphones
+to commission a Nordic Semiconductor's development kit programmed with a Matter
example for the nRF Connect platform into a Matter fabric.
This guide references the nRF52840 DK and Matter nRF Connect Lighting Example
@@ -86,9 +86,10 @@ accessory using Android CHIPTool:
> _Note:_ This step is only needed if you're testing a Thread device. Skip it if
> the tested device operates in a Wi-Fi network.
-Follow the [OpenThread Border Router](openthread_border_router_pi.md) article to
-set up OpenThread Border Router on the Raspberry Pi, with either the nRF52840 DK
-or the nRF52840 Dongle acting as the
+Follow the
+[OpenThread Border Router](../openthread/openthread_border_router_pi.md) article
+to set up OpenThread Border Router on the Raspberry Pi, with either the nRF52840
+DK or the nRF52840 Dongle acting as the
[OpenThread Radio Co-Processor](https://openthread.io/platforms/co-processor).
During the setup, make sure that the Raspberry Pi is connected to your Wi-Fi
Access Point.
@@ -107,7 +108,7 @@ Application to learn how to build and program the example onto an nRF52840 DK.
## Building and installing Android CHIPTool
To build the CHIPTool application for your smartphone, read the
-[Building Android](android_building.md) guide.
+[Building Android](../android/android_building.md) guide.
After building, install the application by completing the following steps:
diff --git a/docs/guides/nrfconnect_examples_cli.md b/docs/platforms/nrf/nrfconnect_examples_cli.md
similarity index 100%
rename from docs/guides/nrfconnect_examples_cli.md
rename to docs/platforms/nrf/nrfconnect_examples_cli.md
diff --git a/docs/guides/nrfconnect_examples_configuration.md b/docs/platforms/nrf/nrfconnect_examples_configuration.md
similarity index 100%
rename from docs/guides/nrfconnect_examples_configuration.md
rename to docs/platforms/nrf/nrfconnect_examples_configuration.md
diff --git a/docs/guides/nrfconnect_examples_software_update.md b/docs/platforms/nrf/nrfconnect_examples_software_update.md
similarity index 99%
rename from docs/guides/nrfconnect_examples_software_update.md
rename to docs/platforms/nrf/nrfconnect_examples_software_update.md
index d295bae47667a3..5f3ab2055d702c 100644
--- a/docs/guides/nrfconnect_examples_software_update.md
+++ b/docs/platforms/nrf/nrfconnect_examples_software_update.md
@@ -17,7 +17,7 @@ protocols:
> **_NOTE:_** The procedure presented below requires that you have OpenThread
> Border Router (OTBR) set up either in Docker or on a Raspberry Pi. Read
-> [Setup OpenThread Border Router on Raspberry Pi](openthread_border_router_pi.md)
+> [Setup OpenThread Border Router on Raspberry Pi](../openthread/openthread_border_router_pi.md)
> to learn how to install the OTBR on a Raspberry Pi.
The DFU over Matter involves two kinds of nodes:
@@ -94,7 +94,6 @@ To test the DFU over Matter, you need to complete the following steps:
10. Initiate the DFU procedure in one of the following ways:
-
- If you have built the device firmware with `-DCONFIG_CHIP_LIB_SHELL=y`
option, which enables Matter shell commands, run the following command
on the device shell:
diff --git a/docs/guides/nrfconnect_factory_data_configuration.md b/docs/platforms/nrf/nrfconnect_factory_data_configuration.md
similarity index 99%
rename from docs/guides/nrfconnect_factory_data_configuration.md
rename to docs/platforms/nrf/nrfconnect_factory_data_configuration.md
index 886acc9b3049d3..0c3f6c1d47ce92 100644
--- a/docs/guides/nrfconnect_factory_data_configuration.md
+++ b/docs/platforms/nrf/nrfconnect_factory_data_configuration.md
@@ -813,8 +813,8 @@ Alternatively, you can add the relevant Kconfig option lines to the example's
You can edit all configuration options using the interactive Kconfig interface.
See the
-[Configuring nRF Connect examples](../guides/nrfconnect_examples_configuration.md)
-page for information about how to configure Kconfig options.
+[Configuring nRF Connect examples](./nrfconnect_examples_configuration.md) page
+for information about how to configure Kconfig options.
In the configuration window, expand the items
`Modules -> connectedhomeip (/home/arbl/matter/connectedhomeip/config/nrfconnect/chip-module) -> Connected Home over IP protocol stack`.
diff --git a/docs/guides/nrfconnect_platform_overview.md b/docs/platforms/nrf/nrfconnect_platform_overview.md
similarity index 100%
rename from docs/guides/nrfconnect_platform_overview.md
rename to docs/platforms/nrf/nrfconnect_platform_overview.md
diff --git a/docs/guides/nxp/README.md b/docs/platforms/nxp/index.md
similarity index 100%
rename from docs/guides/nxp/README.md
rename to docs/platforms/nxp/index.md
diff --git a/docs/guides/nxp/nxp_imx8m_linux_examples.md b/docs/platforms/nxp/nxp_imx8m_linux_examples.md
similarity index 100%
rename from docs/guides/nxp/nxp_imx8m_linux_examples.md
rename to docs/platforms/nxp/nxp_imx8m_linux_examples.md
diff --git a/docs/guides/nxp/nxp_k32w0_ota_guide.md b/docs/platforms/nxp/nxp_k32w0_ota_guide.md
similarity index 100%
rename from docs/guides/nxp/nxp_k32w0_ota_guide.md
rename to docs/platforms/nxp/nxp_k32w0_ota_guide.md
diff --git a/docs/guides/nxp/nxp_k32w_android_commissioning.md b/docs/platforms/nxp/nxp_k32w_android_commissioning.md
similarity index 100%
rename from docs/guides/nxp/nxp_k32w_android_commissioning.md
rename to docs/platforms/nxp/nxp_k32w_android_commissioning.md
diff --git a/docs/guides/nxp/nxp_manufacturing_flow.md b/docs/platforms/nxp/nxp_manufacturing_flow.md
similarity index 100%
rename from docs/guides/nxp/nxp_manufacturing_flow.md
rename to docs/platforms/nxp/nxp_manufacturing_flow.md
diff --git a/docs/guides/nxp/nxp_mcxw71_ota_guide.md b/docs/platforms/nxp/nxp_mcxw71_ota_guide.md
similarity index 100%
rename from docs/guides/nxp/nxp_mcxw71_ota_guide.md
rename to docs/platforms/nxp/nxp_mcxw71_ota_guide.md
diff --git a/docs/guides/nxp/nxp_otbr_guide.md b/docs/platforms/nxp/nxp_otbr_guide.md
similarity index 100%
rename from docs/guides/nxp/nxp_otbr_guide.md
rename to docs/platforms/nxp/nxp_otbr_guide.md
diff --git a/docs/guides/nxp/nxp_rw61x_ota_software_update.md b/docs/platforms/nxp/nxp_rw61x_ota_software_update.md
similarity index 100%
rename from docs/guides/nxp/nxp_rw61x_ota_software_update.md
rename to docs/platforms/nxp/nxp_rw61x_ota_software_update.md
diff --git a/docs/guides/nxp/nxp_zephyr_ota_software_update.md b/docs/platforms/nxp/nxp_zephyr_ota_software_update.md
similarity index 100%
rename from docs/guides/nxp/nxp_zephyr_ota_software_update.md
rename to docs/platforms/nxp/nxp_zephyr_ota_software_update.md
diff --git a/docs/platforms/openiotsdk/index.md b/docs/platforms/openiotsdk/index.md
new file mode 100644
index 00000000000000..8bd73c46e193c9
--- /dev/null
+++ b/docs/platforms/openiotsdk/index.md
@@ -0,0 +1,15 @@
+# OpenIoTSDK
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+[Commissioning](./openiotsdk_commissioning.md)
+[Examples software update](./openiotsdk_examples_software_update.md)
+[Examples](./openiotsdk_examples.md)
+[Platform overview](./openiotsdk_platform_overview.md)
+[Unit tests](./openiotsdk_unit_tests.md)
diff --git a/docs/guides/openiotsdk_commissioning.md b/docs/platforms/openiotsdk/openiotsdk_commissioning.md
similarity index 90%
rename from docs/guides/openiotsdk_commissioning.md
rename to docs/platforms/openiotsdk/openiotsdk_commissioning.md
index 520cff033d611d..969b304228bf56 100644
--- a/docs/guides/openiotsdk_commissioning.md
+++ b/docs/platforms/openiotsdk/openiotsdk_commissioning.md
@@ -9,11 +9,11 @@ connected to the IP network and do not require credentials provisioning.
## Building Matter controller
-The [Matter controller](../../src/controller/README.md) is a client application
-that allows commission and control of the Matter node.
+The [Matter controller](../../../src/controller/README.md) is a client
+application that allows commission and control of the Matter node.
-The [POSIX CLI chip-tool](../../examples/chip-tool/README.md) is the recommended
-Matter controller to use with Open IoT SDK devices.
+The [POSIX CLI chip-tool](../../../examples/chip-tool/README.md) is the
+recommended Matter controller to use with Open IoT SDK devices.
To build `chip-tool` execute command:
diff --git a/docs/guides/openiotsdk_examples.md b/docs/platforms/openiotsdk/openiotsdk_examples.md
similarity index 98%
rename from docs/guides/openiotsdk_examples.md
rename to docs/platforms/openiotsdk/openiotsdk_examples.md
index b80ce6304f9ba0..c91863a1b7658c 100644
--- a/docs/guides/openiotsdk_examples.md
+++ b/docs/platforms/openiotsdk/openiotsdk_examples.md
@@ -22,7 +22,7 @@ You can use these examples as a reference for creating your own applications.
The VSCode devcontainer has all the dependencies pre-installed. It is the
recommended way to build, run and develop with the Open IoT SDK port of the
Matter Project. Please read this
-[VSCode development guide](../VSCODE_DEVELOPMENT.md) for more information.
+[VSCode development guide](../../VSCODE_DEVELOPMENT.md) for more information.
Before building the examples, check out the Matter repository and sync Open IoT
SDK submodules using the following command:
@@ -347,11 +347,11 @@ provides the `-K,--kvsfile` option to use the persistence options listed above.
Open IoT SDK port supports two crypto backend implementations:
-- [Mbed TLS](../guides/openiotsdk_platform_overview.md#mbed-tls) - it's the
- default option
+- [Mbed TLS](./openiotsdk_platform_overview.md#mbed-tls) - it's the default
+ option
- [PSA crypto service](https://tf-m-user-guide.trustedfirmware.org/integration_guide/services/tfm_crypto_integration_guide.html)
from the
- [TrustedFirmware-M (TF-M)](../guides/openiotsdk_platform_overview.md#trusted-firmware-m)
+ [TrustedFirmware-M (TF-M)](./openiotsdk_platform_overview.md#trusted-firmware-m)
component
The CMake variable `CONFIG_CHIP_CRYPTO` controls how cryptographic operations
diff --git a/docs/guides/openiotsdk_examples_software_update.md b/docs/platforms/openiotsdk/openiotsdk_examples_software_update.md
similarity index 95%
rename from docs/guides/openiotsdk_examples_software_update.md
rename to docs/platforms/openiotsdk/openiotsdk_examples_software_update.md
index 73129b84e50966..686d95b8b7a058 100644
--- a/docs/guides/openiotsdk_examples_software_update.md
+++ b/docs/platforms/openiotsdk/openiotsdk_examples_software_update.md
@@ -19,12 +19,12 @@ The last required element is a Matter controller. This application controls both
nodes and manages the entire software update process.
In the procedure described below, the `OTA Provider` will be a
-[Linux application](../../examples/ota-provider-app/linux/README.md) and the
+[Linux application](../../../examples/ota-provider-app/linux/README.md) and the
Open IoT SDK example with
[DFU support](./openiotsdk_examples.md#device-firmware-update) will work as the
-OTA Requestor. The [chip-tool](../../examples/chip-tool/README.md) application
-used as the Matter controller. Each application should be launched in a separate
-terminal.
+OTA Requestor. The [chip-tool](../../../examples/chip-tool/README.md)
+application used as the Matter controller. Each application should be launched
+in a separate terminal.
List of `OIS` examples that currently support the `DFU` over Matter:
@@ -41,7 +41,7 @@ List of `OIS` examples that currently support the `DFU` over Matter:
```
More details about the `OTA provider` application can be found
- [here](../../examples/ota-provider-app/linux/README.md).
+ [here](../../../examples/ota-provider-app/linux/README.md).
3. Build `chip-tool`:
@@ -50,7 +50,7 @@ List of `OIS` examples that currently support the `DFU` over Matter:
```
More details about the `chip-tool` application can be found
- [here](../../examples/chip-tool/README.md).
+ [here](../../../examples/chip-tool/README.md).
4. Build `OIS` example application
diff --git a/docs/guides/openiotsdk_platform_overview.md b/docs/platforms/openiotsdk/openiotsdk_platform_overview.md
similarity index 100%
rename from docs/guides/openiotsdk_platform_overview.md
rename to docs/platforms/openiotsdk/openiotsdk_platform_overview.md
diff --git a/docs/guides/openiotsdk_unit_tests.md b/docs/platforms/openiotsdk/openiotsdk_unit_tests.md
similarity index 100%
rename from docs/guides/openiotsdk_unit_tests.md
rename to docs/platforms/openiotsdk/openiotsdk_unit_tests.md
diff --git a/docs/platforms/openthread/index.md b/docs/platforms/openthread/index.md
new file mode 100644
index 00000000000000..a4926817e2ffc7
--- /dev/null
+++ b/docs/platforms/openthread/index.md
@@ -0,0 +1,12 @@
+# OpenThread
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+[Border Router](./openthread_border_router_pi.md)
+[NRF dongle](./openthread_rcp_nrf_dongle.md)
diff --git a/docs/guides/openthread_border_router_pi.md b/docs/platforms/openthread/openthread_border_router_pi.md
similarity index 100%
rename from docs/guides/openthread_border_router_pi.md
rename to docs/platforms/openthread/openthread_border_router_pi.md
diff --git a/docs/guides/openthread_rcp_nrf_dongle.md b/docs/platforms/openthread/openthread_rcp_nrf_dongle.md
similarity index 100%
rename from docs/guides/openthread_rcp_nrf_dongle.md
rename to docs/platforms/openthread/openthread_rcp_nrf_dongle.md
diff --git a/docs/guides/images/silabs_logo.png b/docs/platforms/silabs/images/silabs_logo.png
similarity index 100%
rename from docs/guides/images/silabs_logo.png
rename to docs/platforms/silabs/images/silabs_logo.png
diff --git a/docs/platforms/silabs/index.md b/docs/platforms/silabs/index.md
new file mode 100644
index 00000000000000..3e743df0cbb552
--- /dev/null
+++ b/docs/platforms/silabs/index.md
@@ -0,0 +1,14 @@
+# Silabs
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+[CLI guide](./silabs_cli_guide.md)
+[Common app behavior](./silabs_common_app_behavior.md)
+[EFR32 software update](./silabs_efr32_software_update.md)
+[Getting Started](./silabs_getting_started.md)
diff --git a/docs/guides/silabs_cli_guide.md b/docs/platforms/silabs/silabs_cli_guide.md
similarity index 100%
rename from docs/guides/silabs_cli_guide.md
rename to docs/platforms/silabs/silabs_cli_guide.md
diff --git a/docs/guides/silabs_common_app_behavior.md b/docs/platforms/silabs/silabs_common_app_behavior.md
similarity index 100%
rename from docs/guides/silabs_common_app_behavior.md
rename to docs/platforms/silabs/silabs_common_app_behavior.md
diff --git a/docs/guides/silabs_efr32_software_update.md b/docs/platforms/silabs/silabs_efr32_software_update.md
similarity index 98%
rename from docs/guides/silabs_efr32_software_update.md
rename to docs/platforms/silabs/silabs_efr32_software_update.md
index 9f94753aa7d29f..6bdce3d40d2f96 100644
--- a/docs/guides/silabs_efr32_software_update.md
+++ b/docs/platforms/silabs/silabs_efr32_software_update.md
@@ -118,7 +118,7 @@ to 2).
Starting the ota-provider-app with the --otaImageList command line option allows
the user to supply a JSON file specifying the Software Version, Vendor and
Product ID that identify the image served by the Provider, see
-[ota-provider-app](../../examples/ota-provider-app/linux/README.md)
+[ota-provider-app](../../../examples/ota-provider-app/linux/README.md)
Example provider configuration file:
diff --git a/docs/guides/silabs_getting_started.md b/docs/platforms/silabs/silabs_getting_started.md
similarity index 100%
rename from docs/guides/silabs_getting_started.md
rename to docs/platforms/silabs/silabs_getting_started.md
diff --git a/docs/platforms/stm32/index.md b/docs/platforms/stm32/index.md
new file mode 100644
index 00000000000000..7b0d56ce3e6004
--- /dev/null
+++ b/docs/platforms/stm32/index.md
@@ -0,0 +1,11 @@
+# ESP32
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+```
+
+[Getting Started Guide](./stm32_getting_started_guide.md)
diff --git a/docs/guides/stm32_getting_started_guide.md b/docs/platforms/stm32/stm32_getting_started_guide.md
similarity index 98%
rename from docs/guides/stm32_getting_started_guide.md
rename to docs/platforms/stm32/stm32_getting_started_guide.md
index 55f856cbc0e872..954dde35c009db 100644
--- a/docs/guides/stm32_getting_started_guide.md
+++ b/docs/platforms/stm32/stm32_getting_started_guide.md
@@ -28,7 +28,7 @@ subfolder.
## Building the Example Application
-- [Set Up Matter Environment](./BUILDING.md)
+- [Set Up Matter Environment](../../guides/BUILDING.md)
- Set up STLINK tools
diff --git a/docs/guides/images/matter_ti_overview_simplified.png b/docs/platforms/ti/images/matter_ti_overview_simplified.png
similarity index 100%
rename from docs/guides/images/matter_ti_overview_simplified.png
rename to docs/platforms/ti/images/matter_ti_overview_simplified.png
diff --git a/docs/guides/images/matter_ti_overview_wifi.png b/docs/platforms/ti/images/matter_ti_overview_wifi.png
similarity index 100%
rename from docs/guides/images/matter_ti_overview_wifi.png
rename to docs/platforms/ti/images/matter_ti_overview_wifi.png
diff --git a/docs/platforms/ti/index.md b/docs/platforms/ti/index.md
new file mode 100644
index 00000000000000..aa49ab94d1c994
--- /dev/null
+++ b/docs/platforms/ti/index.md
@@ -0,0 +1,17 @@
+# TI
+
+```{toctree}
+:glob:
+:maxdepth: 1
+:hidden:
+
+*
+matter-migration-guide/*
+matter-syscfg/*
+matter-users-guide/*
+```
+
+- [Overview](./ti_matter_overview.md)
+- [Matter migration guide](./matter-migration-guide/)
+- [Syscfg](./matter-syscfg/)
+- [User guide](./matter-users-guide/)
diff --git a/docs/guides/ti/matter-migration-guide/matter_cc2674_migration.md b/docs/platforms/ti/matter-migration-guide/matter_cc2674_migration.md
similarity index 100%
rename from docs/guides/ti/matter-migration-guide/matter_cc2674_migration.md
rename to docs/platforms/ti/matter-migration-guide/matter_cc2674_migration.md
diff --git a/docs/guides/ti/matter-syscfg/getting-started.md b/docs/platforms/ti/matter-syscfg/getting-started.md
similarity index 100%
rename from docs/guides/ti/matter-syscfg/getting-started.md
rename to docs/platforms/ti/matter-syscfg/getting-started.md
diff --git a/docs/guides/ti/matter-syscfg/images/board_view.png b/docs/platforms/ti/matter-syscfg/images/board_view.png
similarity index 100%
rename from docs/guides/ti/matter-syscfg/images/board_view.png
rename to docs/platforms/ti/matter-syscfg/images/board_view.png
diff --git a/docs/guides/ti/matter-syscfg/images/generated_files_ble.png b/docs/platforms/ti/matter-syscfg/images/generated_files_ble.png
similarity index 100%
rename from docs/guides/ti/matter-syscfg/images/generated_files_ble.png
rename to docs/platforms/ti/matter-syscfg/images/generated_files_ble.png
diff --git a/docs/guides/ti/matter-syscfg/images/hardware_view.png b/docs/platforms/ti/matter-syscfg/images/hardware_view.png
similarity index 100%
rename from docs/guides/ti/matter-syscfg/images/hardware_view.png
rename to docs/platforms/ti/matter-syscfg/images/hardware_view.png
diff --git a/docs/guides/ti/matter-syscfg/images/reserve-gpio.png b/docs/platforms/ti/matter-syscfg/images/reserve-gpio.png
similarity index 100%
rename from docs/guides/ti/matter-syscfg/images/reserve-gpio.png
rename to docs/platforms/ti/matter-syscfg/images/reserve-gpio.png
diff --git a/docs/guides/ti/matter-syscfg/images/reserve-peripheral-panel.png b/docs/platforms/ti/matter-syscfg/images/reserve-peripheral-panel.png
similarity index 100%
rename from docs/guides/ti/matter-syscfg/images/reserve-peripheral-panel.png
rename to docs/platforms/ti/matter-syscfg/images/reserve-peripheral-panel.png
diff --git a/docs/guides/ti/matter-syscfg/images/show_generated_files_tab.png b/docs/platforms/ti/matter-syscfg/images/show_generated_files_tab.png
similarity index 100%
rename from docs/guides/ti/matter-syscfg/images/show_generated_files_tab.png
rename to docs/platforms/ti/matter-syscfg/images/show_generated_files_tab.png
diff --git a/docs/guides/ti/matter-syscfg/sysconfig-board.md b/docs/platforms/ti/matter-syscfg/sysconfig-board.md
similarity index 100%
rename from docs/guides/ti/matter-syscfg/sysconfig-board.md
rename to docs/platforms/ti/matter-syscfg/sysconfig-board.md
diff --git a/docs/guides/ti/matter-users-guide/enabling_icd_on_ti_devices.md b/docs/platforms/ti/matter-users-guide/enabling_icd_on_ti_devices.md
similarity index 100%
rename from docs/guides/ti/matter-users-guide/enabling_icd_on_ti_devices.md
rename to docs/platforms/ti/matter-users-guide/enabling_icd_on_ti_devices.md
diff --git a/docs/guides/ti/matter-users-guide/images/cc13x4_memmap.png b/docs/platforms/ti/matter-users-guide/images/cc13x4_memmap.png
similarity index 100%
rename from docs/guides/ti/matter-users-guide/images/cc13x4_memmap.png
rename to docs/platforms/ti/matter-users-guide/images/cc13x4_memmap.png
diff --git a/docs/guides/ti/matter-users-guide/images/factory_data_overview.png b/docs/platforms/ti/matter-users-guide/images/factory_data_overview.png
similarity index 100%
rename from docs/guides/ti/matter-users-guide/images/factory_data_overview.png
rename to docs/platforms/ti/matter-users-guide/images/factory_data_overview.png
diff --git a/docs/guides/ti/matter-users-guide/ti_factory_data_user_guide.md b/docs/platforms/ti/matter-users-guide/ti_factory_data_user_guide.md
similarity index 100%
rename from docs/guides/ti/matter-users-guide/ti_factory_data_user_guide.md
rename to docs/platforms/ti/matter-users-guide/ti_factory_data_user_guide.md
diff --git a/docs/guides/ti/matter-users-guide/ti_openthread_library_usage.md b/docs/platforms/ti/matter-users-guide/ti_openthread_library_usage.md
similarity index 100%
rename from docs/guides/ti/matter-users-guide/ti_openthread_library_usage.md
rename to docs/platforms/ti/matter-users-guide/ti_openthread_library_usage.md
diff --git a/docs/guides/ti/ti_matter_overview.md b/docs/platforms/ti/ti_matter_overview.md
similarity index 99%
rename from docs/guides/ti/ti_matter_overview.md
rename to docs/platforms/ti/ti_matter_overview.md
index 44943fa46ba871..176ea26d95a4db 100644
--- a/docs/guides/ti/ti_matter_overview.md
+++ b/docs/platforms/ti/ti_matter_overview.md
@@ -103,7 +103,7 @@ by the platform implementation files.
Below are several resources available for Matter development:
- [Matter Protocol Overview](https://handbook.buildwithmatter.com/howitworks/roles/)
-- [Matter Build Guide](../BUILDING.md)
+- [Matter Build Guide](../../guides/BUILDING.md)
- [Matter over Thread Getting Started](https://dev.ti.com/tirex/explore/node?node=A__AciOYyNq9gli.nsvJzBtQg__com.ti.SIMPLELINK_ACADEMY_CC13XX_CC26XX_SDK__AfkT0vQ__LATEST)
- [TI Matter over Wi-Fi Getting Started](https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1122413/faq-cc3235sf-matter----getting-started-guide)
- [TI Matter Application Development](https://dev.ti.com/tirex/explore/node?node=A__AXNOPYikmtBCHJ-L6eRivA__com.ti.SIMPLELINK_ACADEMY_CC13XX_CC26XX_SDK__AfkT0vQ__LATEST)
diff --git a/examples/air-purifier-app/linux/README.md b/examples/air-purifier-app/linux/README.md
index 2d771bdf5b5ff4..377d53a0965c31 100644
--- a/examples/air-purifier-app/linux/README.md
+++ b/examples/air-purifier-app/linux/README.md
@@ -11,7 +11,7 @@ Temperature Sensor and Endpoint 5 is a Thermostat.
To cross-compile this example on x64 host and run on **NXP i.MX 8M Mini**
**EVK**, see the associated
-[README document](../../../docs/guides/nxp/nxp_imx8m_linux_examples.md) for
+[README document](../../../docs/platforms/nxp/nxp_imx8m_linux_examples.md) for
details.
diff --git a/examples/air-quality-sensor-app/linux/README.md b/examples/air-quality-sensor-app/linux/README.md
index ef90a4bd23df9f..158cd0d2deba6c 100644
--- a/examples/air-quality-sensor-app/linux/README.md
+++ b/examples/air-quality-sensor-app/linux/README.md
@@ -7,7 +7,7 @@ for Raspberry Pi Desktop 20.10 (aarch64)**
To cross-compile this example on x64 host and run on **NXP i.MX 8M Mini**
**EVK**, see the associated
-[README document](../../../docs/guides/nxp/nxp_imx8m_linux_examples.md) for
+[README document](../../../docs/platforms/nxp/nxp_imx8m_linux_examples.md) for
details.
diff --git a/examples/air-quality-sensor-app/silabs/README.md b/examples/air-quality-sensor-app/silabs/README.md
index d0e89d363dd7b9..7279e23457ef01 100644
--- a/examples/air-quality-sensor-app/silabs/README.md
+++ b/examples/air-quality-sensor-app/silabs/README.md
@@ -330,7 +330,7 @@ tracking code inside the `trackAlloc` and `trackFree` function
For the description of Software Update process with EFR32 example applications
see
-[EFR32 OTA Software Update](../../../docs/guides/silabs_efr32_software_update.md)
+[EFR32 OTA Software Update](../../../docs/platforms/silabs/silabs_efr32_software_update.md)
## Building options
diff --git a/examples/all-clusters-app/asr/README.md b/examples/all-clusters-app/asr/README.md
index bde062feab4445..6e31c18ac29a3c 100755
--- a/examples/all-clusters-app/asr/README.md
+++ b/examples/all-clusters-app/asr/README.md
@@ -15,7 +15,7 @@ control on ASR platform.
## Building and Commissioning
Please refer
-[Building and Commissioning](../../../docs/guides/asr_getting_started_guide.md#building-the-example-application)
+[Building and Commissioning](../../../docs/platforms/asr/asr_getting_started_guide.md#building-the-example-application)
guides to get started
```
diff --git a/examples/all-clusters-app/esp32/README.md b/examples/all-clusters-app/esp32/README.md
index 0a3145dbc24da2..8e6ef5a61d8f22 100644
--- a/examples/all-clusters-app/esp32/README.md
+++ b/examples/all-clusters-app/esp32/README.md
@@ -4,16 +4,16 @@ A prototype application that demonstrates device commissioning and cluster
control.
Please
-[setup ESP-IDF and CHIP Environment](../../../docs/guides/esp32/setup_idf_chip.md)
+[setup ESP-IDF and CHIP Environment](../../../docs/platforms/esp32/setup_idf_chip.md)
and refer
-[building and commissioning](../../../docs/guides/esp32/build_app_and_commission.md)
+[building and commissioning](../../../docs/platforms/esp32/build_app_and_commission.md)
guides to get started.
---
- [Cluster control](#cluster-control)
-- [Matter OTA guide](../../../docs/guides/esp32/ota.md)
-- [RPC console and Device Tracing](../../../docs/guides/esp32/rpc_console.md)
+- [Matter OTA guide](../../../docs/platforms/esp32/ota.md)
+- [RPC console and Device Tracing](../../../docs/platforms/esp32/rpc_console.md)
- [Multiple Network Interfaces](#multiple-network-interfaces)
---
diff --git a/examples/all-clusters-app/infineon/psoc6/README.md b/examples/all-clusters-app/infineon/psoc6/README.md
index 138f132f7a0dba..b4faa2e9ea4503 100644
--- a/examples/all-clusters-app/infineon/psoc6/README.md
+++ b/examples/all-clusters-app/infineon/psoc6/README.md
@@ -126,4 +126,4 @@ commands. These power cycle the BlueTooth hardware and disable BR/EDR mode.
For the description of Software Update process with infineon PSoC6 example
applications see
-[Infineon PSoC6 OTA Software Update](../../../../docs/guides/infineon_psoc6_software_update.md)
+[Infineon PSoC6 OTA Software Update](../../../../docs/platforms/infineon/infineon_psoc6_software_update.md)
diff --git a/examples/all-clusters-app/mbed/README.md b/examples/all-clusters-app/mbed/README.md
index 0952e18914bf16..f5d0a78b290e19 100644
--- a/examples/all-clusters-app/mbed/README.md
+++ b/examples/all-clusters-app/mbed/README.md
@@ -225,7 +225,8 @@ the terminal.
#### CHIP Tools
-Read the [MbedCommissioning](../../../docs/guides/mbedos_commissioning.md) to
+Read the
+[MbedCommissioning](../../../docs/platforms/mbedos/mbedos_commissioning.md) to
see how to use different CHIP tools to commission and control the application
within a WiFi network.
@@ -239,7 +240,7 @@ within a WiFi network.
- More details and guidelines about porting new hardware into the Matter
project with Mbed OS can be found in
- [MbedNewTarget](../../../docs/guides/mbedos_add_new_target.md)
+ [MbedNewTarget](../../../docs/platforms/mbedos/mbedos_add_new_target.md)
- Some useful information about HW platform specific settings can be found in
`all-clusters-app/mbed/mbed_app.json`. Information about this file syntax
and its meaning in mbed-os project can be found here:
diff --git a/examples/all-clusters-app/nrfconnect/README.md b/examples/all-clusters-app/nrfconnect/README.md
index 3a58e448d76254..4c51e52a1ffb4c 100644
--- a/examples/all-clusters-app/nrfconnect/README.md
+++ b/examples/all-clusters-app/nrfconnect/README.md
@@ -43,7 +43,7 @@ This example is running on the nRF Connect platform, which is based on Nordic
Semiconductor's
[nRF Connect SDK](https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/index.html)
and [Zephyr RTOS](https://zephyrproject.org/). Visit Matter's
-[nRF Connect platform overview](../../../docs/guides/nrfconnect_platform_overview.md)
+[nRF Connect platform overview](../../../docs/platforms/nrf/nrfconnect_platform_overview.md)
to read more about the platform structure and dependencies.
By default, the Matter accessory device has IPv6 networking disabled. You must
@@ -183,7 +183,7 @@ following states are possible:
**SEGGER J-Link USB port** can be used to get logs from the device or
communicate with it using the
-[command line interface](../../../docs/guides/nrfconnect_examples_cli.md).
+[command line interface](../../../docs/platforms/nrf/nrfconnect_examples_cli.md).
@@ -379,7 +379,7 @@ depending on the selected board:
those platforms support the DFU.
For more information, see the
-[Configuring nRF Connect SDK examples](../../../docs/guides/nrfconnect_examples_configuration.md)
+[Configuring nRF Connect SDK examples](../../../docs/platforms/nrf/nrfconnect_examples_configuration.md)
page.
@@ -414,19 +414,20 @@ to read more about flashing on the nRF52840 Dongle.
## Testing the example
-Check the [CLI tutorial](../../../docs/guides/nrfconnect_examples_cli.md) to
-learn how to use command-line interface of the application.
+Check the [CLI tutorial](../../../docs/platforms/nrf/nrfconnect_examples_cli.md)
+to learn how to use command-line interface of the application.
### Testing using Linux CHIPTool
-Read the [CHIP Tool user guide](../../../docs/guides/chip_tool_guide.md) to see
-how to use [CHIP Tool for Linux or mac OS](../../chip-tool/README.md) to
+Read the
+[CHIP Tool user guide](../../../docs/development_controllers/chip-tool/chip_tool_guide.md)
+to see how to use [CHIP Tool for Linux or mac OS](../../chip-tool/README.md) to
commission and control the application within a Matter-enabled Thread network.
### Testing using Android CHIPTool
Read the
-[Android commissioning guide](../../../docs/guides/nrfconnect_android_commissioning.md)
+[Android commissioning guide](../../../docs/platforms/nrf/nrfconnect_android_commissioning.md)
to see how to use [CHIPTool](../../../examples/android/CHIPTool/README.md) for
Android smartphones to commission and control the application within a
Matter-enabled Thread network.
diff --git a/examples/all-clusters-app/nxp/linux-imx/imx8m/README.md b/examples/all-clusters-app/nxp/linux-imx/imx8m/README.md
index e20ff1065d3dfb..01941f58e74799 100644
--- a/examples/all-clusters-app/nxp/linux-imx/imx8m/README.md
+++ b/examples/all-clusters-app/nxp/linux-imx/imx8m/README.md
@@ -1,4 +1,4 @@
To cross-compile this example on x64 host and run on **NXP i.MX 8M Mini**
**EVK**, see the associated
-[README document](../../../../../docs/guides/nxp/nxp_imx8m_linux_examples.md)
+[README document](../../../../../docs/platforms/nxp/nxp_imx8m_linux_examples.md)
for details.
diff --git a/examples/all-clusters-app/nxp/rt/rw61x/README.md b/examples/all-clusters-app/nxp/rt/rw61x/README.md
index 61d3f008697a58..df760e864e51d1 100644
--- a/examples/all-clusters-app/nxp/rt/rw61x/README.md
+++ b/examples/all-clusters-app/nxp/rt/rw61x/README.md
@@ -149,7 +149,7 @@ out/debug/chip-rw61x-all-cluster-example.
Optional GN options that can be added when building an application:
- To enable the
- [secondary network commissioning interface](../../../../../docs/guides/nxp/nxp_otbr_guide.md#using-the-secondary-network-commissioning-interface),
+ [secondary network commissioning interface](../../../../../docs/platforms/nxp/nxp_otbr_guide.md#using-the-secondary-network-commissioning-interface),
the arguments `chip_enable_secondary_nwk_if=true` and
`chip_device_config_thread_network_endpoint_id=2` must be added to the _gn
gen_ command. Note that this is only supported when building the Matter over
@@ -167,16 +167,16 @@ Optional GN options that can be added when building an application:
- To build with the option to have Matter certificates/keys pre-loaded in a
specific flash area the argument `chip_with_factory_data=1` must be added to
the _gn gen_ command. (for more information see
- [Guide for writing manufacturing data on NXP devices](../../../../../docs/guides/nxp/nxp_manufacturing_flow.md).
+ [Guide for writing manufacturing data on NXP devices](../../../../../docs/platforms/nxp/nxp_manufacturing_flow.md).
- To build the application with the OTA Requestor enabled, the arguments
`chip_enable_ota_requestor=true no_mcuboot=false` must be added to the _gn
gen_ command. (More information about the OTA Requestor feature in
- [OTA Requestor README](../../../../../docs/guides/nxp/nxp_rw61x_ota_software_update.md)
+ [OTA Requestor README](../../../../../docs/platforms/nxp/nxp_rw61x_ota_software_update.md)
## Manufacturing data
See
-[Guide for writing manufacturing data on NXP devices](../../../../../docs/guides/nxp/nxp_manufacturing_flow.md)
+[Guide for writing manufacturing data on NXP devices](../../../../../docs/platforms/nxp/nxp_manufacturing_flow.md)
Other comments:
@@ -252,7 +252,7 @@ Right click on the Project -> Debug -> As->SEGGER JLink probes -> OK -> Select e
CHIP Tool is a Matter controller which can be used to commission a Matter device
into the network. For more information regarding how to use the CHIP Tool
controller, please refer to the
-[CHIP Tool guide](../../../../../docs/guides/chip_tool_guide.md).
+[CHIP Tool guide](../../../../../docs/development_controllers/chip-tool/chip_tool_guide.md).
To know how to commission a device over BLE, follow the instructions from
[chip-tool's README.md 'Commission a device over
@@ -281,7 +281,7 @@ The "ble-thread" pairing method can be used in order to commission the device.
In order to create or join a Thread network on the Matter Border Router, the TBR
management cluster or the `otcli` commands from the matter CLI can be used. For
more information about using the TBR management cluster follow instructions from
-['Using the TBR management cluster'](../../../../../docs/guides/nxp/nxp_otbr_guide.md#using-the-thread-border-router-management-cluster).
+['Using the TBR management cluster'](../../../../../docs/platforms/nxp/nxp_otbr_guide.md#using-the-thread-border-router-management-cluster).
For more information about using the matter shell, follow instructions from
['Testing the all-clusters application with Matter CLI'](#testing-the-all-clusters-application-with-matter-cli-enabled).
@@ -407,7 +407,7 @@ Done
Over-The-Air software updates are supported with the RW61x all-clusters example.
The process to follow in order to perform a software update is described in the
dedicated guide
-['Matter Over-The-Air Software Update with NXP RW61x example applications'](../../../../../docs/guides/nxp/nxp_rw61x_ota_software_update.md).
+['Matter Over-The-Air Software Update with NXP RW61x example applications'](../../../../../docs/platforms/nxp/nxp_rw61x_ota_software_update.md).
@@ -417,4 +417,4 @@ To enable Thread Border Router support see the [build](README.md#building)
section.
The complete Border Router guide is located
-[here](../../../../../docs/guides/nxp/nxp_otbr_guide.md).
+[here](../../../../../docs/platforms/nxp/nxp_otbr_guide.md).
diff --git a/examples/all-clusters-app/nxp/zephyr/README.md b/examples/all-clusters-app/nxp/zephyr/README.md
index 54a06c62c6214c..d9038b02dd9431 100644
--- a/examples/all-clusters-app/nxp/zephyr/README.md
+++ b/examples/all-clusters-app/nxp/zephyr/README.md
@@ -201,14 +201,14 @@ the partition address: please refer to `factory_partition` defined in
#### Manually
See
-[Guide for writing manufacturing data on NXP devices](../../../../docs/guides/nxp/nxp_manufacturing_flow.md)
+[Guide for writing manufacturing data on NXP devices](../../../../docs/platforms/nxp/nxp_manufacturing_flow.md)
## OTA Software Update
See
-[Guide for OTA Software Update on NXP devices using Zephyr SDK](../../../../docs/guides/nxp/nxp_zephyr_ota_software_update.md)
+[Guide for OTA Software Update on NXP devices using Zephyr SDK](../../../../docs/platforms/nxp/nxp_zephyr_ota_software_update.md)
diff --git a/examples/all-clusters-app/openiotsdk/README.md b/examples/all-clusters-app/openiotsdk/README.md
index 269411f9f59bf9..661c331f37d627 100644
--- a/examples/all-clusters-app/openiotsdk/README.md
+++ b/examples/all-clusters-app/openiotsdk/README.md
@@ -11,7 +11,7 @@ You can use this example as a reference for creating your own application.
For information on how to build, run, test and debug this example and further
information about the platform it is run on see
-[Open IoT SDK examples](../../../docs/guides/openiotsdk_examples.md).
+[Open IoT SDK examples](../../../docs/platforms/openiotsdk/openiotsdk_examples.md).
The example name to use in the scripts is `all-clusters-app`.
@@ -31,7 +31,7 @@ follow traces in the terminal.
### Commissioning
Read the
-[Open IoT SDK commissioning guide](../../../docs/guides/openiotsdk_commissioning.md)
+[Open IoT SDK commissioning guide](../../../docs/platforms/openiotsdk/openiotsdk_commissioning.md)
to see how to use the Matter controller to commission and control the
application.
diff --git a/examples/all-clusters-minimal-app/asr/README.md b/examples/all-clusters-minimal-app/asr/README.md
index 5160ef5d4d5cf8..2a411c728a9ffb 100755
--- a/examples/all-clusters-minimal-app/asr/README.md
+++ b/examples/all-clusters-minimal-app/asr/README.md
@@ -14,7 +14,7 @@ control on ASR platform.
## Building and Commissioning
Please refer
-[Building and Commissioning](../../../docs/guides/asr_getting_started_guide.md#building-the-example-application)
+[Building and Commissioning](../../../docs/platforms/asr/asr_getting_started_guide.md#building-the-example-application)
guides to get started
```
diff --git a/examples/all-clusters-minimal-app/esp32/README.md b/examples/all-clusters-minimal-app/esp32/README.md
index 6cb3f9093da13b..4b5ca4ea729d08 100644
--- a/examples/all-clusters-minimal-app/esp32/README.md
+++ b/examples/all-clusters-minimal-app/esp32/README.md
@@ -4,16 +4,16 @@ A prototype application that demonstrates device commissioning and cluster
control.
Please
-[setup ESP-IDF and CHIP Environment](../../../docs/guides/esp32/setup_idf_chip.md)
+[setup ESP-IDF and CHIP Environment](../../../docs/platforms/esp32/setup_idf_chip.md)
and refer
-[building and commissioning](../../../docs/guides/esp32/build_app_and_commission.md)
+[building and commissioning](../../../docs/platforms/esp32/build_app_and_commission.md)
guides to get started.
---
- [Cluster control](#cluster-control)
-- [Matter OTA guide](../../../docs/guides/esp32/ota.md)
-- [RPC console and Device Tracing](../../../docs/guides/esp32/rpc_console.md)
+- [Matter OTA guide](../../../docs/platforms/esp32/ota.md)
+- [RPC console and Device Tracing](../../../docs/platforms/esp32/rpc_console.md)
---
diff --git a/examples/all-clusters-minimal-app/infineon/psoc6/README.md b/examples/all-clusters-minimal-app/infineon/psoc6/README.md
index 80b8e1ceb66791..7dc9fccf009c6c 100644
--- a/examples/all-clusters-minimal-app/infineon/psoc6/README.md
+++ b/examples/all-clusters-minimal-app/infineon/psoc6/README.md
@@ -126,4 +126,4 @@ commands. These power cycle the BlueTooth hardware and disable BR/EDR mode.
For the description of Software Update process with infineon PSoC6 example
applications see
-[Infineon PSoC6 OTA Software Update](../../../../docs/guides/infineon_psoc6_software_update.md)
+[Infineon PSoC6 OTA Software Update](../../../../docs/platforms/infineon/infineon_psoc6_software_update.md)
diff --git a/examples/all-clusters-minimal-app/mbed/README.md b/examples/all-clusters-minimal-app/mbed/README.md
index d4096cbde2f466..86226548a958d3 100644
--- a/examples/all-clusters-minimal-app/mbed/README.md
+++ b/examples/all-clusters-minimal-app/mbed/README.md
@@ -225,7 +225,8 @@ traces in the terminal.
### CHIP Tools
-Read the [MbedCommissioning](../../../docs/guides/mbedos_commissioning.md) to
+Read the
+[MbedCommissioning](../../../docs/platforms/mbedos/mbedos_commissioning.md) to
see how to use different CHIP tools to commission and control the application
within a WiFi network.
@@ -239,7 +240,7 @@ within a WiFi network.
- More details and guidelines about porting new hardware into the Matter
project with Mbed OS can be found in
- [MbedNewTarget](../../../docs/guides/mbedos_add_new_target.md)
+ [MbedNewTarget](../../../docs/platforms/mbedos/mbedos_add_new_target.md)
- Some useful information about HW platform specific settings can be found in
`all-clusters-minimal-app/mbed/mbed_app.json`.
Information about this file syntax and its meaning in mbed-os project can be
diff --git a/examples/all-clusters-minimal-app/nrfconnect/README.md b/examples/all-clusters-minimal-app/nrfconnect/README.md
index 932db10a2f2c89..b9d44a889f1fc1 100644
--- a/examples/all-clusters-minimal-app/nrfconnect/README.md
+++ b/examples/all-clusters-minimal-app/nrfconnect/README.md
@@ -41,7 +41,7 @@ This example is running on the nRF Connect platform, which is based on Nordic
Semiconductor's
[nRF Connect SDK](https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/index.html)
and [Zephyr RTOS](https://zephyrproject.org/). Visit Matter's
-[nRF Connect platform overview](../../../docs/guides/nrfconnect_platform_overview.md)
+[nRF Connect platform overview](../../../docs/platforms/nrf/nrfconnect_platform_overview.md)
to read more about the platform structure and dependencies.
By default, the Matter accessory device has IPv6 networking disabled. You must
@@ -144,7 +144,7 @@ for the predefined period of time (15 minutes by default).
**SEGGER J-Link USB port** can be used to get logs from the device or
communicate with it using the
-[command line interface](../../../docs/guides/nrfconnect_examples_cli.md).
+[command line interface](../../../docs/platforms/nrf/nrfconnect_examples_cli.md).
@@ -371,7 +371,7 @@ depending on the selected board:
those platforms support the DFU.
For more information, see the
-[Configuring nRF Connect SDK examples](../../../docs/guides/nrfconnect_examples_configuration.md)
+[Configuring nRF Connect SDK examples](../../../docs/platforms/nrf/nrfconnect_examples_configuration.md)
page.
@@ -406,19 +406,20 @@ to read more about flashing on the nRF52840 Dongle.
## Testing the example
-Check the [CLI tutorial](../../../docs/guides/nrfconnect_examples_cli.md) to
-learn how to use command-line interface of the application.
+Check the [CLI tutorial](../../../docs/platforms/nrf/nrfconnect_examples_cli.md)
+to learn how to use command-line interface of the application.
### Testing using Linux CHIPTool
-Read the [CHIP Tool user guide](../../../docs/guides/chip_tool_guide.md) to see
-how to use [CHIP Tool for Linux or mac OS](../../chip-tool/README.md) to
+Read the
+[CHIP Tool user guide](../../../docs/development_controllers/chip-tool/chip_tool_guide.md)
+to see how to use [CHIP Tool for Linux or mac OS](../../chip-tool/README.md) to
commission and control the application within a Matter-enabled Thread network.
### Testing using Android CHIPTool
Read the
-[Android commissioning guide](../../../docs/guides/nrfconnect_android_commissioning.md)
+[Android commissioning guide](../../../docs/platforms/nrf/nrfconnect_android_commissioning.md)
to see how to use [CHIPTool](../../../examples/android/CHIPTool/README.md) for
Android smartphones to commission and control the application within a
Matter-enabled Thread network.
diff --git a/examples/all-clusters-minimal-app/nxp/linux-imx/imx8m/README.md b/examples/all-clusters-minimal-app/nxp/linux-imx/imx8m/README.md
index e20ff1065d3dfb..01941f58e74799 100644
--- a/examples/all-clusters-minimal-app/nxp/linux-imx/imx8m/README.md
+++ b/examples/all-clusters-minimal-app/nxp/linux-imx/imx8m/README.md
@@ -1,4 +1,4 @@
To cross-compile this example on x64 host and run on **NXP i.MX 8M Mini**
**EVK**, see the associated
-[README document](../../../../../docs/guides/nxp/nxp_imx8m_linux_examples.md)
+[README document](../../../../../docs/platforms/nxp/nxp_imx8m_linux_examples.md)
for details.
diff --git a/examples/android/CHIPTool/README.md b/examples/android/CHIPTool/README.md
index cbd0caa5989731..415dc467d86a94 100644
--- a/examples/android/CHIPTool/README.md
+++ b/examples/android/CHIPTool/README.md
@@ -15,4 +15,5 @@ CHIPTool offers the following features:
> pairing is implemented.
For information about how to build the application, see the
-[Building Android CHIPTool](../../../docs/guides/android_building.md) guide.
+[Building Android CHIPTool](../../../docs/platforms/android/android_building.md)
+guide.
diff --git a/examples/bridge-app/asr/README.md b/examples/bridge-app/asr/README.md
index 1986037085b645..1d29b4f5e3bed5 100755
--- a/examples/bridge-app/asr/README.md
+++ b/examples/bridge-app/asr/README.md
@@ -26,7 +26,7 @@ cluster have been added as endpoints
## Building and Commissioning
Please refer
-[Building and Commissioning](../../../docs/guides/asr_getting_started_guide.md#building-the-example-application)
+[Building and Commissioning](../../../docs/platforms/asr/asr_getting_started_guide.md#building-the-example-application)
guides to get started
```
diff --git a/examples/bridge-app/esp32/README.md b/examples/bridge-app/esp32/README.md
index ac22c7f8b3a424..1d34ac6da4fd04 100644
--- a/examples/bridge-app/esp32/README.md
+++ b/examples/bridge-app/esp32/README.md
@@ -1,9 +1,9 @@
# Matter ESP32 Bridge App Example
Please
-[setup ESP-IDF and Matter Environment](../../../docs/guides/esp32/setup_idf_chip.md)
+[setup ESP-IDF and Matter Environment](../../../docs/platforms/esp32/setup_idf_chip.md)
and refer
-[building and commissioning](../../../docs/guides/esp32/build_app_and_commission.md)
+[building and commissioning](../../../docs/platforms/esp32/build_app_and_commission.md)
guides to get started.
---
diff --git a/examples/chip-tool/README.md b/examples/chip-tool/README.md
index f702e202ac6e86..b9d5f148dfdf91 100644
--- a/examples/chip-tool/README.md
+++ b/examples/chip-tool/README.md
@@ -599,4 +599,4 @@ Usage:
To learn more about the tool, how to build it, use its commands and advanced
features, read the following guide:
-- [Working with the CHIP Tool](https://github.com/project-chip/connectedhomeip/tree/master/docs/guides/chip_tool_guide.md)
+- [Working with the CHIP Tool](https://github.com/project-chip/connectedhomeip/tree/master/docs/development_controllers/chip-tool/chip_tool_guide.md)
diff --git a/examples/chip-tool/py_matter_chip_tool_adapter/matter_chip_tool_adapter/decoder.py b/examples/chip-tool/py_matter_chip_tool_adapter/matter_chip_tool_adapter/decoder.py
index 73b451c826f06e..733672dc790b63 100644
--- a/examples/chip-tool/py_matter_chip_tool_adapter/matter_chip_tool_adapter/decoder.py
+++ b/examples/chip-tool/py_matter_chip_tool_adapter/matter_chip_tool_adapter/decoder.py
@@ -386,6 +386,13 @@ def run(self, specs, value, cluster_name: str, typename: str, array: bool):
del value[key_name]
elif isinstance(value, list) and array:
+ # Instead of using `False` for the last parameter (array), `isinstance(v, list)` is used.
+ # While the data model specification does not include lists of lists, the format returned
+ # by the Matter.framework for *ById APIs may contain them.
+ # For example, the command:
+ # darwin-framework-tool any read-by-id 29 0 0x12344321 65535
+ # returns value such as:
+ # [[{'DeviceType': 17, 'Revision': 1}, {'DeviceType': 22, 'Revision': 1}], ...]
value = [self.run(specs, v, cluster_name, typename, isinstance(v, list))
for v in value]
diff --git a/examples/contact-sensor-app/linux/README.md b/examples/contact-sensor-app/linux/README.md
index e71ea89feb7eab..ca5ca7b63aa453 100644
--- a/examples/contact-sensor-app/linux/README.md
+++ b/examples/contact-sensor-app/linux/README.md
@@ -7,7 +7,7 @@ document is tested on **Ubuntu for Raspberry Pi Server 20.04 LTS (aarch64)** and
To cross-compile this example on an x64 host and run it on **NXP i.MX 8M Mini**
**EVK**, see the associated
-[README document](../../../docs/guides/nxp/nxp_imx8m_linux_examples.md) for
+[README document](../../../docs/platforms/nxp/nxp_imx8m_linux_examples.md) for
details.
diff --git a/examples/contact-sensor-app/nxp/README.md b/examples/contact-sensor-app/nxp/README.md
index 20474bea76057c..803f067ce3de72 100644
--- a/examples/contact-sensor-app/nxp/README.md
+++ b/examples/contact-sensor-app/nxp/README.md
@@ -136,7 +136,7 @@ corresponding to data model target.
Use `chip_with_factory_data=1` in the gn build command to enable factory data.
For a full guide on manufacturing flow, please see
-[Guide for writing manufacturing data on NXP devices](../../../docs/guides/nxp/nxp_manufacturing_flow.md).
+[Guide for writing manufacturing data on NXP devices](../../../docs/platforms/nxp/nxp_manufacturing_flow.md).
### Long Idle Time ICD Support
diff --git a/examples/contact-sensor-app/nxp/k32w0/README.md b/examples/contact-sensor-app/nxp/k32w0/README.md
index 305aa0b176af2a..bc39009afc3cb9 100644
--- a/examples/contact-sensor-app/nxp/k32w0/README.md
+++ b/examples/contact-sensor-app/nxp/k32w0/README.md
@@ -351,7 +351,7 @@ Please use the following build args:
## Manufacturing data
See
-[Guide for writing manufacturing data on NXP devices](../../../../docs/guides/nxp/nxp_manufacturing_flow.md).
+[Guide for writing manufacturing data on NXP devices](../../../../docs/platforms/nxp/nxp_manufacturing_flow.md).
There are factory data generated binaries available in
`third_party/nxp/nxp_matter_support/examples/platform/k32w0/scripts/demo_generated_factory_data`
@@ -618,7 +618,7 @@ internal flash space can be found in the
The steps for building the SSBL binary with appropriate configuration and
writing to the board the binary and other OTA related configurations are
described in the
-[K32W0x1 OTA guide](../../../../docs/guides/nxp/nxp_k32w0_ota_guide.md).
+[K32W0x1 OTA guide](../../../../docs/platforms/nxp/nxp_k32w0_ota_guide.md).
Note that the application needs to be built using the
`chip_enable_ota_requestor=true` option. This is enabled in the configuration by
diff --git a/examples/contact-sensor-app/nxp/k32w1/README.md b/examples/contact-sensor-app/nxp/k32w1/README.md
index 5f47979e2d25bb..20feba0c01d6b2 100644
--- a/examples/contact-sensor-app/nxp/k32w1/README.md
+++ b/examples/contact-sensor-app/nxp/k32w1/README.md
@@ -165,4 +165,4 @@ Run -> Debug Configurations... -> C/C++ Application
## OTA
Please see
-[k32w1 OTA guide](../../../../docs/guides/nxp/nxp_mcxw71_ota_guide.md).
+[k32w1 OTA guide](../../../../docs/platforms/nxp/nxp_mcxw71_ota_guide.md).
diff --git a/examples/contact-sensor-app/nxp/mcxw71/README.md b/examples/contact-sensor-app/nxp/mcxw71/README.md
index 50d33e10e1b841..d5b1927722b508 100644
--- a/examples/contact-sensor-app/nxp/mcxw71/README.md
+++ b/examples/contact-sensor-app/nxp/mcxw71/README.md
@@ -191,4 +191,4 @@ Run -> Debug Configurations... -> C/C++ Application
## OTA
Please see
-[mcxw71 OTA guide](../../../../docs/guides/nxp/nxp_mcxw71_ota_guide.md).
+[mcxw71 OTA guide](../../../../docs/platforms/nxp/nxp_mcxw71_ota_guide.md).
diff --git a/examples/darwin-framework-tool/BUILD.gn b/examples/darwin-framework-tool/BUILD.gn
index 5e7b7d641030b8..0d1e142f1074df 100644
--- a/examples/darwin-framework-tool/BUILD.gn
+++ b/examples/darwin-framework-tool/BUILD.gn
@@ -190,10 +190,16 @@ executable("darwin-framework-tool") {
"commands/common/CHIPCommandBridge.mm",
"commands/common/CHIPCommandStorageDelegate.mm",
"commands/common/CHIPToolKeypair.mm",
+ "commands/common/CertificateIssuer.h",
+ "commands/common/CertificateIssuer.mm",
+ "commands/common/ControllerStorage.h",
+ "commands/common/ControllerStorage.mm",
"commands/common/MTRDevice_Externs.h",
"commands/common/MTRError.mm",
"commands/common/MTRError_Utils.h",
"commands/common/MTRLogging.h",
+ "commands/common/PreferencesStorage.h",
+ "commands/common/PreferencesStorage.mm",
"commands/common/RemoteDataModelLogger.h",
"commands/common/RemoteDataModelLogger.mm",
"commands/configuration/Commands.h",
diff --git a/examples/darwin-framework-tool/commands/common/CHIPCommandBridge.h b/examples/darwin-framework-tool/commands/common/CHIPCommandBridge.h
index 9458d304dbebb2..f58251bff48dd0 100644
--- a/examples/darwin-framework-tool/commands/common/CHIPCommandBridge.h
+++ b/examples/darwin-framework-tool/commands/common/CHIPCommandBridge.h
@@ -41,6 +41,8 @@ class CHIPCommandBridge : public Command {
"Sets the commissioner node ID of the given "
"commissioner-name. Interactive mode will only set a single commissioner on the inital command. "
"The commissioner node ID will be persisted until a different one is specified.");
+ AddArgument("commissioner-shared-storage", 0, 1, &mCommissionerSharedStorage,
+ "Use a shared storage instance instead of individual storage for each commissioner. Default is true.");
AddArgument("paa-trust-store-path", &mPaaTrustStorePath,
"Path to directory holding PAA certificate information. Can be absolute or relative to the current working "
"directory.");
@@ -87,6 +89,7 @@ class CHIPCommandBridge : public Command {
// This method returns the commissioner instance to be used for running the command.
MTRDeviceController * CurrentCommissioner();
+ NSNumber * CurrentCommissionerFabricId();
MTRDeviceController * GetCommissioner(const char * identity);
@@ -130,6 +133,8 @@ class CHIPCommandBridge : public Command {
void StopWaiting();
CHIP_ERROR MaybeSetUpStack();
+ CHIP_ERROR SetUpStackWithSharedStorage(NSArray * productAttestationAuthorityCertificates);
+ CHIP_ERROR SetUpStackWithPerControllerStorage(NSArray * productAttestationAuthorityCertificates);
void MaybeTearDownStack();
CHIP_ERROR GetPAACertsFromFolder(NSArray * __autoreleasing * paaCertsResult);
@@ -140,6 +145,9 @@ class CHIPCommandBridge : public Command {
// The current controller; the one the current command should be using.
MTRDeviceController * mCurrentController;
+ static bool sUseSharedStorage;
+ chip::Optional mCommissionerSharedStorage;
+
std::condition_variable cvWaitingForResponse;
std::mutex cvWaitingForResponseMutex;
chip::Optional mCommissionerName;
@@ -148,4 +156,5 @@ class CHIPCommandBridge : public Command {
static dispatch_queue_t mOTAProviderCallbackQueue;
chip::Optional mPaaTrustStorePath;
chip::Optional mCommissionerVendorId;
+ std::string mCurrentIdentity;
};
diff --git a/examples/darwin-framework-tool/commands/common/CHIPCommandBridge.mm b/examples/darwin-framework-tool/commands/common/CHIPCommandBridge.mm
index d52c29a5b04c8a..724a9a20c3a571 100644
--- a/examples/darwin-framework-tool/commands/common/CHIPCommandBridge.mm
+++ b/examples/darwin-framework-tool/commands/common/CHIPCommandBridge.mm
@@ -23,7 +23,11 @@
#include
#include
+#include // for chip::kTestControllerNodeId
+#import "CHIPCommandStorageDelegate.h"
+#import "CertificateIssuer.h"
+#import "ControllerStorage.h"
#include "MTRError_Utils.h"
#include