diff --git a/docs/guides/esp32/README.md b/docs/guides/esp32/README.md
index 0cdead51a8c289..ebdfaac513209d 100644
--- a/docs/guides/esp32/README.md
+++ b/docs/guides/esp32/README.md
@@ -1,6 +1,11 @@
## Espressif (ESP32) Getting Started Guide
----
+```{toctree}
+:glob:
+:maxdepth: 1
+
+*
+```
Please follow the steps below to create and test a fully functional Matter
example on ESP32 series of SoCs
@@ -11,5 +16,3 @@ example on ESP32 series of SoCs
- [Flash and NVS encryption for securing factory data](flash_nvs_encryption.md)
- [RPC Console and Device Tracing](rpc_console.md)
- [Matter OTA](ota.md)
-
----
diff --git a/docs/guides/index.md b/docs/guides/index.md
index aeebfc4f4fa335..aa955c8e9ce7ec 100644
--- a/docs/guides/index.md
+++ b/docs/guides/index.md
@@ -7,4 +7,5 @@ Read the following guides for general information about Matter SDK configuration
:maxdepth: 1
*
+esp32/README
```
\ No newline at end of file
diff --git a/examples/all-clusters-app/infineon/psoc6/README.md b/examples/all-clusters-app/infineon/psoc6/README.md
index c347753b7a3cd1..8bc3438269a170 100644
--- a/examples/all-clusters-app/infineon/psoc6/README.md
+++ b/examples/all-clusters-app/infineon/psoc6/README.md
@@ -16,8 +16,6 @@ An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
-
-
## Introduction
The PSoC6 clusters example provides a baseline demonstration of a Cluster
@@ -29,8 +27,6 @@ and the Matter controller will exchange security information with the Rendezvous
procedure. Wi-Fi Network credentials are then provided to the PSoC6 device which
will then join the network.
-
-
## Building
- [Modustoolbox Software](https://www.cypress.com/products/modustoolbox)
@@ -61,8 +57,6 @@ will then join the network.
$ cd ~/connectedhomeip
$ rm -rf out/
-
-
## Flashing the Application
- Put CY8CKIT-062S2-43012 board on KitProg3 CMSIS-DAP Mode by pressing the
@@ -74,14 +68,10 @@ will then join the network.
$ cd ~/connectedhomeip
$ python3 out/infineon-psoc6-all-clusters/chip-psoc6-clusters-example.flash.py
-
-
## Commissioning and cluster control
Commissioning can be carried out using BLE.
-
-
### Setting up Chip tool
Once PSoC6 is up and running, we need to set up chip-tool on Raspberry Pi 4 to
@@ -96,8 +86,6 @@ perform commissioning and cluster control.
$ ./out/debug/chip-tool
-
-
### Commissioning over BLE
Run the built executable and pass it the discriminator and pairing code of the
@@ -112,8 +100,6 @@ remote device, as well as the network credentials to use.
4. SSID : Wi-Fi SSID
5. PASSWORD : Wi-Fi Password
-
-
#### Notes
Raspberry Pi 4 BLE connection issues can be avoided by running the following
diff --git a/examples/light-switch-app/esp32/README.md b/examples/light-switch-app/esp32/README.md
index ab5c0b32aa2208..2318c68f38c5f2 100644
--- a/examples/light-switch-app/esp32/README.md
+++ b/examples/light-switch-app/esp32/README.md
@@ -5,8 +5,6 @@ This example demonstrates the Matter Light-switch application on ESP platforms.
---
- [Matter ESP32 Light-switch Example](#matter-esp32-light-switch-example)
- - [Supported Devices](#supported-devices)
- - [Building the Example Application](#building-the-example-application)
- [Commissioning over BLE using chip-tool](#commissioning-over-ble-using-chip-tool)
- [Testing the example](#testing-the-example)
diff --git a/examples/lighting-app/beken/README.md b/examples/lighting-app/beken/README.md
index 12fa6683d162e6..2ae904fc7fd043 100755
--- a/examples/lighting-app/beken/README.md
+++ b/examples/lighting-app/beken/README.md
@@ -4,7 +4,7 @@ This example demonstrates the Matter Lighting application on BEKEN platforms.
---
-- [Matter BEKEN Lighting Example](#matter-BEKEN-lighting-example)
+- [Matter BEKEN Lighting Example](#matter-beken-lighting-example)
- [Supported Devices](#supported-devices)
- [Building the Example Application](#building-the-example-application)
- [Commissioning over BLE using chip-tool](#commissioning-over-ble-using-chip-tool)
diff --git a/examples/lighting-app/infineon/psoc6/README.md b/examples/lighting-app/infineon/psoc6/README.md
index ea229f0f391029..eb4630918cf116 100644
--- a/examples/lighting-app/infineon/psoc6/README.md
+++ b/examples/lighting-app/infineon/psoc6/README.md
@@ -1,10 +1,10 @@
-#CHIP PSoC6 Lighting Example
+# CHIP PSoC6 Lighting Example
An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
-- [Matter PSoC6 Lighting Example](#chip-psoc6-Lighting-example)
+- [Matter PSoC6 Lighting Example](#chip-psoc6-lighting-example)
- [Introduction](#introduction)
- [Building](#building)
- [Flashing the Application](#flashing-the-application)
@@ -17,8 +17,6 @@ An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
-
-
## Introduction
The PSoC6 lighting example provides a baseline demonstration of a Light control
@@ -30,8 +28,6 @@ and the Matter controller will exchange security information with the Rendezvous
procedure. Wi-Fi Network credentials are then provided to the PSoC6 device which
will then join the network.
-
-
## Building
- [Modustoolbox Software](https://www.cypress.com/products/modustoolbox)
@@ -58,8 +54,6 @@ will then join the network.
$ cd ~/connectedhomeip
$ rm -rf out/
-
-
## Flashing the Application
- Put CY8CKIT-062S2-43012 board on KitProg3 CMSIS-DAP Mode by pressing the
@@ -71,14 +65,10 @@ will then join the network.
$ cd ~/connectedhomeip
$ python3 out/infineon-psoc6-light/chip-psoc6-lighting-example.flash.py
-
-
## Commissioning and cluster control
Commissioning can be carried out using BLE.
-
-
### Setting up Chip tool
Once PSoC6 is up and running, we need to set up chip-tool on Raspberry Pi 4 to
@@ -93,8 +83,6 @@ perform commissioning and cluster control.
$ ./out/debug/chip-tool
-
-
### Commissioning over BLE
Run the built executable and pass it the discriminator and pairing code of the
@@ -109,8 +97,6 @@ remote device, as well as the network credentials to use.
4. SSID : Wi-Fi SSID
5. PASSWORD : Wi-Fi Password
-
-
#### Notes
Raspberry Pi 4 BLE connection issues can be avoided by running the following
@@ -120,8 +106,6 @@ commands. These power cycle the BlueTooth hardware and disable BR/EDR mode.
$ sudo btmgmt -i hci0 bredr off
$ sudo btmgmt -i hci0 power on
-
-
### Cluster control
- After successful commissioning, use the OnOff cluster command to toggle
diff --git a/examples/lock-app/infineon/psoc6/README.md b/examples/lock-app/infineon/psoc6/README.md
index 99d35715942980..3b22e9e0d91f85 100644
--- a/examples/lock-app/infineon/psoc6/README.md
+++ b/examples/lock-app/infineon/psoc6/README.md
@@ -4,7 +4,7 @@ An example showing the use of Matter on the Infineon CY8CKIT-062S2-43012 board.
-- [Matter PSoC6 Lock Example](#chip-psoc6-lock-example)
+- [Matter PSoC6 Lock Example](#matter-psoc6-lock-example)
- [Introduction](#introduction)
- [Building](#building)
- [Flashing the Application](#flashing-the-application)
@@ -125,4 +125,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/guides/infineon_psoc6_software_update.md)
diff --git a/examples/ota-requestor-app/esp32/README.md b/examples/ota-requestor-app/esp32/README.md
index 228e38bb3a7c56..4fb56712670429 100644
--- a/examples/ota-requestor-app/esp32/README.md
+++ b/examples/ota-requestor-app/esp32/README.md
@@ -13,7 +13,6 @@ guides to get started.
- [Prerequisite](#prerequisite)
- [Query for an OTA Image](#query-for-an-ota-image)
- [ESP32 OTA Requestor with Linux OTA Provider](#esp32-ota-requestor-with-linux-ota-provider)
-- [Generate OTA image](#generate-ota-image)
- [RPC console and Device Tracing](../../../docs/guides/esp32/rpc_console.md)
---
diff --git a/examples/ota-requestor-app/p6/README.md b/examples/ota-requestor-app/p6/README.md
deleted file mode 100644
index cfe189e66fb9c6..00000000000000
--- a/examples/ota-requestor-app/p6/README.md
+++ /dev/null
@@ -1,128 +0,0 @@
-# CHIP P6 OTA Requestor Example
-
-An example demonstrating the OTA Requestor cluster on a Infineon
-CY8CKIT-062S2-43012 board.
-
-
-
-- [Matter P6 OTA Requestor Example](#chip-p6-ota-requestor-example)
- - [Introduction](#introduction)
- - [Building](#building)
- - [Flashing the Application](#flashing-the-application)
- - [Running OTA Update Process](#running-ota-update-process)
- - [Notes](#notes)
-
-
-
-## Introduction
-
-The P6 OTA Requestor example provides a baseline demonstration of a OTA
-requestor device, built using Matter and the Infineon Modustoolbox SDK. It can
-be controlled by Matter controller over Wi-Fi network.
-
-The P6 device can be commissioned over Bluetooth Low Energy where the device and
-the Matter controller will exchange security information with the Rendezvous
-procedure. Wi-Fi Network credentials are then provided to the P6 device which
-will then join the network.
-
-## Building
-
-- [Modustoolbox Software](https://www.cypress.com/products/modustoolbox)
-
- Refer to `integrations/docker/images/chip-build-infineon/Dockerfile` or
- `scripts/examples/gn_p6_example.sh` for downloading the Software and related
- tools.
-
-- Install some additional tools (likely already present for Matter
- developers): \$ sudo apt install gcc g++ clang ninja-build python
- python3-venv libssl-dev libavahi-client-dev libglib2.0-dev git cmake
- python3-pip
-
-- Supported hardware:
- [CY8CKIT-062S2-43012](https://www.cypress.com/CY8CKIT-062S2-43012)
-
-* The following applications must be built to demonstrate the OTA process:
-
- - The P6 OTA Requestor App
- - The Updated P6 OTA Requestor App (or other app)
- - An OTA Provider App (the Linux ota-provider app is used here)
- - chip-tool
-
-* Build the P6 OTA Requestor application from the chip root dir:
-
- $ ./examples/ota-requestor-app/p6/ota_base_build.sh
-
-* Build the P6 OTA Update application from the chip root dir:
-
- $ ./examples/ota-requestor-app/p6/ota_update_build.sh
-
-* On a RPi4: Build the Linux OTA Provider application from the chip root dir:
-
- $ ./scripts/examples/gn_build_example.sh examples/ota-provider-app/linux/ out/ota_provider_debug/ chip_config_network_layer_ble=false
-
-* On a RPi4: Build chip-tool:
-
- $ ./scripts/examples/gn_build_example.sh examples/chip-tool/ out/chip-tool/
-
-* Additionally a pre-compiled bootloader must be flashed to the board. This
- can be found at:
-
- $ ./third_party/p6/p6_sdk/ota/matter-psoc6-mcuboot-bootloader.hex
-
-## Flashing the Application
-
-- Flash the bootloader by first putting the CY8CKIT-062S2-43012 board into
- KitProg3 DAPLINK Mode by pressing the `MODE SELECT` button.
- `KITPROG3 STATUS` LED will blink to indicate the the board is in the proper
- mode. A drive named 'DAPLINK' should be automatically mounted. To flash
- drag-and-drop matter-psoc6-mcuboot-bootloader.hex into that drive.
-
-- Put CY8CKIT-062S2-43012 board back into KitProg3 CMSIS-DAP Mode by pressing
- the `MODE SELECT` button. `KITPROG3 STATUS` LED is ON confirms board is in
- proper mode.
-
-- On the command line:
-
- $ cd ~/connectedhomeip
- $ python3 out/ota_requestor_debug/chip-p6-ota-requestor-example.flash.py
-
-### Running OTA Update Process
-
-- Make sure the ota-requestor-app is flashed and booting on the
- CY8CKIT-062S2-43012.
-
-- Transfer out/ota_requestor_update_debug/chip-p6-ota-requestor-example.bin to
- a RPi4.
-
-- On the RPi: In terminal 1 run the Linux ota-provider-app as follows:
-
- $ ./out/ota_provider_debug/chip-ota-provider-app -f chip-p6-ota-requestor-example.bin
-
-- On the RPi: In terminal 2 run the following chip-tool commands
-
- $ ./out/chip-tool/chip-tool pairing ble-wifi 2 "" "" 20202021 3840
-
- $ ./out/chip-tool/chip-tool pairing onnetwork 1 20202021
-
- $ ./chip-tool accesscontrol write acl '[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [1, 2], "targets": [{"cluster": null, "endpoint": 0, "deviceType": null}]}]' 1 0
-
- $ ./chip-tool accesscontrol write acl '[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": [1, 2], "targets": [{"cluster": null, "endpoint": 0, "deviceType": null}]}]' 2 0
-
- $ ./chip-tool otasoftwareupdaterequestor write default-ota-providers '[{"fabricIndex": 1, "providerNodeID": 1, "endpoint": 0}]' 2 0
-
-- Press user button 1 on the CY8CKIT-062S2-43012. This will trigger a
- query-image call from the board using the default ota provider list written
- in the above commands.
-
-- Using a serial emulator reading from the CY8CKIT-062S2-43012, you should
- observe the updated application being transferred to the board, written to
- flash, and, when completed, booted into.
-
-#### Notes
-
-Raspberry Pi 4 BLE connection issues can be avoided by running the following
-commands. These power cycle the BlueTooth hardware and disable BR/EDR mode.
-
- $ sudo btmgmt -i hci0 power off
- $ sudo btmgmt -i hci0 bredr off
- $ sudo btmgmt -i hci0 power on
diff --git a/examples/persistent-storage/infineon/psoc6/README.md b/examples/persistent-storage/infineon/psoc6/README.md
index 9a6ca8139f272c..f42617e7f3350c 100644
--- a/examples/persistent-storage/infineon/psoc6/README.md
+++ b/examples/persistent-storage/infineon/psoc6/README.md
@@ -4,9 +4,9 @@ An example testing and demonstrating the key value storage API.
-- [CHIP PSoC6 Persistent Storage Example](#chip-PSoC6-persistent-storage-example)
+- [CHIP PSoC6 Persistent Storage Example](#chip-psoc6-persistent-storage-example)
- [Introduction](#introduction)
- - [PSoC6](#PSoC6)
+ - [PSoC6](#psoc6)
- [Building](#building)
- [Flashing the Application](#flashing-the-application)
@@ -21,8 +21,6 @@ to use the API.
In the future this example can be moved into a unit test when available on all
platforms.
-
-
## PSoC6
The Infineon PSoC6 platform KVS is fully implemented, the KVS is enabled and