Structures and enumerations

group LWESP_TYPES

List of core structures and enumerations.

Typedefs

typedef uint16_t lwesp_port_t

Port variable.

typedef void (*lwesp_api_cmd_evt_fn)(lwespr_t res, void *arg)

Function declaration for API function command event callback function.

Param res

[in] Operation result, member of lwespr_t enumeration

Param arg

[in] Custom user argument

Enums

enum lwesp_cmd_t

List of possible messages.

Values:

enumerator LWESP_CMD_IDLE = 0

IDLE mode

enumerator LWESP_CMD_RESET

Reset device

enumerator LWESP_CMD_ATE0

Disable ECHO mode on AT commands

enumerator LWESP_CMD_ATE1

Enable ECHO mode on AT commands

enumerator LWESP_CMD_GMR

Get AT commands version

enumerator LWESP_CMD_CMD

List support AT commands

enumerator LWESP_CMD_GSLP

Set ESP to sleep mode

enumerator LWESP_CMD_RESTORE

Restore ESP internal settings to default values

enumerator LWESP_CMD_UART
enumerator LWESP_CMD_SLEEP
enumerator LWESP_CMD_WAKEUPGPIO
enumerator LWESP_CMD_RFPOWER
enumerator LWESP_CMD_RFVDD
enumerator LWESP_CMD_RFAUTOTRACE
enumerator LWESP_CMD_SYSRAM
enumerator LWESP_CMD_SYSADC
enumerator LWESP_CMD_SYSMSG
enumerator LWESP_CMD_SYSLOG
enumerator LWESP_CMD_SYSFLASH_WRITE

Write flash operation

enumerator LWESP_CMD_SYSFLASH_READ

Read flash operation

enumerator LWESP_CMD_SYSFLASH_ERASE

Erase flash operation

enumerator LWESP_CMD_SYSFLASH_GET

Get flash partitions

enumerator LWESP_CMD_SYSMFG_WRITE

Write manufacturing NVS data

enumerator LWESP_CMD_SYSMFG_READ

Read manufacturing NVS data

enumerator LWESP_CMD_SYSMFG_ERASE

Erase manufacturing NVS data

enumerator LWESP_CMD_SYSMFG_GET

Get manufacturing user partitions

enumerator LWESP_CMD_WIFI_CWMODE

Set wifi mode

enumerator LWESP_CMD_WIFI_CWMODE_GET

Get wifi mode

enumerator LWESP_CMD_WIFI_CWLAPOPT

Configure what is visible on CWLAP response

enumerator LWESP_CMD_WIFI_IPV6

Configure IPv6 support

enumerator LWESP_CMD_WIFI_CWJAP

Connect to access point

enumerator LWESP_CMD_WIFI_CWRECONNCFG

Setup reconnect interval and maximum tries

enumerator LWESP_CMD_WIFI_CWJAP_GET

Info of the connected access point

enumerator LWESP_CMD_WIFI_CWQAP

Disconnect from access point

enumerator LWESP_CMD_WIFI_CWLAP

List available access points

enumerator LWESP_CMD_WIFI_CIPSTAMAC_GET

Get MAC address of ESP station

enumerator LWESP_CMD_WIFI_CIPSTAMAC_SET

Set MAC address of ESP station

enumerator LWESP_CMD_WIFI_CIPSTA_GET

Get IP address of ESP station

enumerator LWESP_CMD_WIFI_CIPSTA_SET

Set IP address of ESP station

enumerator LWESP_CMD_WIFI_CWAUTOCONN

Configure auto connection to access point

enumerator LWESP_CMD_WIFI_CWDHCP_SET

Set DHCP config

enumerator LWESP_CMD_WIFI_CWDHCP_GET

Get DHCP config

enumerator LWESP_CMD_WIFI_CWDHCPS_SET

Set DHCP SoftAP IP config

enumerator LWESP_CMD_WIFI_CWDHCPS_GET

Get DHCP SoftAP IP config

enumerator LWESP_CMD_WIFI_CWSAP_GET

Get software access point configuration

enumerator LWESP_CMD_WIFI_CWSAP_SET

Set software access point configuration

enumerator LWESP_CMD_WIFI_CIPAPMAC_GET

Get MAC address of ESP access point

enumerator LWESP_CMD_WIFI_CIPAPMAC_SET

