Skip to content

Commit 54a8903

Browse files
committed
Few documentation fixes
- Added some docs for attribute and identify callback - mfg_tool: Add the sourcing of esp-idf's export.sh script - Added the link for getting the repository in top level README.md - Table for Matter specification version and release branches - FAQ for stuck at "Solving dependencies requirements" - Change the link and doc in rainmaker example
1 parent 1cacb8b commit 54a8903

File tree

16 files changed

+89
-5
lines changed

16 files changed

+89
-5
lines changed

README.md

+16-2
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,24 @@
77

88
Espressif's SDK for Matter is the official Matter development framework for ESP32 series SoCs. It is built on top of the [open source Matter SDK](https://github.com/project-chip/connectedhomeip/), and provides simplified APIs, commonly used peripherals, tools and utilities for security, manufacturing and production accompanied by exhaustive documentation. It includes rich production references, aimed to simplify the development process of Matter products and enable the users to go to production in the shortest possible time.
99

10-
1110
[Supported Device Types](SUPPORTED_DEVICE_TYPES.md)
1211

1312

13+
## Supported Matter specification versions
14+
15+
| Matter Specification Version | Supported Branch |
16+
|:----------------------------:|:-------------------------------------------------------------------------:|
17+
| v1.0 | [release/v1.0](https://github.com/espressif/esp-matter/tree/release/v1.0) |
18+
| v1.1 | [release/v1.1](https://github.com/espressif/esp-matter/tree/release/v1.1) |
19+
| v1.2 (Ongoing effort) | [main](https://github.com/espressif/esp-matter/tree/main) |
20+
21+
22+
## Getting the repositories
23+
24+
For efficient cloning of the ESP-Matter repository, please refer
25+
[Getting the Repositories](https://docs.espressif.com/projects/esp-matter/en/latest/esp32/developing.html#getting-the-repositories)
26+
section in the ESP-Matter Programming Guide.
27+
1428
## Supported ESP-IDF and connectedhomeip versions
1529

1630
- This SDK currently works with [5b4f800](https://github.com/project-chip/connectedhomeip/commit/5b4f8004662d00bdb111367fec7d3ea978c23372) of connectedhomeip.
@@ -23,7 +37,7 @@ Refer the [Programming Guide](https://docs.espressif.com/projects/esp-matter/en/
2337

2438

2539
## Matter Specifications
26-
Download the Matter 1.0 specifications from [CSA's official site](https://csa-iot.org/developer-resource/specifications-download-request/)
40+
Download the Matter specification from [CSA's official site](https://csa-iot.org/developer-resource/specifications-download-request/)
2741

2842
---
2943

components/esp_matter/esp_matter_endpoint.h

+9
Original file line numberDiff line numberDiff line change
@@ -531,6 +531,15 @@ typedef struct config {
531531
endpoint::root_node::config_t root_node;
532532
} config_t;
533533

534+
/**
535+
* @param[in] config Configuration of the root node, a pointer to an object of type `node::config_t`.
536+
* @param[in] attribute_callback This callback is called for every attribute update. The callback implementation shall
537+
* handle the desired attributes and return an appropriate error code. If the attribute
538+
* is not of your interest, please do not return an error code and strictly return ESP_OK.
539+
* @param[in] identify_callback This callback is invoked when clients interact with the Identify Cluster.
540+
* In the callback implementation, an endpoint can identify itself.
541+
* (e.g., by flashing an LED or light).
542+
*/
534543
node_t *create(config_t *config, attribute::callback_t attribute_callback,
535544
identification::callback_t identify_callback);
536545

docs/en/faq.rst

+15
Original file line numberDiff line numberDiff line change
@@ -337,3 +337,18 @@ the following configuration options:
337337
- The software version number of the OTA image must be numerically higher.
338338
- If you need to perform a functional rollback, the version number in the OTA image must be higher than the current
339339
version, even though the binary content may match the previous OTA image.
340+
341+
342+
A1.13 Stuck at "Solving dependencies requirements ....."
343+
--------------------------------------------------------
344+
345+
When building an example, if it is stuck at "Solving dependencies requirements..."
346+
you can resolve this issue by clearing the component manager cache.
347+
348+
::
349+
350+
# On Linux
351+
rm -rf ~/.cache/Espressif/ComponentManager
352+
353+
# On macOS
354+
rm -rf ~/Library/Caches/Espressif/ComponentManager

examples/all_device_types_app/main/app_main.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -73,13 +73,18 @@ static void app_event_cb(const ChipDeviceEvent *event, intptr_t arg)
7373
}
7474
}
7575

76+
// This callback is invoked when clients interact with the Identify Cluster.
77+
// In the callback implementation, an endpoint can identify itself. (e.g., by flashing an LED or light).
7678
static esp_err_t app_identification_cb(identification::callback_type_t type, uint16_t endpoint_id, uint8_t effect_id,
7779
uint8_t effect_variant, void *priv_data)
7880
{
7981
ESP_LOGI(TAG, "Identification callback: type: %d, effect: %d", type, effect_id);
8082
return ESP_OK;
8183
}
8284

85+
// This callback is called for every attribute update. The callback implementation shall
86+
// handle the desired attributes and return an appropriate error code. If the attribute
87+
// is not of your interest, please do not return an error code and strictly return ESP_OK.
8388
static esp_err_t app_attribute_update_cb(attribute::callback_type_t type, uint16_t endpoint_id, uint32_t cluster_id,
8489
uint32_t attribute_id, esp_matter_attr_val_t *val, void *priv_data)
8590
{

examples/blemesh_bridge/main/app_main.cpp

+3
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,9 @@ static void app_event_cb(const ChipDeviceEvent *event, intptr_t arg)
6363
}
6464
}
6565

66+
// This callback is called for every attribute update. The callback implementation shall
67+
// handle the desired attributes and return an appropriate error code. If the attribute
68+
// is not of your interest, please do not return an error code and strictly return ESP_OK.
6669
static esp_err_t app_attribute_update_cb(callback_type_t type, uint16_t endpoint_id, uint32_t cluster_id,
6770
uint32_t attribute_id, esp_matter_attr_val_t *val, void *priv_data)
6871
{

examples/esp-now_bridge_light/main/app_main.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,18 @@ static void app_event_cb(const ChipDeviceEvent *event, intptr_t arg)
6363
}
6464
}
6565

66+
// This callback is invoked when clients interact with the Identify Cluster.
67+
// In the callback implementation, an endpoint can identify itself. (e.g., by flashing an LED or light).
6668
static esp_err_t app_identification_cb(identification::callback_type_t type, uint16_t endpoint_id, uint8_t effect_id,
6769
uint8_t effect_variant, void *priv_data)
6870
{
6971
ESP_LOGI(TAG, "Identification callback: type: %d, effect: %d", type, effect_id);
7072
return ESP_OK;
7173
}
7274

75+
// This callback is called for every attribute update. The callback implementation shall
76+
// handle the desired attributes and return an appropriate error code. If the attribute
77+
// is not of your interest, please do not return an error code and strictly return ESP_OK.
7378
static esp_err_t app_attribute_update_cb(attribute::callback_type_t type, uint16_t endpoint_id, uint32_t cluster_id,
7479
uint32_t attribute_id, esp_matter_attr_val_t *val, void *priv_data)
7580
{

examples/generic_switch/main/app_main.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -66,13 +66,18 @@ static void app_event_cb(const ChipDeviceEvent *event, intptr_t arg)
6666
}
6767
}
6868

69+
// This callback is invoked when clients interact with the Identify Cluster.
70+
// In the callback implementation, an endpoint can identify itself. (e.g., by flashing an LED or light).
6971
static esp_err_t app_identification_cb(identification::callback_type_t type, uint16_t endpoint_id, uint8_t effect_id,
7072
uint8_t effect_variant, void *priv_data)
7173
{
7274
ESP_LOGI(TAG, "Identification callback: type: %u, effect: %u, variant: %u", type, effect_id, effect_variant);
7375
return ESP_OK;
7476
}
7577

78+
// This callback is called for every attribute update. The callback implementation shall
79+
// handle the desired attributes and return an appropriate error code. If the attribute
80+
// is not of your interest, please do not return an error code and strictly return ESP_OK.
7681
static esp_err_t app_attribute_update_cb(attribute::callback_type_t type, uint16_t endpoint_id, uint32_t cluster_id,
7782
uint32_t attribute_id, esp_matter_attr_val_t *val, void *priv_data)
7883
{

examples/light/main/app_main.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -111,13 +111,18 @@ static void app_event_cb(const ChipDeviceEvent *event, intptr_t arg)
111111
}
112112
}
113113

114+
// This callback is invoked when clients interact with the Identify Cluster.
115+
// In the callback implementation, an endpoint can identify itself. (e.g., by flashing an LED or light).
114116
static esp_err_t app_identification_cb(identification::callback_type_t type, uint16_t endpoint_id, uint8_t effect_id,
115117
uint8_t effect_variant, void *priv_data)
116118
{
117119
ESP_LOGI(TAG, "Identification callback: type: %u, effect: %u, variant: %u", type, effect_id, effect_variant);
118120
return ESP_OK;
119121
}
120122

123+
// This callback is called for every attribute update. The callback implementation shall
124+
// handle the desired attributes and return an appropriate error code. If the attribute
125+
// is not of your interest, please do not return an error code and strictly return ESP_OK.
121126
static esp_err_t app_attribute_update_cb(attribute::callback_type_t type, uint16_t endpoint_id, uint32_t cluster_id,
122127
uint32_t attribute_id, esp_matter_attr_val_t *val, void *priv_data)
123128
{

examples/light_switch/main/app_main.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,18 @@ static void app_event_cb(const ChipDeviceEvent *event, intptr_t arg)
6363
}
6464
}
6565

66+
// This callback is invoked when clients interact with the Identify Cluster.
67+
// In the callback implementation, an endpoint can identify itself. (e.g., by flashing an LED or light).
6668
static esp_err_t app_identification_cb(identification::callback_type_t type, uint16_t endpoint_id, uint8_t effect_id,
6769
uint8_t effect_variant, void *priv_data)
6870
{
6971
ESP_LOGI(TAG, "Identification callback: type: %u, effect: %u, variant: %u", type, effect_id, effect_variant);
7072
return ESP_OK;
7173
}
7274

75+
// This callback is called for every attribute update. The callback implementation shall
76+
// handle the desired attributes and return an appropriate error code. If the attribute
77+
// is not of your interest, please do not return an error code and strictly return ESP_OK.
7378
static esp_err_t app_attribute_update_cb(callback_type_t type, uint16_t endpoint_id, uint32_t cluster_id,
7479
uint32_t attribute_id, esp_matter_attr_val_t *val, void *priv_data)
7580
{

examples/rainmaker/README.md

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# RainMaker
2+
3+
RainMaker Matter examples are available in
4+
[esp-rainmaker](https://github.com/espressif/esp-rainmaker/tree/master/examples/matter) repository.

examples/rainmaker_light/README.md

-3
This file was deleted.

examples/refrigerator/main/app_main.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,18 @@ static void app_event_cb(const ChipDeviceEvent *event, intptr_t arg)
6565
}
6666
}
6767

68+
// This callback is invoked when clients interact with the Identify Cluster.
69+
// In the callback implementation, an endpoint can identify itself. (e.g., by flashing an LED or light).
6870
static esp_err_t app_identification_cb(identification::callback_type_t type, uint16_t endpoint_id, uint8_t effect_id,
6971
uint8_t effect_variant, void *priv_data)
7072
{
7173
ESP_LOGI(TAG, "Identification callback: type: %u, effect: %u, variant: %u", type, effect_id, effect_variant);
7274
return ESP_OK;
7375
}
7476

77+
// This callback is called for every attribute update. The callback implementation shall
78+
// handle the desired attributes and return an appropriate error code. If the attribute
79+
// is not of your interest, please do not return an error code and strictly return ESP_OK.
7580
static esp_err_t app_attribute_update_cb(callback_type_t type, uint16_t endpoint_id, uint32_t cluster_id,
7681
uint32_t attribute_id, esp_matter_attr_val_t *val, void *priv_data)
7782
{

examples/room_air_conditioner/main/app_main.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -103,13 +103,18 @@ static void app_event_cb(const ChipDeviceEvent *event, intptr_t arg)
103103
}
104104
}
105105

