Skip to content

Commit d84f81b

Browse files
committed
feat: update mesh_lite to 9c00fcd5
- Fixed: When multiple root nodes have the same RSSI value during fusion, it may cause the node number to exceed the max node number limit - Fixed: Disconnect all mesh nodes when setting device as leaf node - Fixed: Parent node change not triggered when current RSSI falls below newly set parent node RSSI threshold - Fixed: When parent node's mesh id changes, disconnect station connection and reconnect it - Fixed: When parent node's level changes, devices with allowed/disallowed level need to disconnect and search for new parent nodes - Modify the default retransmission interval of raw messages to 1000ms - Optimize the return value of esp_mesh_lite_aes_set_key
1 parent e1952a5 commit d84f81b

10 files changed

+30
-19
lines changed

components/mesh_lite/include/esp_mesh_lite_core.h

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1262,17 +1262,28 @@ esp_err_t esp_mesh_lite_msg_action_list_register(const esp_mesh_lite_msg_action_
12621262
esp_err_t esp_mesh_lite_msg_action_list_unregister(const esp_mesh_lite_msg_action_t* msg_action);
12631263

12641264
/**
1265-
* @brief This function initialize AES context and set key schedule (encryption or decryption).
1266-
*
1267-
* @param[in] key encryption key
1268-
* @param[in] keybits currently only supports 128
1269-
*
1270-
* @attention this function must be called before Mesh-Lite initialization.
1271-
*
1272-
* @return
1273-
* - ESP_OK : successful
1274-
* - Other : fail
1275-
*/
1265+
* @brief Initialize AES context and set the key schedule for encryption or decryption.
1266+
*
1267+
* @details This function configures the AES key schedule based on the provided key and key size.
1268+
* If `key` is `NULL`, the system will operate in **no-encryption mode** (plaintext communication).
1269+
* It must be called **before** initializing Mesh-Lite, as the AES context is used for secure communications.
1270+
*
1271+
* @param[in] key Pointer to the encryption/decryption key (must be 16, 24, or 32 bytes long).
1272+
* - If `NULL`, encryption is disabled.
1273+
* @param[in] keybits Key size in bits. Supported values:
1274+
* - `128` (16-byte key)
1275+
* - `192` (24-byte key)
1276+
* - `256` (32-byte key)
1277+
* - Ignored if `key` is `NULL`.
1278+
*
1279+
* @attention
1280+
* - If `key` is `NULL`, Mesh-Lite will transmit data **unencrypted** (security risk).
1281+
* - The key must remain valid during Mesh-Lite operation if encryption is enabled.
1282+
*
1283+
* @return
1284+
* - `ESP_OK` Success, key schedule set (or no-encryption mode enabled).
1285+
* - `MBEDTLS_ERR_PLATFORM_FEATURE_UNSUPPORTED`
1286+
*/
12761287
esp_err_t esp_mesh_lite_aes_set_key(const unsigned char* key, unsigned int keybits);
12771288

12781289
/**

components/mesh_lite/lib/VERSION

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
version
2-
libesp_mesh_lite_esp32.a :454ded1
3-
libesp_mesh_lite_esp32c2.a :454ded1
4-
libesp_mesh_lite_esp32c3.a :454ded1
5-
libesp_mesh_lite_esp32c5.a :454ded1
6-
libesp_mesh_lite_esp32c6.a :454ded1
7-
libesp_mesh_lite_esp32c61.a :454ded1
8-
libesp_mesh_lite_esp32s2.a :454ded1
9-
libesp_mesh_lite_esp32s3.a :454ded1
2+
libesp_mesh_lite_esp32.a :9c00fcd
3+
libesp_mesh_lite_esp32c2.a :9c00fcd
4+
libesp_mesh_lite_esp32c3.a :9c00fcd
5+
libesp_mesh_lite_esp32c5.a :9c00fcd
6+
libesp_mesh_lite_esp32c6.a :9c00fcd
7+
libesp_mesh_lite_esp32c61.a :9c00fcd
8+
libesp_mesh_lite_esp32s2.a :9c00fcd
9+
libesp_mesh_lite_esp32s3.a :9c00fcd
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)