1. fix failture of mesh stop caused by block-sending.
2. fix when FIXED_ROOT is set, 2nd layer devices can not receive mesh event ESP_ERR_MESH_NO_PARENT_FOUND.
3. fix when FIXED_ROOT is set and the root turns off mesh function, 2nd layer devices do not look for new parents.
4. add APIs esp_mesh_disconnect() and esp_mesh_connect().
5. disconnect from parent/router when the DSSS channel in received beacon is different from the home channel.
6. remove nvs task to release 3k bytes memory.
pull/2743/head
qiyueixa 2018-11-21 11:59:36 +08:00
rodzic 0d7f2d77c2
commit 6c3b5ae5a1
2 zmienionych plików z 21 dodań i 4 usunięć

Wyświetl plik

@ -186,6 +186,7 @@ typedef enum {
MESH_EVENT_SCAN_DONE, /**< if self-organized networking is disabled, user can call esp_wifi_scan_start() to trigger
this event, and add the corresponding scan done handler in this event. */
MESH_EVENT_NETWORK_STATE, /**< network state, such as whether current mesh network has a root. */
MESH_EVENT_STOP_RECONNECTION, /**< the root stops reconnecting to the router and non-root devices stop reconnecting to their parents. */
MESH_EVENT_MAX,
} mesh_event_id_t;
@ -941,9 +942,9 @@ bool esp_mesh_is_root(void);
* @attention This API is used to dynamically modify whether to enable the self organizing.
*
* @param[in] enable enable or disable self-organized networking
* @param[in] select_parent
* - If self-organized networking is enabled, let the device search for a new parent or
* keep connecting to the previous parent.
* @param[in] select_parent Only valid when self-organized networking is enabled.
* - if select_parent is set to true, the root will give up its mesh root status and search for a new parent
* like other non-root devices.
*
* @return
* - ESP_OK
@ -1395,6 +1396,22 @@ esp_err_t esp_mesh_get_subnet_nodes_num(const mesh_addr_t *child_mac, int *nodes
*/
esp_err_t esp_mesh_get_subnet_nodes_list(const mesh_addr_t *child_mac, mesh_addr_t *nodes, int nodes_num);
/**
* @brief Disconnect from current parent
*
* @return
* - ESP_OK
*/
esp_err_t esp_mesh_disconnect(void);
/**
* @brief Connect to current parent
*
* @return
* - ESP_OK
*/
esp_err_t esp_mesh_connect(void);
#ifdef __cplusplus
}
#endif

@ -1 +1 @@
Subproject commit f01388169638d553002891a7e385576c7b504b4e
Subproject commit f2e25be80261682bff80a480ba167fd2f340bbf7