106+
// This callback is invoked when clients interact with the Identify Cluster.
107+
// In the callback implementation, an endpoint can identify itself. (e.g., by flashing an LED or light).
106108
static esp_err_t app_identification_cb(identification::callback_type_t type, uint16_t endpoint_id, uint8_t effect_id,
107109
uint8_t effect_variant, void *priv_data)
108110
{
109111
ESP_LOGI(TAG, "Identification callback: type: %u, effect: %u, variant: %u", type, effect_id, effect_variant);
110112
return ESP_OK;
111113
}
112114

115+
// This callback is called for every attribute update. The callback implementation shall
116+
// handle the desired attributes and return an appropriate error code. If the attribute
117+
// is not of your interest, please do not return an error code and strictly return ESP_OK.
113118
static esp_err_t app_attribute_update_cb(attribute::callback_type_t type, uint16_t endpoint_id, uint32_t cluster_id,
114119
uint32_t attribute_id, esp_matter_attr_val_t *val, void *priv_data)
115120
{

examples/zap_light/main/app_main.cpp

+3
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,9 @@ static void app_event_cb(const ChipDeviceEvent *event, intptr_t arg)
6262
}
6363
}
6464

65+
// This callback is called for every attribute update. The callback implementation shall
66+
// handle the desired attributes and return an appropriate error code. If the attribute
67+
// is not of your interest, please do not return an error code and strictly return ESP_OK.
6568
static esp_err_t app_attribute_update_cb(callback_type_t type, uint16_t endpoint_id, uint32_t cluster_id,
6669
uint32_t attribute_id, esp_matter_attr_val_t *val, void *priv_data)
6770
{

examples/zigbee_bridge/main/app_main.cpp

+3
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,9 @@ static void app_event_cb(const ChipDeviceEvent *event, intptr_t arg)
6262
}
6363
}
6464

65+
// This callback is called for every attribute update. The callback implementation shall
66+
// handle the desired attributes and return an appropriate error code. If the attribute
67+
// is not of your interest, please do not return an error code and strictly return ESP_OK.
6568
static esp_err_t app_attribute_update_cb(callback_type_t type, uint16_t endpoint_id, uint32_t cluster_id,
6669
uint32_t attribute_id, esp_matter_attr_val_t *val, void *priv_data)
6770
{

tools/mfg_tool/README.md

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
### Install python dependencies
1717
```
1818
cd path/to/esp-matter/tools/mfg_tool
19+
source path/to/esp-idf/export.sh
1920
python3 -m pip install -r requirements.txt
2021
```
2122

0 commit comments

Comments
 (0)