Set MAC address of ESP access point

enumerator LWESP_CMD_WIFI_CIPAP_GET

Get IP address of ESP access point

enumerator LWESP_CMD_WIFI_CIPAP_SET

Set IP address of ESP access point

enumerator LWESP_CMD_WIFI_CWLIF

Get connected stations on access point

enumerator LWESP_CMD_WIFI_CWQIF

Discnnect station from SoftAP

enumerator LWESP_CMD_WIFI_WPS

Set WPS option

enumerator LWESP_CMD_WIFI_MDNS

Configure MDNS function

enumerator LWESP_CMD_WIFI_CWHOSTNAME_SET

Set device hostname

enumerator LWESP_CMD_WIFI_CWHOSTNAME_GET

Get device hostname

enumerator LWESP_CMD_TCPIP_CIPDOMAIN

Get IP address from domain name = DNS function

enumerator LWESP_CMD_TCPIP_CIPDNS_SET

Configure user specific DNS servers

enumerator LWESP_CMD_TCPIP_CIPDNS_GET

Get DNS configuration

enumerator LWESP_CMD_TCPIP_CIPSTATUS

Get status of connections (deprecated, used on ESP8266 devices)

enumerator LWESP_CMD_TCPIP_CIPSTATE

Obtain connection state and information

enumerator LWESP_CMD_TCPIP_CIPSTART

Start client connection

enumerator LWESP_CMD_TCPIP_CIPSEND

Send network data

enumerator LWESP_CMD_TCPIP_CIPCLOSE

Close active connection

enumerator LWESP_CMD_TCPIP_CIPSSLSIZE

Set SSL buffer size for SSL connection

enumerator LWESP_CMD_TCPIP_CIPSSLCCONF

Set the SSL configuration

enumerator LWESP_CMD_TCPIP_CIFSR

Get local IP

enumerator LWESP_CMD_TCPIP_CIPMUX

Set single or multiple connections

enumerator LWESP_CMD_TCPIP_CIPSERVER

Enables/Disables server mode

enumerator LWESP_CMD_TCPIP_CIPSERVERMAXCONN

Sets maximal number of connections allowed for server population

enumerator LWESP_CMD_TCPIP_CIPMODE

Transmission mode, either transparent or normal one

enumerator LWESP_CMD_TCPIP_CIPSTO

Sets connection timeout

enumerator LWESP_CMD_TCPIP_CIPRECVMODE

Sets mode for TCP data receive (manual or automatic)

enumerator LWESP_CMD_TCPIP_CIPRECVDATA

Manually reads TCP data from device

enumerator LWESP_CMD_TCPIP_CIPRECVLEN

Gets number of available bytes in connection to be read

enumerator LWESP_CMD_TCPIP_CIUPDATE

Perform self-update

enumerator LWESP_CMD_TCPIP_CIPSNTPCFG

Configure SNTP servers

enumerator LWESP_CMD_TCPIP_CIPSNTPCFG_GET

Get SNTP config

enumerator LWESP_CMD_TCPIP_CIPSNTPTIME

Get current time using SNTP

enumerator LWESP_CMD_TCPIP_CIPSNTPINTV

Set the SNTP time synchronization interval

enumerator LWESP_CMD_TCPIP_CIPSNTPINTV_GET

Query the SNTP time synchronization interval

enumerator LWESP_CMD_TCPIP_CIPDINFO

Configure what data are received on +IPD statement

enumerator LWESP_CMD_TCPIP_PING

Ping domain

enumerator LWESP_CMD_WIFI_SMART_START

Start smart config

enumerator LWESP_CMD_WIFI_SMART_STOP

Stop smart config

enumerator LWESP_CMD_WEBSERVER

Start or Stop Web Server

enumerator LWESP_CMD_BLEINIT_GET

Get BLE status

enum lwespr_t

Result enumeration used across application functions.

Values:

enumerator lwespOK = 0

Function succeeded

enumerator lwespOKIGNOREMORE

Function succedded, should continue as lwespOK but ignore sending more data. This result is possible on connection data receive callback

enumerator lwespERR

General error

enumerator lwespERRPAR

Wrong parameters on function call

enumerator lwespERRMEM

Memory error occurred

enumerator lwespTIMEOUT

Timeout occurred on command

enumerator lwespCONT

There is still some command to be processed in current command

