mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-02 03:00:34 +03:00
esp_wifi: Add support for NAN Discovery and Datapath
Update wifi lib with below - 1. Create NAN Discovery SM for beaconing & cluster formation 2. Create NAN interface for Tx/Rx of beacons & action frames 3. Add commands & events for NAN Services Publish/Subscribe/Followup 4. Add NAN Datapath definitions, Events, Peer structures 5. Support for forming and parsing of Datapath related attributes 6. Modules for NDP Req, Resp, Confirm, Term, Peer management 7. NAN Interface related additions in Datapath, Data Tx Q's In addition include below changes - 1. Add netif and driver support for NAN Interface 2. Add simple examples for Publisher-Subscriber usecases 3. Add an advanced console example that supports commands for NAN Discovery, Services & Datapath 4. Add wifi_apps for providing better NAN API's and Peer management Co-authored-by: Shyamal Khachane <shyamal.khachane@espressif.com>
This commit is contained in:
co-authored by
Shyamal Khachane
parent
cec892d355
commit
4c76af3f68
@@ -0,0 +1,56 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2023 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "esp_log.h"
|
||||
#include "esp_err.h"
|
||||
#include "esp_wifi_types.h"
|
||||
#include "esp_netif.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_ESP_WIFI_NAN_ENABLE
|
||||
|
||||
/**
|
||||
* @brief Initialize the NAN App and required Data Structures
|
||||
*
|
||||
* @attention This API should be called in esp_wifi_init()
|
||||
*/
|
||||
void esp_nan_app_init(void);
|
||||
|
||||
/**
|
||||
* @brief De-initialize the NAN App and complete the cleanup
|
||||
*
|
||||
* @attention This API should be called in esp_wifi_deinit()
|
||||
*/
|
||||
void esp_nan_app_deinit(void);
|
||||
|
||||
/**
|
||||
* @brief NAN App action handler for NAN Started event. Sets up other event handlers and
|
||||
* initializes NAN App context
|
||||
*
|
||||
* @attention This API should be called in WIFI_EVENT_NAN_STARTED event handler
|
||||
*
|
||||
* @param nan_netif Netif handle corresponding to NAN interface.
|
||||
*/
|
||||
void esp_nan_action_start(esp_netif_t *nan_netif);
|
||||
|
||||
/**
|
||||
* @brief NAN App action handler for NAN Stopped event. Clears other event handlers and
|
||||
* resets NAN App context
|
||||
*
|
||||
* @attention This API should be called in WIFI_EVENT_NAN_STOPPED event handler
|
||||
*/
|
||||
void esp_nan_action_stop(void);
|
||||
|
||||
#endif /* CONFIG_ESP_WIFI_NAN_ENABLE */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user