Extending the X_NUCLEO_IDW01M1 to allow configuration of the board as an access point

Dependents:   X_NUCLEO_IDW01M1_AP_Test

Fork of X_NUCLEO_IDW01M1 by ST

Committer:
scsims
Date:
Tue Jun 21 20:20:50 2016 +0000
Revision:
18:b265b3b696f1
Parent:
1:bd9db471d47d
Child:
22:a1276b7d3b2d
Added SPWFInterface::start_access_point() to allow the module to be put into AP mode. Operational data rates are configurable as is the channel number. AP's have to be open as the underlying driver only appears to support open APs at the moment

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mridup 0:dc55f40eb04f 1 /**
mridup 0:dc55f40eb04f 2 ******************************************************************************
mridup 0:dc55f40eb04f 3 * @file wifi_const.h
mridup 0:dc55f40eb04f 4 * @author Central LAB
mridup 0:dc55f40eb04f 5 * @version V2.0.0
mridup 0:dc55f40eb04f 6 * @date 10-February-2016
mridup 0:dc55f40eb04f 7 * @brief Describes the constants and defines in X-CUBE-WIFI1
mridup 0:dc55f40eb04f 8 ******************************************************************************
mridup 0:dc55f40eb04f 9 * @attention
mridup 0:dc55f40eb04f 10 *
mridup 0:dc55f40eb04f 11 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
mridup 0:dc55f40eb04f 12 *
mridup 0:dc55f40eb04f 13 * Redistribution and use in source and binary forms, with or without modification,
mridup 0:dc55f40eb04f 14 * are permitted provided that the following conditions are met:
mridup 0:dc55f40eb04f 15 * 1. Redistributions of source code must retain the above copyright notice,
mridup 0:dc55f40eb04f 16 * this list of conditions and the following disclaimer.
mridup 0:dc55f40eb04f 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
mridup 0:dc55f40eb04f 18 * this list of conditions and the following disclaimer in the documentation
mridup 0:dc55f40eb04f 19 * and/or other materials provided with the distribution.
mridup 0:dc55f40eb04f 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mridup 0:dc55f40eb04f 21 * may be used to endorse or promote products derived from this software
mridup 0:dc55f40eb04f 22 * without specific prior written permission.
mridup 0:dc55f40eb04f 23 *
mridup 0:dc55f40eb04f 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mridup 0:dc55f40eb04f 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mridup 0:dc55f40eb04f 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mridup 0:dc55f40eb04f 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mridup 0:dc55f40eb04f 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mridup 0:dc55f40eb04f 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mridup 0:dc55f40eb04f 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mridup 0:dc55f40eb04f 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mridup 0:dc55f40eb04f 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mridup 0:dc55f40eb04f 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mridup 0:dc55f40eb04f 34 *
mridup 0:dc55f40eb04f 35 ******************************************************************************
mridup 0:dc55f40eb04f 36 */
mridup 0:dc55f40eb04f 37
mridup 0:dc55f40eb04f 38 /** @defgroup NUCLEO_WIFI_INTERFACE_Private_Defines
mridup 0:dc55f40eb04f 39 * @{
mridup 0:dc55f40eb04f 40 */
mridup 0:dc55f40eb04f 41
mridup 0:dc55f40eb04f 42 #define EPOCH_TIME 1453727657//Human time (GMT): Mon, 25 Jan 2016 13:14:17 GMT
mridup 0:dc55f40eb04f 43 #define EXTI_CONF_TIMER 1900 //millisec
mridup 0:dc55f40eb04f 44 #define PROCESS_WIFI_TIMER 1
mridup 0:dc55f40eb04f 45 #define SLEEP_RESUME_PREVENT 2000
mridup 0:dc55f40eb04f 46 #define RINGBUF_SIZE 2048//1024//3072//2048
mridup 0:dc55f40eb04f 47 #define MAX_BUFFER_GLOBAL 512
mridup 0:dc55f40eb04f 48 #define MAX_PREFETCH_BUFFER 20
mridup 0:dc55f40eb04f 49 #define MAX_WIFI_SCAN_NETWORK 256
mridup 0:dc55f40eb04f 50 #define RxBufferSize 64
mridup 0:dc55f40eb04f 51 #define AT_RESP_LEN_OK 6 //\r\nOK\r\n
mridup 0:dc55f40eb04f 52 #define AT_RESP_LEN_GPIOR 21//GPIO n = 0,in\r\n\r\nOK\r\n
mridup 0:dc55f40eb04f 53 #define AT_RESP_HELP_TEXT_LEN 512
mridup 0:dc55f40eb04f 54 #define AT_ATTENTION "AT\r"
mridup 0:dc55f40eb04f 55 #define AT_WIFI_ENABLE "AT+S.WIFI=%d\r"
mridup 0:dc55f40eb04f 56 #define AT_GET_CONFIGURATION_VALUE "AT+S.GCFG=%s\r"
mridup 0:dc55f40eb04f 57 #define AT_SET_CONFIGURATION_VALUE "AT+S.SCFG=%s,%d\r"
mridup 0:dc55f40eb04f 58 #define AT_SET_CONFIGURATION_ADDRESS "AT+S.SCFG=%s,%s\r"
mridup 0:dc55f40eb04f 59 //#define AT_GET_SSID "AT&F\r"
mridup 0:dc55f40eb04f 60 #define AT_SET_SSID "AT+S.SSIDTXT=%s\r"
mridup 0:dc55f40eb04f 61 #define AT_SET_SEC_KEY "AT+S.SCFG=wifi_wpa_psk_text,%s\r"
mridup 0:dc55f40eb04f 62 #define AT_RESTORE_DEFAULT_SETTING "AT&F\r"
mridup 0:dc55f40eb04f 63 #define AT_SAVE_CURRENT_SETTING "AT&W\r"
mridup 0:dc55f40eb04f 64 #define AT_SET_POWER_STATE "AT+CFUN=%d\r"
mridup 0:dc55f40eb04f 65 #define AT_HELP_TEXT "AT+S.HELP\r"
mridup 0:dc55f40eb04f 66 #define AT_RESET_MSG "\r\n+WIND:2:Reset\r\n"
mridup 0:dc55f40eb04f 67
mridup 0:dc55f40eb04f 68 #define UNDEFINE_LENGTH 0xFFFF
mridup 0:dc55f40eb04f 69 #define AT_WiFi_SCAN "AT+S.SCAN\r"
mridup 0:dc55f40eb04f 70 #define AT_SOCKET_OPEN "AT+S.SOCKON=%s,%d,%s,ind\r"
mridup 0:dc55f40eb04f 71 #define AT_SOCKET_WRITE "AT+S.SOCKW=%d,%d\r"
mridup 0:dc55f40eb04f 72 #define AT_SOCKET_READ "AT+S.SOCKR=%d,%d\r"
mridup 0:dc55f40eb04f 73 #define AT_SOCKET_CLOSE "AT+S.SOCKC=%d\r"
mridup 0:dc55f40eb04f 74 #define AT_SERVER_SOCKET_OPEN "AT+S.SOCKD=%d,%s,ind\r" //with indication option
mridup 0:dc55f40eb04f 75 #define AT_SERVER_SOCKET_CLOSE "AT+S.SOCKD=0\r"
mridup 0:dc55f40eb04f 76 #define AT_QUERY_PENDING_DATA "AT+S.SOCKQ=%d\r"
mridup 0:dc55f40eb04f 77 #define AT_DISPLAY_FILE_NAME "AT+S.FSL\r"
mridup 0:dc55f40eb04f 78 #define AT_DISPLAY_FILE_CONTENT "AT+S.FSP=/%s\r"
mridup 0:dc55f40eb04f 79 #define AT_CREATE_NEW_HTML_FILE "AT+S.FSC=/%s,%d\r"
mridup 0:dc55f40eb04f 80 #define AT_APPEND_FILE "AT+S.FSA=/%s,%d\r"
mridup 0:dc55f40eb04f 81 #define AT_DELETE_FILE "AT+S.FSD=/%s\r"
mridup 0:dc55f40eb04f 82 #define AT_DOWNLOAD_IMAGE_FILE "AT+S.HTTPDFSUPDATE=%s,/%s,%d\r"
mridup 0:dc55f40eb04f 83 #define AT_ERASE_FLASH_MEMORY "AT+S.HTTPDFSERASE\r"
mridup 0:dc55f40eb04f 84
mridup 0:dc55f40eb04f 85 #define AT_CMD_TO_DATA_MODE "AT+S.\r"
mridup 0:dc55f40eb04f 86 #define AT_DATA_TO_CMD_MODE "at+s." /* NOT \r */
mridup 0:dc55f40eb04f 87 #define AT_HTTPPOST_REQUEST "AT+S.HTTPPOST=%s\r"
mridup 0:dc55f40eb04f 88 #define AT_HTTPD "AT+S.HTTPD=%d\r"
mridup 0:dc55f40eb04f 89 #define AT_GET_STATUS_VALUE "AT+S.STS=%s\r"
mridup 0:dc55f40eb04f 90
mridup 0:dc55f40eb04f 91 /************Wi-Fi Config Variables**************/
mridup 0:dc55f40eb04f 92
mridup 0:dc55f40eb04f 93 #define BLINK_LED "blink_led"
mridup 0:dc55f40eb04f 94 #define LOCALECHO1 "localecho1"
mridup 0:dc55f40eb04f 95 #define CONSOLE1_HWFC "console1_hwfc"
mridup 0:dc55f40eb04f 96 #define CONSOLE1_SPEED "console1_speed"
mridup 0:dc55f40eb04f 97 #define WIFI_PRIV_MODE "wifi_priv_mode"
mridup 0:dc55f40eb04f 98 #define IP_USE_DHCP_SERVER "ip_use_dhcp"
mridup 0:dc55f40eb04f 99 #define IP_USE_HTTPD "ip_use_httpd"
mridup 0:dc55f40eb04f 100 #define WIFI_MODE "wifi_mode"
mridup 0:dc55f40eb04f 101 #define WIFI_WPA_SECURITY "wifi_wpa_psk_text"
mridup 0:dc55f40eb04f 102 #define WIFI_CHANNEL_NUMBER "wifi_channelnum"
mridup 0:dc55f40eb04f 103 #define WIFI_IP_ADDRESS "ip_ipaddr"
mridup 0:dc55f40eb04f 104 #define WIFI_IP_DEFAULT_GATEWAY "ip_gw"
mridup 0:dc55f40eb04f 105 #define WIFI_IP_DNS "ip_dns"
mridup 0:dc55f40eb04f 106 #define WIFI_IP_NETMASK "ip_netmask"
mridup 0:dc55f40eb04f 107 #define WIFI_IP_HOSTNAME "ip_hostname"
mridup 0:dc55f40eb04f 108 #define WIFI_IP_APDOMAINNAME "ip_apdomainname"
mridup 0:dc55f40eb04f 109 #define WIFI_IP_APREDIRECT "ip_apredirect"
mridup 0:dc55f40eb04f 110 #define WIFI_IP_HTTP_TIMEOUT "ip_http_get_recv_timeout"
mridup 0:dc55f40eb04f 111 #define WIFI_IP_DHCP_TIMEOUT "ip_dhcp_timeout"
mridup 0:dc55f40eb04f 112
mridup 0:dc55f40eb04f 113 #define WIFI_SLEEP_ENABLED "sleep_enabled"
mridup 0:dc55f40eb04f 114 #define WIFI_HT_MODE "wifi_ht_mode"
scsims 18:b265b3b696f1 115 #define WIFI_BAS_RATE_MASK "wifi_bas_rate_mask"
mridup 0:dc55f40eb04f 116 #define WIFI_OPR_RATE_MASK "wifi_opr_rate_mask"
mridup 0:dc55f40eb04f 117 #define WIFI_POWERSAVE "wifi_powersave"
mridup 0:dc55f40eb04f 118 #define WIFI_OPERATIONAL_MODE "wifi_operational_mode"
mridup 0:dc55f40eb04f 119 #define WIFI_LISTEN_INTERVAL "wifi_listen_interval"
mridup 0:dc55f40eb04f 120 #define WIFI_BEACON_WAKEUP "wifi_beacon_wakeup"
mridup 0:dc55f40eb04f 121 #define WIFI_STANDBY_ENABLED "standby_enabled"
mridup 0:dc55f40eb04f 122 #define WIFI_STANDBY_TIME "standby_time"
mridup 0:dc55f40eb04f 123 #define WIFI_TX_POWER "wifi_tx_power"
mridup 0:dc55f40eb04f 124 #define WIFI_IBSS_IP_ADDR "192.168.2.100"
mridup 0:dc55f40eb04f 125 #define WIFI_IBSS_DEFAULT_GATEWAY "192.168.2.1"
mridup 0:dc55f40eb04f 126 #define WIFI_IBSS_IP_DNS_ADDR "192.168.2.1"
mridup 0:dc55f40eb04f 127 #define WIFI_IBSS_IP_MASK "255.255.255.0"
mridup 0:dc55f40eb04f 128 #define WIFI_IP_USE_DHCP 0
mridup 0:dc55f40eb04f 129
mridup 0:dc55f40eb04f 130 /**
mridup 0:dc55f40eb04f 131 * @}
mridup 0:dc55f40eb04f 132 */