enumerator lwespCLOSED

Connection just closed

enumerator lwespINPROG

Operation is in progress

enumerator lwespERRNOIP

Station does not have IP address

enumerator lwespERRNOFREECONN

There is no free connection available to start

enumerator lwespERRCONNTIMEOUT

Timeout received when connection to access point

enumerator lwespERRPASS

Invalid password for access point

enumerator lwespERRNOAP

No access point found with specific SSID and MAC address

enumerator lwespERRCONNFAIL

Connection failed to access point

enumerator lwespERRWIFINOTCONNECTED

Wifi not connected to access point

enumerator lwespERRNODEVICE

Device is not present

enumerator lwespERRBLOCKING

Blocking mode command is not allowed

enumerator lwespERRCMDNOTSUPPORTED

Command is not supported error received by device, or when command is not supported in the stack itself

enum lwesp_device_t

List of support ESP devices by firmware.

Values:

enumerator LWESP_DEVICE_UNKNOWN = 0x00

Device is unknown by default

enumerator LWESP_DEVICE_ESP8266

Device is ESP8266

enumerator LWESP_DEVICE_ESP32

Device is ESP32

enumerator LWESP_DEVICE_ESP32_C2

Device is ESP32-C2

enumerator LWESP_DEVICE_ESP32_C3

Device is ESP32-C3

enumerator LWESP_DEVICE_ESP32_C6

Device is ESP32-C6

enumerator LWESP_DEVICE_END

End of the list

enum lwesp_ecn_t

List of encryptions of access point.

Values:

enumerator LWESP_ECN_OPEN = 0x00

No encryption on access point

enumerator LWESP_ECN_WEP = 0x01

WEP (Wired Equivalent Privacy) encryption

enumerator LWESP_ECN_WPA_PSK = 0x02

WPA (Wifi Protected Access) encryption

enumerator LWESP_ECN_WPA2_PSK = 0x03

WPA2 (Wifi Protected Access 2) encryption

enumerator LWESP_ECN_WPA_WPA2_PSK = 0x04

WPA/2 (Wifi Protected Access 1/2) encryption

enumerator LWESP_ECN_WPA2_Enterprise = 0x05

Enterprise encryption.

Note

ESP8266 is not able to connect to such device

enumerator LWESP_ECN_WPA3_PSK = 0x06

WPA3 (Wifi Protected Access 3) encryption

enumerator LWESP_ECN_WPA2_WPA3_PSK = 0x07

WPA2/3 (Wifi Protected Access 2/3) encryption

enumerator LWESP_ECN_WAPI_PSK = 0x08

WAPI PSK encryption mode

enumerator LWESP_ECN_OWE = 0x08

Opportunistic Wifi Encryption for end-to-end encryption

enumerator LWESP_ECN_END

Last entry

enum lwesp_iptype_t

IP type.

Values:

enumerator LWESP_IPTYPE_V4 = 0x00

IP type is V4

enumerator LWESP_IPTYPE_V6

IP type is V6

enum lwesp_mode_t

List of possible WiFi modes.

Values:

enumerator LWESP_MODE_NONE = 0

Wifi RF IP disabled

enumerator LWESP_MODE_STA = 1

Set WiFi mode to station only

enumerator LWESP_MODE_AP = 2

Set WiFi mode to access point only

enumerator LWESP_MODE_STA_AP = 3

Set WiFi mode to station and access point

enum lwesp_http_method_t

List of possible HTTP methods.

Values:

enumerator LWESP_HTTP_METHOD_GET

HTTP method GET

enumerator LWESP_HTTP_METHOD_HEAD

HTTP method HEAD

enumerator LWESP_HTTP_METHOD_POST

HTTP method POST

enumerator LWESP_HTTP_METHOD_PUT

HTTP method PUT

enumerator LWESP_HTTP_METHOD_DELETE

HTTP method DELETE

enumerator LWESP_HTTP_METHOD_CONNECT

HTTP method CONNECT

enumerator LWESP_HTTP_METHOD_OPTIONS

HTTP method OPTIONS

enumerator LWESP_HTTP_METHOD_TRACE

HTTP method TRACE

enumerator LWESP_HTTP_METHOD_PATCH

HTTP method PATCH

enumerator LWESP_HTTP_METHOD_END
enum lwesp_blocking_t

