Legacy event loop¶
API Reference¶
Header File¶
Functions¶
-
esp_err_t
esp_event_send
(system_event_t *event)¶ Send a event to event task.
Other task/modules, such as the tcpip_adapter, can call this API to send an event to event task
- Note
This API is part of the legacy event system. New code should use event library API in esp_event.h
- Return
ESP_OK : succeed
- Return
others : fail
- Parameters
event
: Event to send
-
esp_err_t
esp_event_send_internal
(esp_event_base_t event_base, int32_t event_id, void *event_data, size_t event_data_size, TickType_t ticks_to_wait)¶ Send a event to event task.
Other task/modules, such as the tcpip_adapter, can call this API to send an event to event task
- Note
This API is used by WiFi Driver only.
- Return
ESP_OK : succeed
- Return
others : fail
- Parameters
[in] event_base
: the event base that identifies the event[in] event_id
: the event id that identifies the event[in] event_data
: the data, specific to the event occurence, that gets passed to the handler[in] event_data_size
: the size of the event data[in] ticks_to_wait
: number of ticks to block on a full event queue
-
esp_err_t
esp_event_process_default
(system_event_t *event)¶ Default event handler for system events.
This function performs default handling of system events. When using esp_event_loop APIs, it is called automatically before invoking the user-provided callback function.
- Note
This API is part of the legacy event system. New code should use event library API in esp_event.h
Applications which implement a custom event loop must call this function as part of event processing.
- Return
ESP_OK if an event was handled successfully
- Parameters
event
: pointer to event to be handled
-
void
esp_event_set_default_eth_handlers
(void)¶ Install default event handlers for Ethernet interface.
- Note
This API is part of the legacy event system. New code should use event library API in esp_event.h
-
void
esp_event_set_default_wifi_handlers
(void)¶ Install default event handlers for Wi-Fi interfaces (station and AP)
- Note
This API is part of the legacy event system. New code should use event library API in esp_event.h
-
esp_err_t
esp_event_loop_init
(system_event_cb_t cb, void *ctx)¶ Initialize event loop.
Create the event handler and task
- Note
This API is part of the legacy event system. New code should use event library API in esp_event.h
- Return
ESP_OK: succeed
others: fail
- Parameters
cb
: application specified event callback, it can be modified by call esp_event_set_cbctx
: reserved for user
-
system_event_cb_t
esp_event_loop_set_cb
(system_event_cb_t cb, void *ctx)¶ Set application specified event callback function.
- Note
This API is part of the legacy event system. New code should use event library API in esp_event.h
- Attention
1. If cb is NULL, means application don’t need to handle If cb is not NULL, it will be call when an event is received, after the default event callback is completed
- Return
old callback
- Parameters
cb
: application callback functionctx
: argument to be passed to callback
Unions¶
-
union
system_event_info_t
¶ - #include <esp_event_legacy.h>
Union of all possible system_event argument structures
Public Members
-
system_event_sta_connected_t
connected
¶ ESP32 station connected to AP
-
system_event_sta_disconnected_t
disconnected
¶ ESP32 station disconnected to AP
-
system_event_sta_scan_done_t
scan_done
¶ ESP32 station scan (APs) done
-
system_event_sta_authmode_change_t
auth_change
¶ the auth mode of AP ESP32 station connected to changed
-
system_event_sta_got_ip_t
got_ip
¶ ESP32 station got IP, first time got IP or when IP is changed
-
system_event_sta_wps_er_pin_t
sta_er_pin
¶ ESP32 station WPS enrollee mode PIN code received
-
system_event_sta_wps_fail_reason_t
sta_er_fail_reason
¶ ESP32 station WPS enrollee mode failed reason code received
-
system_event_ap_staconnected_t
sta_connected
¶ a station connected to ESP32 soft-AP
-
system_event_ap_stadisconnected_t
sta_disconnected
¶ a station disconnected to ESP32 soft-AP
-
system_event_ap_probe_req_rx_t
ap_probereqrecved
¶ ESP32 soft-AP receive probe request packet
-
system_event_ap_staipassigned_t
ap_staipassigned
¶ ESP32 soft-AP assign an IP to the station
-
system_event_got_ip6_t
got_ip6
¶ ESP32 station or ap or ethernet ipv6 addr state change to preferred
-
system_event_sta_connected_t
Structures¶
-
struct
system_event_t
¶ Event, as a tagged enum
Public Members
-
system_event_id_t
event_id
¶ event ID
-
system_event_info_t
event_info
¶ event information
-
system_event_id_t
Type Definitions¶
-
typedef wifi_event_sta_wps_fail_reason_t
system_event_sta_wps_fail_reason_t
¶ Argument structure of SYSTEM_EVENT_STA_WPS_ER_FAILED event
-
typedef wifi_event_sta_scan_done_t
system_event_sta_scan_done_t
¶ Argument structure of SYSTEM_EVENT_SCAN_DONE event
-
typedef wifi_event_sta_connected_t
system_event_sta_connected_t
¶ Argument structure of SYSTEM_EVENT_STA_CONNECTED event
-
typedef wifi_event_sta_disconnected_t
system_event_sta_disconnected_t
¶ Argument structure of SYSTEM_EVENT_STA_DISCONNECTED event
-
typedef wifi_event_sta_authmode_change_t
system_event_sta_authmode_change_t
¶ Argument structure of SYSTEM_EVENT_STA_AUTHMODE_CHANGE event
-
typedef wifi_event_sta_wps_er_pin_t
system_event_sta_wps_er_pin_t
¶ Argument structure of SYSTEM_EVENT_STA_WPS_ER_PIN event
-
typedef wifi_event_ap_staconnected_t
system_event_ap_staconnected_t
¶ Argument structure of event
-
typedef wifi_event_ap_stadisconnected_t
system_event_ap_stadisconnected_t
¶ Argument structure of event
-
typedef wifi_event_ap_probe_req_rx_t
system_event_ap_probe_req_rx_t
¶ Argument structure of event
-
typedef ip_event_ap_staipassigned_t
system_event_ap_staipassigned_t
¶ Argument structure of event
-
typedef ip_event_got_ip_t
system_event_sta_got_ip_t
¶ Argument structure of event
-
typedef ip_event_got_ip6_t
system_event_got_ip6_t
¶ Argument structure of event
-
typedef esp_err_t (*
system_event_handler_t
)(esp_event_base_t event_base, int32_t event_id, void *event_data, size_t event_data_size, TickType_t ticks_to_wait)¶ Event handler function type
-
typedef esp_err_t (*
system_event_cb_t
)(void *ctx, system_event_t *event)¶ Application specified event callback function.
- Note
This API is part of the legacy event system. New code should use event library API in esp_event.h
- Return
ESP_OK: succeed
others: fail
- Parameters
ctx
: reserved for userevent
: event type defined in this file
Enumerations¶
-
enum
system_event_id_t
¶ System event types enumeration
Values:
-
SYSTEM_EVENT_WIFI_READY
= 0¶ ESP32 WiFi ready
-
SYSTEM_EVENT_SCAN_DONE
¶ ESP32 finish scanning AP
-
SYSTEM_EVENT_STA_START
¶ ESP32 station start
-
SYSTEM_EVENT_STA_STOP
¶ ESP32 station stop
-
SYSTEM_EVENT_STA_CONNECTED
¶ ESP32 station connected to AP
-
SYSTEM_EVENT_STA_DISCONNECTED
¶ ESP32 station disconnected from AP
-
SYSTEM_EVENT_STA_AUTHMODE_CHANGE
¶ the auth mode of AP connected by ESP32 station changed
-
SYSTEM_EVENT_STA_GOT_IP
¶ ESP32 station got IP from connected AP
-
SYSTEM_EVENT_STA_LOST_IP
¶ ESP32 station lost IP and the IP is reset to 0
-
SYSTEM_EVENT_STA_WPS_ER_SUCCESS
¶ ESP32 station wps succeeds in enrollee mode
-
SYSTEM_EVENT_STA_WPS_ER_FAILED
¶ ESP32 station wps fails in enrollee mode
-
SYSTEM_EVENT_STA_WPS_ER_TIMEOUT
¶ ESP32 station wps timeout in enrollee mode
-
SYSTEM_EVENT_STA_WPS_ER_PIN
¶ ESP32 station wps pin code in enrollee mode
-
SYSTEM_EVENT_STA_WPS_ER_PBC_OVERLAP
¶ ESP32 station wps overlap in enrollee mode
-
SYSTEM_EVENT_AP_START
¶ ESP32 soft-AP start
-
SYSTEM_EVENT_AP_STOP
¶ ESP32 soft-AP stop
-
SYSTEM_EVENT_AP_STACONNECTED
¶ a station connected to ESP32 soft-AP
-
SYSTEM_EVENT_AP_STADISCONNECTED
¶ a station disconnected from ESP32 soft-AP
-
SYSTEM_EVENT_AP_STAIPASSIGNED
¶ ESP32 soft-AP assign an IP to a connected station
-
SYSTEM_EVENT_AP_PROBEREQRECVED
¶ Receive probe request packet in soft-AP interface
-
SYSTEM_EVENT_GOT_IP6
¶ ESP32 station or ap or ethernet interface v6IP addr is preferred
-
SYSTEM_EVENT_ETH_START
¶ ESP32 ethernet start
-
SYSTEM_EVENT_ETH_STOP
¶ ESP32 ethernet stop
-
SYSTEM_EVENT_ETH_CONNECTED
¶ ESP32 ethernet phy link up
-
SYSTEM_EVENT_ETH_DISCONNECTED
¶ ESP32 ethernet phy link down
-
SYSTEM_EVENT_ETH_GOT_IP
¶ ESP32 ethernet got IP from connected AP
-
SYSTEM_EVENT_MAX
¶ Number of members in this enum
-