Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of DISCO_L475VG_IOT01A_wifi by
es_wifi.h@1:b37920c1ddb9, 2017-12-19 (annotated)
- Committer:
- jaafaryn
- Date:
- Tue Dec 19 19:29:15 2017 +0000
- Revision:
- 1:b37920c1ddb9
- Parent:
- 0:c61a93635433
- Child:
- 2:9bbbcd0eff1c
Added a function to enter power save mode as described in application note: http://www.inventeksys.com/wp-content/uploads/powersave_v1.1_AN20046.pdf
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| adustm | 0:c61a93635433 | 1 | /** |
| adustm | 0:c61a93635433 | 2 | ****************************************************************************** |
| adustm | 0:c61a93635433 | 3 | * @file es-wifi.h |
| adustm | 0:c61a93635433 | 4 | * @author MCD Application Team |
| adustm | 0:c61a93635433 | 5 | * @version V1.8.0 |
| adustm | 0:c61a93635433 | 6 | * @date 21-April-2017 |
| adustm | 0:c61a93635433 | 7 | * @brief header file for the es-wifi module. |
| adustm | 0:c61a93635433 | 8 | ****************************************************************************** |
| adustm | 0:c61a93635433 | 9 | * @attention |
| adustm | 0:c61a93635433 | 10 | * |
| adustm | 0:c61a93635433 | 11 | * <h2><center>© Copyright (c) 2017 STMicroelectronics International N.V. |
| adustm | 0:c61a93635433 | 12 | * All rights reserved.</center></h2> |
| adustm | 0:c61a93635433 | 13 | * |
| adustm | 0:c61a93635433 | 14 | * Redistribution and use in source and binary forms, with or without |
| adustm | 0:c61a93635433 | 15 | * modification, are permitted, provided that the following conditions are met: |
| adustm | 0:c61a93635433 | 16 | * |
| adustm | 0:c61a93635433 | 17 | * 1. Redistribution of source code must retain the above copyright notice, |
| adustm | 0:c61a93635433 | 18 | * this list of conditions and the following disclaimer. |
| adustm | 0:c61a93635433 | 19 | * 2. Redistributions in binary form must reproduce the above copyright notice, |
| adustm | 0:c61a93635433 | 20 | * this list of conditions and the following disclaimer in the documentation |
| adustm | 0:c61a93635433 | 21 | * and/or other materials provided with the distribution. |
| adustm | 0:c61a93635433 | 22 | * 3. Neither the name of STMicroelectronics nor the names of other |
| adustm | 0:c61a93635433 | 23 | * contributors to this software may be used to endorse or promote products |
| adustm | 0:c61a93635433 | 24 | * derived from this software without specific written permission. |
| adustm | 0:c61a93635433 | 25 | * 4. This software, including modifications and/or derivative works of this |
| adustm | 0:c61a93635433 | 26 | * software, must execute solely and exclusively on microcontroller or |
| adustm | 0:c61a93635433 | 27 | * microprocessor devices manufactured by or for STMicroelectronics. |
| adustm | 0:c61a93635433 | 28 | * 5. Redistribution and use of this software other than as permitted under |
| adustm | 0:c61a93635433 | 29 | * this license is void and will automatically terminate your rights under |
| adustm | 0:c61a93635433 | 30 | * this license. |
| adustm | 0:c61a93635433 | 31 | * |
| adustm | 0:c61a93635433 | 32 | * THIS SOFTWARE IS PROVIDED BY STMICROELECTRONICS AND CONTRIBUTORS "AS IS" |
| adustm | 0:c61a93635433 | 33 | * AND ANY EXPRESS, IMPLIED OR STATUTORY WARRANTIES, INCLUDING, BUT NOT |
| adustm | 0:c61a93635433 | 34 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A |
| adustm | 0:c61a93635433 | 35 | * PARTICULAR PURPOSE AND NON-INFRINGEMENT OF THIRD PARTY INTELLECTUAL PROPERTY |
| adustm | 0:c61a93635433 | 36 | * RIGHTS ARE DISCLAIMED TO THE FULLEST EXTENT PERMITTED BY LAW. IN NO EVENT |
| adustm | 0:c61a93635433 | 37 | * SHALL STMICROELECTRONICS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
| adustm | 0:c61a93635433 | 38 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| adustm | 0:c61a93635433 | 39 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, |
| adustm | 0:c61a93635433 | 40 | * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
| adustm | 0:c61a93635433 | 41 | * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| adustm | 0:c61a93635433 | 42 | * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| adustm | 0:c61a93635433 | 43 | * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| adustm | 0:c61a93635433 | 44 | * |
| adustm | 0:c61a93635433 | 45 | ****************************************************************************** |
| adustm | 0:c61a93635433 | 46 | */ |
| adustm | 0:c61a93635433 | 47 | /* Define to prevent recursive inclusion -------------------------------------*/ |
| adustm | 0:c61a93635433 | 48 | #ifndef __ES_WIFI_H |
| adustm | 0:c61a93635433 | 49 | #define __ES_WIFI_H |
| adustm | 0:c61a93635433 | 50 | |
| adustm | 0:c61a93635433 | 51 | #ifdef __cplusplus |
| adustm | 0:c61a93635433 | 52 | extern "C" { |
| adustm | 0:c61a93635433 | 53 | #endif |
| adustm | 0:c61a93635433 | 54 | |
| adustm | 0:c61a93635433 | 55 | /* Includes ------------------------------------------------------------------*/ |
| adustm | 0:c61a93635433 | 56 | #include "stdint.h" |
| adustm | 0:c61a93635433 | 57 | #include "string.h" |
| adustm | 0:c61a93635433 | 58 | #include "stdio.h" |
| adustm | 0:c61a93635433 | 59 | #include "es_wifi_conf.h" |
| adustm | 0:c61a93635433 | 60 | |
| adustm | 0:c61a93635433 | 61 | /* Exported Constants --------------------------------------------------------*/ |
| adustm | 0:c61a93635433 | 62 | #define ES_WIFI_PAYLOAD_SIZE 1200 |
| adustm | 0:c61a93635433 | 63 | /* Exported macro-------------------------------------------------------------*/ |
| adustm | 0:c61a93635433 | 64 | #define MIN(a, b) ((a) < (b) ? (a) : (b)) |
| adustm | 0:c61a93635433 | 65 | |
| adustm | 0:c61a93635433 | 66 | typedef int8_t (*IO_Init_Func)( void); |
| adustm | 0:c61a93635433 | 67 | typedef int8_t (*IO_DeInit_Func)( void); |
| adustm | 0:c61a93635433 | 68 | typedef void (*IO_Delay_Func)(uint32_t); |
| adustm | 0:c61a93635433 | 69 | typedef int16_t (*IO_Send_Func)( uint8_t *, uint16_t len, uint32_t); |
| adustm | 0:c61a93635433 | 70 | typedef int16_t (*IO_Receive_Func)(uint8_t *, uint16_t len, uint32_t); |
| adustm | 0:c61a93635433 | 71 | |
| adustm | 0:c61a93635433 | 72 | /* Exported typedef ----------------------------------------------------------*/ |
| adustm | 0:c61a93635433 | 73 | typedef enum { |
| adustm | 0:c61a93635433 | 74 | ES_WIFI_STATUS_OK = 0, |
| adustm | 0:c61a93635433 | 75 | ES_WIFI_STATUS_REQ_DATA_STAGE = 1, |
| adustm | 0:c61a93635433 | 76 | ES_WIFI_STATUS_ERROR = 2, |
| adustm | 0:c61a93635433 | 77 | ES_WIFI_STATUS_TIMEOUT = 3, |
| adustm | 0:c61a93635433 | 78 | ES_WIFI_STATUS_IO_ERROR = 4, |
| adustm | 0:c61a93635433 | 79 | }ES_WIFI_Status_t; |
| adustm | 0:c61a93635433 | 80 | |
| adustm | 0:c61a93635433 | 81 | typedef enum { |
| adustm | 0:c61a93635433 | 82 | ES_WIFI_MODE_SINGLE = 0, |
| adustm | 0:c61a93635433 | 83 | ES_WIFI_MODE_MULTI = 1, |
| adustm | 0:c61a93635433 | 84 | }ES_WIFI_ConnMode_t; |
| adustm | 0:c61a93635433 | 85 | |
| adustm | 0:c61a93635433 | 86 | typedef enum { |
| adustm | 0:c61a93635433 | 87 | ES_WIFI_TCP_CONNECTION = 0, |
| adustm | 0:c61a93635433 | 88 | ES_WIFI_UDP_CONNECTION = 1, |
| adustm | 0:c61a93635433 | 89 | ES_WIFI_UDP_LITE_CONNECTION = 2, |
| adustm | 0:c61a93635433 | 90 | ES_WIFI_TCP_SSL_CONNECTION = 3, |
| adustm | 0:c61a93635433 | 91 | ES_WIFI_MQTT_CONNECTION = 4, |
| adustm | 0:c61a93635433 | 92 | }ES_WIFI_ConnType_t; |
| adustm | 0:c61a93635433 | 93 | |
| adustm | 0:c61a93635433 | 94 | /* Security settings for wifi network */ |
| adustm | 0:c61a93635433 | 95 | typedef enum { |
| adustm | 0:c61a93635433 | 96 | ES_WIFI_SEC_OPEN = 0x00, /*!< Wifi is open */ |
| adustm | 0:c61a93635433 | 97 | ES_WIFI_SEC_WEP = 0x01, /*!< Wired Equivalent Privacy option for wifi security. \note This mode can't be used when setting up ES_WIFI wifi */ |
| adustm | 0:c61a93635433 | 98 | ES_WIFI_SEC_WPA = 0x02, /*!< Wi-Fi Protected Access */ |
| adustm | 0:c61a93635433 | 99 | ES_WIFI_SEC_WPA2 = 0x03, /*!< Wi-Fi Protected Access 2 */ |
| adustm | 0:c61a93635433 | 100 | ES_WIFI_SEC_WPA_WPA2= 0x04, /*!< Wi-Fi Protected Access with both modes */ |
| adustm | 0:c61a93635433 | 101 | ES_WIFI_SEC_WPA2_TKIP= 0x05, /*!< Wi-Fi Protected Access with both modes */ |
| adustm | 0:c61a93635433 | 102 | ES_WIFI_SEC_UNKNOWN = 0xFF, /*!< Wi-Fi Unknown Security mode */ |
| adustm | 0:c61a93635433 | 103 | } ES_WIFI_SecurityType_t; |
| adustm | 0:c61a93635433 | 104 | |
| adustm | 0:c61a93635433 | 105 | typedef enum { |
| adustm | 0:c61a93635433 | 106 | ES_WIFI_IPV4 = 0x00, |
| adustm | 0:c61a93635433 | 107 | ES_WIFI_IPV6 = 0x01, |
| adustm | 0:c61a93635433 | 108 | } ES_WIFI_IPVer_t; |
| adustm | 0:c61a93635433 | 109 | |
| adustm | 0:c61a93635433 | 110 | typedef enum { |
| adustm | 0:c61a93635433 | 111 | ES_WIFI_AP_NONE = 0x00, |
| adustm | 0:c61a93635433 | 112 | ES_WIFI_AP_ASSIGNED = 0x01, |
| adustm | 0:c61a93635433 | 113 | ES_WIFI_AP_JOINED = 0x02, |
| adustm | 0:c61a93635433 | 114 | ES_WIFI_AP_ERROR = 0xFF, |
| adustm | 0:c61a93635433 | 115 | } ES_WIFI_APState_t; |
| adustm | 0:c61a93635433 | 116 | |
| adustm | 0:c61a93635433 | 117 | |
| adustm | 0:c61a93635433 | 118 | typedef struct |
| adustm | 0:c61a93635433 | 119 | { |
| adustm | 0:c61a93635433 | 120 | uint32_t Port; |
| adustm | 0:c61a93635433 | 121 | uint32_t BaudRate; |
| adustm | 0:c61a93635433 | 122 | uint32_t DataWidth; |
| adustm | 0:c61a93635433 | 123 | uint32_t Parity; |
| adustm | 0:c61a93635433 | 124 | uint32_t StopBits; |
| adustm | 0:c61a93635433 | 125 | uint32_t Mode; |
| adustm | 0:c61a93635433 | 126 | |
| adustm | 0:c61a93635433 | 127 | }ES_WIFI_UARTConfig_t; |
| adustm | 0:c61a93635433 | 128 | |
| adustm | 0:c61a93635433 | 129 | |
| adustm | 0:c61a93635433 | 130 | typedef struct |
| adustm | 0:c61a93635433 | 131 | { |
| adustm | 0:c61a93635433 | 132 | uint32_t Configuration; |
| adustm | 0:c61a93635433 | 133 | uint32_t WPSPin; |
| adustm | 0:c61a93635433 | 134 | uint32_t VID; |
| adustm | 0:c61a93635433 | 135 | uint32_t PID; |
| adustm | 0:c61a93635433 | 136 | uint8_t MAC[6]; |
| adustm | 0:c61a93635433 | 137 | uint8_t AP_IPAddress[4]; |
| adustm | 0:c61a93635433 | 138 | uint32_t PS_Mode; |
| adustm | 0:c61a93635433 | 139 | uint32_t RadioMode; |
| adustm | 0:c61a93635433 | 140 | uint32_t CurrentBeacon; |
| adustm | 0:c61a93635433 | 141 | uint32_t PrevBeacon; |
| adustm | 0:c61a93635433 | 142 | uint32_t ProductName; |
| adustm | 0:c61a93635433 | 143 | |
| adustm | 0:c61a93635433 | 144 | }ES_WIFI_SystemConfig_t; |
| adustm | 0:c61a93635433 | 145 | |
| adustm | 0:c61a93635433 | 146 | typedef struct { |
| adustm | 0:c61a93635433 | 147 | uint8_t* Address; /*!< Pointer to domain or IP to ping */ |
| adustm | 0:c61a93635433 | 148 | uint32_t Time; /*!< Time in milliseconds needed for pinging */ |
| adustm | 0:c61a93635433 | 149 | uint8_t Success; /*!< Status indicates if ping was successful */ |
| adustm | 0:c61a93635433 | 150 | }ES_WIFI_Ping_t; |
| adustm | 0:c61a93635433 | 151 | |
| adustm | 0:c61a93635433 | 152 | typedef struct { |
| adustm | 0:c61a93635433 | 153 | uint8_t SSID[ES_WIFI_MAX_SSID_NAME_SIZE + 1]; /*!< Service Set Identifier value.Wi-Fi spot name */ |
| adustm | 0:c61a93635433 | 154 | ES_WIFI_SecurityType_t Security; /*!< Security of Wi-Fi spot. */ |
| adustm | 0:c61a93635433 | 155 | int16_t RSSI; /*!< Signal strength of Wi-Fi spot */ |
| adustm | 0:c61a93635433 | 156 | uint8_t MAC[6]; /*!< MAC address of spot */ |
| adustm | 0:c61a93635433 | 157 | uint8_t Channel; /*!< Wi-Fi channel */ |
| adustm | 0:c61a93635433 | 158 | } ES_WIFI_AP_t; |
| adustm | 0:c61a93635433 | 159 | |
| adustm | 0:c61a93635433 | 160 | /* Access point configuration */ |
| adustm | 0:c61a93635433 | 161 | typedef struct { |
| adustm | 0:c61a93635433 | 162 | uint8_t SSID[ES_WIFI_MAX_SSID_NAME_SIZE + 1]; /*!< Network public name for ESP AP mode */ |
| adustm | 0:c61a93635433 | 163 | uint8_t Pass[ES_WIFI_MAX_PSWD_NAME_SIZE + 1]; /*!< Network password for ESP AP mode */ |
| adustm | 0:c61a93635433 | 164 | ES_WIFI_SecurityType_t Security; /*!< Security of Wi-Fi spot. This parameter can be a value of \ref ESP8266_Ecn_t enumeration */ |
| adustm | 0:c61a93635433 | 165 | uint8_t Channel; /*!< Channel Wi-Fi is operating at */ |
| adustm | 0:c61a93635433 | 166 | uint8_t MaxConnections; /*!< Max number of stations that are allowed to connect to ESP AP, between 1 and 4 */ |
| adustm | 0:c61a93635433 | 167 | uint8_t Hidden; /*!< Set to 1 if network is hidden (not broadcast) or zero if noz */ |
| adustm | 0:c61a93635433 | 168 | } ES_WIFI_APConfig_t; |
| adustm | 0:c61a93635433 | 169 | |
| adustm | 0:c61a93635433 | 170 | |
| adustm | 0:c61a93635433 | 171 | typedef struct { |
| adustm | 0:c61a93635433 | 172 | uint8_t SSID[ES_WIFI_MAX_SSID_NAME_SIZE + 1]; /*!< Network public name for ESP AP mode */ |
| adustm | 0:c61a93635433 | 173 | uint8_t IP_Addr[4]; /*!< IP Address */ |
| adustm | 0:c61a93635433 | 174 | uint8_t MAC_Addr[6]; /*!< MAC address */ |
| adustm | 0:c61a93635433 | 175 | } ES_WIFI_APSettings_t; |
| adustm | 0:c61a93635433 | 176 | |
| adustm | 0:c61a93635433 | 177 | typedef struct { |
| adustm | 0:c61a93635433 | 178 | ES_WIFI_AP_t AP[ES_WIFI_MAX_DETECTED_AP]; |
| adustm | 0:c61a93635433 | 179 | uint8_t nbr; |
| adustm | 0:c61a93635433 | 180 | |
| adustm | 0:c61a93635433 | 181 | }ES_WIFI_APs_t; |
| adustm | 0:c61a93635433 | 182 | |
| adustm | 0:c61a93635433 | 183 | typedef struct { |
| adustm | 0:c61a93635433 | 184 | uint8_t SSID[ES_WIFI_MAX_SSID_NAME_SIZE + 1]; |
| adustm | 0:c61a93635433 | 185 | uint8_t pswd[ES_WIFI_MAX_PSWD_NAME_SIZE + 1]; |
| adustm | 0:c61a93635433 | 186 | ES_WIFI_SecurityType_t Security; |
| adustm | 0:c61a93635433 | 187 | uint8_t DHCP_IsEnabled; |
| adustm | 0:c61a93635433 | 188 | uint8_t JoinRetries; |
| adustm | 0:c61a93635433 | 189 | uint8_t IsConnected; |
| adustm | 0:c61a93635433 | 190 | uint8_t AutoConnect; |
| adustm | 0:c61a93635433 | 191 | ES_WIFI_IPVer_t IP_Ver; |
| adustm | 0:c61a93635433 | 192 | uint8_t IP_Addr[4]; |
| adustm | 0:c61a93635433 | 193 | uint8_t IP_Mask[4]; |
| adustm | 0:c61a93635433 | 194 | uint8_t Gateway_Addr[4]; |
| adustm | 0:c61a93635433 | 195 | uint8_t DNS1[4]; |
| adustm | 0:c61a93635433 | 196 | uint8_t DNS2[4]; |
| adustm | 0:c61a93635433 | 197 | } ES_WIFI_Network_t; |
| adustm | 0:c61a93635433 | 198 | |
| adustm | 0:c61a93635433 | 199 | #if (ES_WIFI_USE_AWS == 1) |
| adustm | 0:c61a93635433 | 200 | typedef struct { |
| adustm | 0:c61a93635433 | 201 | ES_WIFI_ConnType_t Type; |
| adustm | 0:c61a93635433 | 202 | uint8_t Number; |
| adustm | 0:c61a93635433 | 203 | uint16_t RemotePort; |
| adustm | 0:c61a93635433 | 204 | uint8_t RemoteIP[4]; |
| adustm | 0:c61a93635433 | 205 | uint8_t *PublishTopic; |
| adustm | 0:c61a93635433 | 206 | uint8_t *SubscribeTopic; |
| adustm | 0:c61a93635433 | 207 | uint8_t *ClientID; |
| adustm | 0:c61a93635433 | 208 | uint8_t MQTTMode; |
| adustm | 0:c61a93635433 | 209 | } ES_WIFI_AWS_Conn_t; |
| adustm | 0:c61a93635433 | 210 | #endif |
| adustm | 0:c61a93635433 | 211 | |
| adustm | 0:c61a93635433 | 212 | typedef struct { |
| adustm | 0:c61a93635433 | 213 | ES_WIFI_ConnType_t Type; |
| adustm | 0:c61a93635433 | 214 | uint8_t Number; |
| adustm | 0:c61a93635433 | 215 | uint16_t RemotePort; |
| adustm | 0:c61a93635433 | 216 | uint16_t LocalPort; |
| adustm | 0:c61a93635433 | 217 | uint8_t RemoteIP[4]; |
| adustm | 0:c61a93635433 | 218 | char* Name; |
| adustm | 0:c61a93635433 | 219 | } ES_WIFI_Conn_t; |
| adustm | 0:c61a93635433 | 220 | |
| adustm | 0:c61a93635433 | 221 | typedef struct { |
| adustm | 0:c61a93635433 | 222 | IO_Init_Func IO_Init; |
| adustm | 0:c61a93635433 | 223 | IO_DeInit_Func IO_DeInit; |
| adustm | 0:c61a93635433 | 224 | IO_Delay_Func IO_Delay; |
| adustm | 0:c61a93635433 | 225 | IO_Send_Func IO_Send; |
| adustm | 0:c61a93635433 | 226 | IO_Receive_Func IO_Receive; |
| adustm | 0:c61a93635433 | 227 | } ES_WIFI_IO_t; |
| adustm | 0:c61a93635433 | 228 | |
| adustm | 0:c61a93635433 | 229 | typedef struct { |
| adustm | 0:c61a93635433 | 230 | uint8_t Product_ID[ES_WIFI_PRODUCT_ID_SIZE]; |
| adustm | 0:c61a93635433 | 231 | uint8_t FW_Rev[ES_WIFI_FW_REV_SIZE]; |
| adustm | 0:c61a93635433 | 232 | uint8_t API_Rev[ES_WIFI_API_REV_SIZE]; |
| adustm | 0:c61a93635433 | 233 | uint8_t Stack_Rev[ES_WIFI_STACK_REV_SIZE]; |
| adustm | 0:c61a93635433 | 234 | uint8_t RTOS_Rev[ES_WIFI_RTOS_REV_SIZE]; |
| adustm | 0:c61a93635433 | 235 | uint8_t Product_Name[ES_WIFI_PRODUCT_NAME_SIZE]; |
| adustm | 0:c61a93635433 | 236 | uint32_t CPU_Clock; |
| adustm | 0:c61a93635433 | 237 | ES_WIFI_SecurityType_t Security; |
| adustm | 0:c61a93635433 | 238 | ES_WIFI_Network_t NetSettings; |
| adustm | 0:c61a93635433 | 239 | ES_WIFI_APSettings_t APSettings; |
| adustm | 0:c61a93635433 | 240 | ES_WIFI_IO_t fops; |
| adustm | 0:c61a93635433 | 241 | uint8_t CmdData[ES_WIFI_DATA_SIZE]; |
| adustm | 0:c61a93635433 | 242 | uint32_t Timeout; |
| adustm | 0:c61a93635433 | 243 | uint32_t BufferSize; |
| adustm | 0:c61a93635433 | 244 | }ES_WIFIObject_t; |
| adustm | 0:c61a93635433 | 245 | |
| adustm | 0:c61a93635433 | 246 | |
| adustm | 0:c61a93635433 | 247 | /* Exported functions --------------------------------------------------------*/ |
| adustm | 0:c61a93635433 | 248 | ES_WIFI_Status_t ES_WIFI_Init(ES_WIFIObject_t *Obj); |
| adustm | 0:c61a93635433 | 249 | ES_WIFI_Status_t ES_WIFI_SetTimeout(ES_WIFIObject_t *Obj, uint32_t Timeout); |
| adustm | 0:c61a93635433 | 250 | ES_WIFI_Status_t ES_WIFI_ListAccessPoints(ES_WIFIObject_t *Obj, ES_WIFI_APs_t *APs); |
| adustm | 0:c61a93635433 | 251 | ES_WIFI_Status_t ES_WIFI_Connect(ES_WIFIObject_t *Obj, const char* SSID, const char* Password, |
| adustm | 0:c61a93635433 | 252 | ES_WIFI_SecurityType_t SecType); |
| adustm | 0:c61a93635433 | 253 | ES_WIFI_Status_t ES_WIFI_Disconnect(ES_WIFIObject_t *Obj); |
| adustm | 0:c61a93635433 | 254 | uint8_t ES_WIFI_IsConnected(ES_WIFIObject_t *Obj); |
| adustm | 0:c61a93635433 | 255 | ES_WIFI_Status_t ES_WIFI_GetNetworkSettings(ES_WIFIObject_t *Obj); |
| adustm | 0:c61a93635433 | 256 | ES_WIFI_Status_t ES_WIFI_GetMACAddress(ES_WIFIObject_t *Obj, uint8_t *mac); |
| adustm | 0:c61a93635433 | 257 | ES_WIFI_Status_t ES_WIFI_GetIPAddress(ES_WIFIObject_t *Obj, uint8_t *ipaddr); |
| adustm | 0:c61a93635433 | 258 | ES_WIFI_Status_t ES_WIFI_GetProductID(ES_WIFIObject_t *Obj, uint8_t *productID); |
| adustm | 0:c61a93635433 | 259 | ES_WIFI_Status_t ES_WIFI_GetFWRevID(ES_WIFIObject_t *Obj, uint8_t *FWRev); |
| adustm | 0:c61a93635433 | 260 | ES_WIFI_Status_t ES_WIFI_GetRTOSRev(ES_WIFIObject_t *Obj, uint8_t *RTOSRev); |
| adustm | 0:c61a93635433 | 261 | ES_WIFI_Status_t ES_WIFI_GetProductName(ES_WIFIObject_t *Obj, uint8_t *productName); |
| adustm | 0:c61a93635433 | 262 | ES_WIFI_Status_t ES_WIFI_GetAPIRev(ES_WIFIObject_t *Obj, uint8_t *APIRev); |
| adustm | 0:c61a93635433 | 263 | ES_WIFI_Status_t ES_WIFI_GetStackRev(ES_WIFIObject_t *Obj, uint8_t *StackRev); |
| adustm | 0:c61a93635433 | 264 | |
| adustm | 0:c61a93635433 | 265 | |
| adustm | 0:c61a93635433 | 266 | ES_WIFI_Status_t ES_WIFI_SetMACAddress(ES_WIFIObject_t *Obj, uint8_t *mac); |
| adustm | 0:c61a93635433 | 267 | ES_WIFI_Status_t ES_WIFI_ResetToFactoryDefault(ES_WIFIObject_t *Obj); |
| adustm | 0:c61a93635433 | 268 | ES_WIFI_Status_t ES_WIFI_ResetModule(ES_WIFIObject_t *Obj); |
| adustm | 0:c61a93635433 | 269 | ES_WIFI_Status_t ES_WIFI_SetProductName(ES_WIFIObject_t *Obj, uint8_t *ProductName); |
| adustm | 0:c61a93635433 | 270 | #if (ES_WIFI_USE_PING == 1) |
| adustm | 0:c61a93635433 | 271 | ES_WIFI_Status_t ES_WIFI_Ping(ES_WIFIObject_t *Obj, uint8_t *address, uint16_t count, uint16_t interval_ms); |
| adustm | 0:c61a93635433 | 272 | #endif |
| adustm | 0:c61a93635433 | 273 | ES_WIFI_Status_t ES_WIFI_DNS_LookUp(ES_WIFIObject_t *Obj, const char *url, uint8_t *ipaddress); |
| adustm | 0:c61a93635433 | 274 | ES_WIFI_Status_t ES_WIFI_StartClientConnection(ES_WIFIObject_t *Obj, ES_WIFI_Conn_t *conn); |
| adustm | 0:c61a93635433 | 275 | ES_WIFI_Status_t ES_WIFI_StopClientConnection(ES_WIFIObject_t *Obj, ES_WIFI_Conn_t *conn); |
| adustm | 0:c61a93635433 | 276 | #if (ES_WIFI_USE_AWS == 1) |
| adustm | 0:c61a93635433 | 277 | ES_WIFI_Status_t ES_WIFI_StartAWSClientConnection(ES_WIFIObject_t *Obj, ES_WIFI_AWS_Conn_t *conn); |
| adustm | 0:c61a93635433 | 278 | #endif |
| adustm | 0:c61a93635433 | 279 | ES_WIFI_Status_t ES_WIFI_StartServerSingleConn(ES_WIFIObject_t *Obj, ES_WIFI_Conn_t *conn); |
| adustm | 0:c61a93635433 | 280 | ES_WIFI_Status_t ES_WIFI_StopServerSingleConn(ES_WIFIObject_t *Obj); |
| adustm | 0:c61a93635433 | 281 | ES_WIFI_Status_t ES_WIFI_StartServerMultiConn(ES_WIFIObject_t *Obj, ES_WIFI_Conn_t *conn); |
| adustm | 0:c61a93635433 | 282 | ES_WIFI_Status_t ES_WIFI_StopServerMultiConn(ES_WIFIObject_t *Obj); |
| adustm | 0:c61a93635433 | 283 | ES_WIFI_Status_t ES_WIFI_SendData(ES_WIFIObject_t *Obj, uint8_t Socket, uint8_t *pdata, uint16_t Reqlen , uint16_t *SentLen, uint32_t timeout); |
| adustm | 0:c61a93635433 | 284 | ES_WIFI_Status_t ES_WIFI_ReceiveData(ES_WIFIObject_t *Obj, uint8_t Socket, uint8_t *pdata, uint16_t Reqlen, uint16_t *Receivedlen, uint32_t timeout); |
| adustm | 0:c61a93635433 | 285 | ES_WIFI_Status_t ES_WIFI_ActivateAP(ES_WIFIObject_t *Obj, ES_WIFI_APConfig_t *ApConfig); |
| adustm | 0:c61a93635433 | 286 | ES_WIFI_APState_t ES_WIFI_WaitAPStateChange(ES_WIFIObject_t *Obj); |
| adustm | 0:c61a93635433 | 287 | |
| adustm | 0:c61a93635433 | 288 | #if (ES_WIFI_USE_FIRMWAREUPDATE == 1) |
| adustm | 0:c61a93635433 | 289 | ES_WIFI_Status_t ES_WIFI_OTA_Upgrade(ES_WIFIObject_t *Obj, uint8_t *link); |
| adustm | 0:c61a93635433 | 290 | #endif |
| adustm | 0:c61a93635433 | 291 | |
| adustm | 0:c61a93635433 | 292 | #if (ES_WIFI_USE_UART == 1) |
| adustm | 0:c61a93635433 | 293 | ES_WIFI_Status_t ES_WIFI_SetUARTBaudRate(ES_WIFIObject_t *Obj, uint16_t BaudRate); |
| adustm | 0:c61a93635433 | 294 | ES_WIFI_Status_t ES_WIFI_GetUARTConfig(ES_WIFIObject_t *Obj, ES_WIFI_UARTConfig_t *pconf); |
| adustm | 0:c61a93635433 | 295 | #endif |
| adustm | 0:c61a93635433 | 296 | |
| adustm | 0:c61a93635433 | 297 | ES_WIFI_Status_t ES_WIFI_GetSystemConfig(ES_WIFIObject_t *Obj, ES_WIFI_SystemConfig_t *pconf); |
| adustm | 0:c61a93635433 | 298 | |
| adustm | 0:c61a93635433 | 299 | ES_WIFI_Status_t ES_WIFI_RegisterBusIO(ES_WIFIObject_t *Obj, IO_Init_Func IO_Init, |
| adustm | 0:c61a93635433 | 300 | IO_DeInit_Func IO_DeInit, |
| adustm | 0:c61a93635433 | 301 | IO_Delay_Func IO_Delay, |
| adustm | 0:c61a93635433 | 302 | IO_Send_Func IO_Send, |
| adustm | 0:c61a93635433 | 303 | IO_Receive_Func IO_Receive); |
| jaafaryn | 1:b37920c1ddb9 | 304 | |
| jaafaryn | 1:b37920c1ddb9 | 305 | ES_WIFI_Status_t ES_WIFI_SetPowerSaveMode(ES_WIFIObject_t *Obj, uint8_t beacon_int, uint16_t sleep_ms); |
| jaafaryn | 1:b37920c1ddb9 | 306 | |
| adustm | 0:c61a93635433 | 307 | #ifdef __cplusplus |
| adustm | 0:c61a93635433 | 308 | } |
| adustm | 0:c61a93635433 | 309 | #endif |
| adustm | 0:c61a93635433 | 310 | #endif /*__ES_WIFI_H*/ |
| adustm | 0:c61a93635433 | 311 | |
| adustm | 0:c61a93635433 | 312 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