API calls blocking or non-blocking type.

Values:

enumerator LWESP_NON_BLOCKING = 0

Blocking call

enumerator LWESP_BLOCKING = 1

Non-blocking call

struct lwesp_conn_t
#include <lwesp_private.h>

Connection structure.

Public Members

lwesp_conn_type_t type

Connection type

uint8_t num

Connection number

lwesp_ip_t remote_ip

Remote IP address

lwesp_port_t remote_port

Remote port number

lwesp_port_t local_port

Local IP address

lwesp_evt_fn evt_func

Callback function for connection

void *arg

User custom argument

uint16_t val_id

Validation ID number. It is increased each time a new connection is established. It protects sending data to wrong connection in case we have data in send queue, and connection was closed and active again in between.

lwesp_linbuff_t buff

Linear buffer structure

size_t total_recved

Total number of bytes received

size_t tcp_available_bytes

Number of bytes in ESP ready to be read on connection. This variable always holds last known info from ESP device and is not decremented (or incremented) by application

size_t tcp_not_ack_bytes

Number of bytes not acknowledge by application done with processing This variable is increased everytime new packet is read to be sent to application and decreased when application acknowledges it

uint8_t active

Status whether connection is active

uint8_t client

Status whether connection is in client mode

uint8_t data_received

Status whether first data were received on connection

uint8_t in_closing

Status if connection is in closing mode. When in closing mode, ignore any possible received data from function

uint8_t receive_blocked

Status whether we should block manual receive for some time

uint8_t receive_is_command_queued

Status whether manual read command is in the queue already

struct lwesp_conn_t::[anonymous]::[anonymous] f

Connection flags

union lwesp_conn_t::[anonymous] status

Connection status union with flag bits

struct lwesp_pbuf_t
#include <lwesp_private.h>

Packet buffer structure.

Public Members

struct lwesp_pbuf *next

Next pbuf in chain list

size_t tot_len

Total length of pbuf chain

size_t len

Length of payload

size_t ref

Number of references to this structure

uint8_t *payload

Pointer to payload memory

lwesp_ip_t ip

Remote address for received IPD data

lwesp_port_t port

Remote port for received IPD data

struct lwesp_ipd_t
#include <lwesp_private.h>

Incoming network data read structure.

Public Members

uint8_t read

Set to 1 when we should process input data as connection data

size_t tot_len

Total length of packet

size_t rem_len

Remaining bytes to read in current +IPD statement

lwesp_conn_p conn

Pointer to connection for network data

lwesp_ip_t ip

Remote IP address on from IPD data

lwesp_port_t port

Remote port on IPD data

size_t buff_ptr

Buffer pointer to save data to. When set to NULL while read = 1, reading should ignore incoming data

lwesp_pbuf_p buff

Pointer to data buffer used for receiving data

struct lwesp_msg_t
#include <lwesp_private.h>

Message queue structure to share between threads.

Public Members

lwesp_cmd_t cmd_def

Default message type received from queue

lwesp_cmd_t cmd

Since some commands can have different subcommands, sub command is used here

uint8_t i

Variable to indicate order number of subcommands

lwesp_sys_sem_t sem

Semaphore for the message

uint8_t is_blocking

Status if command is blocking

uint32_t block_time

Maximal blocking time in units of milliseconds. Use 0 to for non-blocking call

lwespr_t res

Result of message operation

lwespr_t res_err_code

Result from “ERR CODE” received by AT command execution

lwespr_t (*fn)(struct lwesp_msg*)

Processing callback function to process packet

uint32_t delay

Delay in units of milliseconds before executing first RESET command

struct lwesp_msg_t::[anonymous]::[anonymous] reset

Reset device

uint32_t baudrate

Baudrate for AT port

struct lwesp_msg_t::[anonymous]::[anonymous] uart

UART configuration

lwesp_mode_t mode

Mode of operation

lwesp_mode_t *mode_get

Get mode

struct lwesp_msg_t::[anonymous]::[anonymous] wifi_mode

When message type LWESP_CMD_WIFI_CWMODE is used

const char *name

AP name

const char *pass

AP password

const lwesp_mac_t *mac

Specific MAC address to use when connecting to AP

uint8_t error_num

Error number on connecting

struct lwesp_msg_t::[anonymous]::[anonymous] sta_join

Message for joining to access point

uint16_t interval

Interval in units of seconds

uint16_t rep_cnt

Repetition counter

struct lwesp_msg_t::[anonymous]::[anonymous] sta_reconn_set

Reconnect setup

uint8_t en

Status to enable/disable auto join feature

Enable/disable DHCP settings

Enable/Disable server status

Status if SNTP is enabled or not

Status if WPS is enabled or not

Set to 1 to enable or 0 to disable

Enable/Disable web server status

struct lwesp_msg_t::[anonymous]::[anonymous] sta_autojoin

Message for auto join procedure

lwesp_sta_info_ap_t *info

Information structure

struct lwesp_msg_t::[anonymous]::[anonymous] sta_info_ap

Message for reading the AP information

const char *ssid

Pointer to optional filter SSID name to search

Name of access point

lwesp_ap_t *aps

Pointer to array to save access points

size_t apsl

Length of input array of access points

size_t apsi

Current access point array

size_t *apf

Pointer to output variable holding number of access points found

struct lwesp_msg_t::[anonymous]::[anonymous] ap_list

List for available access points to connect to

const char *pwd

Password of access point

lwesp_ecn_t ecn

Ecryption used

uint8_t ch

RF Channel used

uint8_t max_sta

Max allowed connected stations

uint8_t hid

Configuration if network is hidden or visible

struct lwesp_msg_t::[anonymous]::[anonymous] ap_conf

Parameters to configure access point

lwesp_ap_conf_t *ap_conf

AP configuration

struct lwesp_msg_t::[anonymous]::[anonymous] ap_conf_get

Get the soft AP configuration

lwesp_sta_t *stas

Pointer to array to save access points

size_t stal

Length of input array of access points

size_t stai

Current access point array

size_t *staf

Pointer to output variable holding number of access points found

struct lwesp_msg_t::[anonymous]::[anonymous] sta_list

List for stations connected to SoftAP

uint8_t use_mac

Status if specific MAC is to be used

lwesp_mac_t mac

MAC address to disconnect from access point

Pointer to MAC variable

struct lwesp_msg_t::[anonymous]::[anonymous] ap_disconn_sta

Disconnect station from access point

lwesp_ip_t *ip

Pointer to IP variable

lwesp_ip_t *gw

Pointer to gateway variable

lwesp_ip_t *nm

Pointer to netmask variable

struct lwesp_msg_t::[anonymous]::[anonymous] sta_ap_getip

Message for reading station or access point IP

lwesp_mac_t *mac

Pointer to MAC variable

struct lwesp_msg_t::[anonymous]::[anonymous] sta_ap_getmac

Message for reading station or access point MAC address

lwesp_ip_t ip

IP variable

lwesp_ip_t gw

Gateway variable

lwesp_ip_t nm

Netmask variable

struct lwesp_msg_t::[anonymous]::[anonymous] sta_ap_setip

Message for setting station or access point IP

struct lwesp_msg_t::[anonymous]::[anonymous] sta_ap_setmac

Message for setting station or access point MAC address

uint8_t sta

Set station DHCP settings

uint8_t ap

Set access point DHCP settings

struct lwesp_msg_t::[anonymous]::[anonymous] wifi_cwdhcp

Set DHCP settings

const char *hostname_set

Hostname set value

char *hostname_get

Hostname get value

size_t length

Length of buffer when reading hostname

struct lwesp_msg_t::[anonymous]::[anonymous] wifi_hostname

Set or get hostname structure

lwesp_conn_t **conn

Pointer to pointer to save connection used

const char *remote_host

Host to use for connection

lwesp_port_t remote_port

Remote port used for connection

Remote port address for UDP connection

lwesp_conn_type_t type

Connection type

const char *local_ip

Local IP address. Normally set to NULL

uint16_t tcp_ssl_keep_alive

Keep alive parameter for TCP

uint8_t udp_mode

UDP mode

lwesp_port_t udp_local_port

UDP local port

void *arg

Connection custom argument

lwesp_evt_fn evt_func

Callback function to use on connection

uint8_t success

Status if connection AT+CIPSTART succedded

uint8_t ssl_auth

SSL authentication mode

uint8_t ssl_pki_num

SSL PKI number

uint8_t ssl_ca_num

SSL CA number

struct lwesp_msg_t::[anonymous]::[anonymous] conn_start

Structure for starting new connection

lwesp_conn_t *conn

Pointer to connection to close

Pointer to connection to send data

uint16_t val_id

Connection current validation ID when command was sent to queue

struct lwesp_msg_t::[anonymous]::[anonymous] conn_close

Close connection

size_t btw

Number of remaining bytes to write

size_t ptr

Current write pointer for data

const uint8_t *data

Data to send

size_t sent

Number of bytes sent in last packet

size_t sent_all

Number of bytes sent all together

uint8_t tries

Number of tries used for last packet

uint8_t wait_send_ok_err

Set to 1 when we wait for SEND OK or SEND ERROR

const lwesp_ip_t *remote_ip

Remote IP address for UDP connection

uint8_t fau

Free after use flag to free memory after data are sent (or not)

size_t *bw

Number of bytes written so far

struct lwesp_msg_t::[anonymous]::[anonymous] conn_send

Structure to send data on connection

lwesp_port_t port

Server port number

mDNS server port

uint16_t max_conn

Maximal number of connections available for server

uint16_t timeout

Connection timeout

lwesp_evt_fn cb

Server default callback function

struct lwesp_msg_t::[anonymous]::[anonymous] tcpip_server

Server configuration

size_t size

Size for SSL in uints of bytes

struct lwesp_msg_t::[anonymous]::[anonymous] tcpip_sslsize

TCP SSL size for SSL connections

const char *host

Hostname to ping

mDNS host name

uint32_t time

Time used for ping

uint32_t *time_out

Pointer to time output variable

struct lwesp_msg_t::[anonymous]::[anonymous] tcpip_ping

Pinging structure

int16_t tz

Timezone setup

const char *h1

Optional server 1

const char *h2

Optional server 2

const char *h3

Optional server 3

struct lwesp_msg_t::[anonymous]::[anonymous] tcpip_sntp_cfg

SNTP configuration

uint8_t *en

Status if SNTP is enabled or not

int16_t *tz

Timezone setup

char *h1

Optional server 1

char *h2

Optional server 2

char *h3

Optional server 3

struct lwesp_msg_t::[anonymous]::[anonymous] tcpip_sntp_cfg_get

SNTP configuration read

uint32_t interval

Time in units of seconds

struct lwesp_msg_t::[anonymous]::[anonymous] tcpip_sntp_intv

SNTP interval configuration

uint32_t *interval

Pointer to write time to

struct lwesp_msg_t::[anonymous]::[anonymous] tcpip_sntp_intv_get

SNTP interval configuration

struct tm *dt

Pointer to datetime structure

struct lwesp_msg_t::[anonymous]::[anonymous] tcpip_sntp_time

SNTP get time

lwesp_ecn_t min_ecn

Minimum ECN level WPS will look for

struct lwesp_msg_t::[anonymous]::[anonymous] wps_cfg

WPS configuration

const char *server

mDNS server

struct lwesp_msg_t::[anonymous]::[anonymous] mdns

mDNS configuration

uint8_t timeout

Connection timeout

struct lwesp_msg_t::[anonymous]::[anonymous] web_server

Web Server configuration

Link ID of connection to set SSL configuration for

uint8_t auth_mode

Timezone setup

uint8_t pki_number

The index of cert and private key, if only one cert and private key, the value should be 0.

uint8_t ca_number

The index of CA, if only one CA, the value should be 0.

struct lwesp_msg_t::[anonymous]::[anonymous] tcpip_ssl_cfg

SSl configuration for connection

union lwesp_msg_t::[anonymous] msg

Group of different message contents

struct lwesp_ip_mac_t
#include <lwesp_private.h>

IP and MAC structure with netmask and gateway addresses.

Public Members

lwesp_ip_t ip

IP address

lwesp_ip_t gw

Gateway address

lwesp_ip_t nm

Netmask address

lwesp_mac_t mac

MAC address

uint8_t dhcp

Flag indicating DHCP is enabled

uint8_t has_ip

Flag indicating IP is available

uint8_t is_connected

Flag indicating ESP is connected to wifi

struct lwesp_ip_mac_t::[anonymous] f

Flags structure

#include <lwesp_private.h>

Link connection active info.

Public Members

Status if connection successful

Connection number

Status if connection is client or server

Connection type

Remote IP address

Remote port

Local port number

struct lwesp_evt_func_t
#include <lwesp_private.h>

Callback function linked list prototype.

Public Members

struct lwesp_evt_func *next

Next function in the list

lwesp_evt_fn fn

Function pointer itself

struct lwesp_modules_t
#include <lwesp_private.h>

ESP modules structure.

Public Members

lwesp_device_t device

ESP device type

lwesp_sw_version_t version_at

Version of AT command software on ESP device

lwesp_sw_version_t version_sdk

Version of SDK used to build AT software

uint32_t active_conns

Bit field of currently active connections,

Todo:

: In case user has more than 32 connections, single variable is not enough

uint32_t active_conns_last

The same as previous but status before last check

Link connection handle

lwesp_ipd_t ipd

Connection incoming data structure

lwesp_conn_t conns[LWESP_CFG_MAX_CONNS]

Array of all connection structures

lwesp_ip_mac_t sta

Station IP and MAC addressed

lwesp_ip_mac_t ap

Access point IP and MAC addressed

struct tm sntp_dt

Data & time structure, used for automatic read request from the module, if feature enabled.

struct lwesp_t
#include <lwesp_private.h>

ESP global structure.

Public Members

size_t locked_cnt

Counter how many times (recursive) stack is currently locked

lwesp_sys_sem_t sem_sync

Synchronization semaphore between threads

lwesp_sys_mbox_t mbox_producer

Producer message queue handle

lwesp_sys_mbox_t mbox_process

Consumer message queue handle

lwesp_sys_thread_t thread_produce

Producer thread handle

lwesp_sys_thread_t thread_process

Processing thread handle

lwesp_buff_t buff

Input processing buffer

lwesp_ll_t ll

Low level functions

lwesp_msg_t *msg

Pointer to current user message being executed

lwesp_evt_t evt

Callback processing structure

lwesp_evt_func_t *evt_func

Callback function linked list

lwesp_evt_fn evt_server

Default callback function for server connections

lwesp_modules_t m

All modules. When resetting, reset structure

uint8_t initialized

Flag indicating ESP library is initialized

uint8_t dev_present

Flag indicating if physical device is connected to host device

struct lwesp_t::[anonymous]::[anonymous] f

Flags structure

union lwesp_t::[anonymous] status

Status structure

uint8_t conn_val_id

Validation ID increased each time device connects to wifi network or on reset. It is used for connections

struct lwesp_esp_device_desc_t
#include <lwesp_private.h>

Physical device descriptor data.

This is used for library internal reasons

Public Members

lwesp_device_t device

Device identification

const char *gmr_strid_1

AT+GMR string identification option 1

const char *gmr_strid_2

AT+GMR string identification option 2

uint32_t min_at_version

Minimum Espressif official AT version for the module

struct lwesp_ip4_addr_t
#include <lwesp_types.h>

IPv4 address structure.

Public Members

uint8_t addr[4]

IP address data

struct lwesp_ip6_addr_t
#include <lwesp_types.h>

IPv6 address structure.

Public Members

uint16_t addr[8]

IP address data

struct lwesp_ip_t
#include <lwesp_types.h>

IP structure.

Public Members

lwesp_ip4_addr_t ip4

IPv4 address

lwesp_ip6_addr_t ip6

IPv6 address

union lwesp_ip_t::[anonymous] addr

Actual IP address

lwesp_iptype_t type

IP type, either V4 or V6

struct lwesp_mac_t
#include <lwesp_types.h>

MAC address.

Public Members

uint8_t mac[6]

MAC address

struct lwesp_sw_version_t
#include <lwesp_types.h>

SW version handle object.

Format is (major << 24 | minor << 16 | patch << 8 | 0)

Public Members

uint32_t version

Version in single hex format

struct lwesp_sta_ssid_pass_pair_t
#include <lwesp_types.h>

Simple helper structure for application purpose.

<>

User can define array of structure objects and set its preferred WIFI options, then trying to iterate through all and connect to first available

Note

This structure is not used by the LwESP library

Public Members

const char *ssid

SSID to connect to

const char *pass

Password for SSID

struct lwesp_linbuff_t
#include <lwesp_types.h>

Linear buffer structure.

Public Members

uint8_t *buff

Pointer to buffer data array

size_t len

Length of buffer array

size_t ptr

Current buffer pointer