Microchip® Advanced Software Framework

wilc/driver/include/m2m_wifi.h File Reference
#include "common/include/nm_common.h"
#include "driver/include/m2m_types.h"

Data Structures

struct  tstrEthInitParam
 Structure to hold ethernet interface parameters. More...
 
struct  tstrM2MDataBufCtrl
 Structure holding the incoming buffer's data size information, indicating the data size of the buffer and the remaining buffer's data size . The data of the buffer which holds the packet sent to the host is placed in the tstrEthInitParam structure in the au8ethRcvBuf attribute. This following information is retreived in the host when an event M2M_WIFI_RESP_ETHERNET_RX_PACKET is received in the wi-fi callback function tpfAppWifiCb. More...
 
struct  tstrWifiInitParam
 
Structure, holding the Wi-Fi configuration attributes such as the Wi-Fi callback, monitoring mode callback and Ethernet parameter initialization structure.
More...
 
union  tuCtrlStruct
 

Typedefs

typedef void(* tpfAppEthCb )(uint8 u8MsgType, void *pvMsg, void *pvCtrlBuf)
 Ethernet notification callback function receiving events as defined in the Wi-Fi reponses enumeration tenuM2mStaCmd. More...
 
typedef void(* tpfAppMonCb )(tstrM2MWifiRxPacketInfo *pstrWifiRxPacket, uint8 *pu8Payload, uint16 u16PayloadSize)
 Wi-Fi monitoring mode callback function. This function delivers all received wi-Fi packets through the Wi-Fi interface. Applications requiring to operate in the monitoring should call the asynchronous function m2m_wifi_enable_monitoring_mode and expect to receive the wi-fi packets through this callback function, when the event ....is received. To disable the monitoring mode a call to m2m_wifi_disable_monitoring_mode should be made. More...
 
typedef void(* tpfAppWifiCb )(uint8 u8MsgType, void *pvMsg)
 Wi-Fi's main callback function handler, for handling the M2M_WIFI events received on the Wi-Fi interface. Such notifications are received in response to Wi-Fi/P2P operations such as m2m_wifi_request_scan, m2m_wifi_connect. Wi-Fi/P2P operations are implemented in an asynchronous mode, and all incoming information/status are to be handled through this callback function when the corresponding notification is received. Applications are expected to assign this wi-fi callback function by calling m2m_wifi_init. More...
 

Enumerations

enum  tenuSubTypes {
  ASSOC_REQ = 0x00,
  ASSOC_RSP = 0x10,
  REASSOC_REQ = 0x20,
  REASSOC_RSP = 0x30,
  PROBE_REQ = 0x40,
  PROBE_RSP = 0x50,
  BEACON = 0x80,
  ATIM = 0x90,
  DISASOC = 0xA0,
  AUTH = 0xB0,
  DEAUTH = 0xC0,
  ACTION = 0xD0,
  PS_POLL = 0xA4,
  RTS = 0xB4,
  CTS = 0xC4,
  ACK = 0xD4,
  CFEND = 0xE4,
  CFEND_ACK = 0xF4,
  BLOCKACK_REQ = 0x84,
  BLOCKACK = 0x94,
  DATA = 0x08,
  DATA_ACK = 0x18,
  DATA_POLL = 0x28,
  DATA_POLL_ACK = 0x38,
  NULL_FRAME = 0x48,
  CFACK = 0x58,
  CFPOLL = 0x68,
  CFPOLL_ACK = 0x78,
  QOS_DATA = 0x88,
  QOS_DATA_ACK = 0x98,
  QOS_DATA_POLL = 0xA8,
  QOS_DATA_POLL_ACK = 0xB8,
  QOS_NULL_FRAME = 0xC8,
  QOS_CFPOLL = 0xE8,
  QOS_CFPOLL_ACK = 0xF8
}
 Enumeration for Wi-Fi MAC Frame subtype code (6-bit). The frame subtypes fall into one of the three frame type groups as defined in tenuWifiFrameType (MANAGEMENT, CONTROL & DATA). Values are defined as per the IEEE 802.11 standard. More...
 
enum  tenuWifiFrameType {
  MANAGEMENT = 0x00,
  CONTROL = 0x04,
  DATA_BASICTYPE = 0x08,
  RESERVED = 0x0C
}
 Enumeration for Wi-Fi MAC frame type codes (2-bit) The following types are used to identify the type of frame sent or received. Each frame type constitues a number of frame subtypes as defined in tenuSubTypes to specify the exact type of frame. Values are defined as per the IEEE 802.11 standard. More...
 

Functions

NMI_API sint8 m2m_wifi_allow_p2p_connection ()
 
NMI_API sint8 m2m_wifi_ap_add_black_list (uint8 bAddNewEntry, uint8 *mac_addr)
 
NMI_API sint8 m2m_wifi_ap_get_assoc_info (void)
 Request the status information of the currently connected stations to the WILC1000 AP. The result is passed to the Wi-Fi notification callback with the event M2M_WIFI_RESP_AP_ASSOC_INFO. More...
 
NMI_API sint8 m2m_wifi_change_monitoring_channel (uint8 u8ChannelID)
 
NMI_API sint8 m2m_wifi_connect (char *pcSsid, uint8 u8SsidLen, uint8 u8SecType, tuniM2MWifiAuth *puniAuthInfo, uint16 u16Ch)
 
NMI_API sint8 m2m_wifi_deinit (void *arg)
 De-initialize the WINC driver and host interface. More...
 
NMI_API sint8 m2m_wifi_disable_ap (void)
 Synchronous API to disable access point mode on the WINC IC. More...
 
NMI_API sint8 m2m_wifi_disable_monitoring_mode (void)
 
NMI_API sint8 m2m_wifi_disconnect (void)
 Synchronous API to request disconnection from a network. More...
 
NMI_API sint8 m2m_wifi_enable_ap (CONST tstrM2MAPConfig *pstrM2MAPConfig)
 Asynchronous API to enable access point (AKA "hot-spot") mode on the WINC IC. More...
 
NMI_API sint8 m2m_wifi_enable_monitoring_mode (tstrM2MWifiMonitorModeCtrl *pstrMtrCtrl)
 
NMI_API sint8 m2m_wifi_get_connection_info (void)
 Request the status information of the currently connected Wi-Fi AP. The result is passed to the Wi-Fi notification callback with the event M2M_WIFI_RESP_CONN_INFO. More...
 
NMI_API sint8 m2m_wifi_get_mac_address (uint8 *pu8MacAddr0, uint8 *pu8MacAddr1)
 Request the current MAC addresses of the device (the working mac addresses). (the function is Blocking until response received) More...
 
NMI_API uint8 m2m_wifi_get_num_ap_found (void)
 Reads the number of AP's found in the last Scan Request, The function read the number of AP's from global variable which updated in the wifi_cb in M2M_WIFI_RESP_SCAN_DONE. More...
 
NMI_API sint8 m2m_wifi_get_otp_mac_address (uint8 *pu8MacAddr, uint8 *pu8IsValid)
 Request the MAC address stored on the OTP (one time programmable) memory of the device. (the function is Blocking until response received) More...
 
NMI_API uint8 m2m_wifi_get_sleep_mode (void)
 Get the current Power save mode. More...
 
NMI_API sint8 m2m_wifi_handle_events (void *arg)
 Synchronous M2M event handler function. More...
 
NMI_API sint8 m2m_wifi_init (tstrWifiInitParam *pWifiInitParam)
 Synchronous API to initialize the WINC driver. More...
 
NMI_API sint8 m2m_wifi_p2p (uint8 u8Channel, tenuP2PTrigger enuTrigger, uint16 u16WPS_CfgMehods)
 
NMI_API sint8 m2m_wifi_p2p_disconnect (void)
 
NMI_API sint8 m2m_wifi_req_curr_rssi (void)
 Request the current RSSI for the current connected AP, the response received in wifi_cb M2M_WIFI_RESP_CURRENT_RSSI. More...
 
NMI_API sint8 m2m_wifi_req_scan_result (uint8 index)
 Reads the AP information from the Scan Result list with the given index, the response received in wifi_cb M2M_WIFI_RESP_SCAN_RESULT, the response pointer should be casted with tstrM2mWifiscanResult structure. More...
 
NMI_API sint8 m2m_wifi_request_scan (uint8 ch)
 Asynchronous API to request the WINC IC to scan for networks. More...
 
NMI_API sint8 m2m_wifi_request_scan_ssid (uint8 ch, char *pcssid)
 
NMI_API sint8 m2m_wifi_send_ethernet_pkt (uint8 *pu8Packet, uint16 u16PacketSize, uint8 u8IfcId)
 
NMI_API sint8 m2m_wifi_send_wlan_pkt (uint8 *pu8WlanPacket, uint16 u16WlanHeaderLength, uint16 u16WlanPktSize)
 
NMI_API sint8 m2m_wifi_set_lsn_int (tstrM2mLsnInt *pstrM2mLsnInt)
 Set the Wi-Fi listen interval for power save operation. It is represented in units of AP Beacon periods. More...
 
NMI_API sint8 m2m_wifi_set_mac_address (uint8 au8MacAddress0[6], uint8 au8MacAddress1[6])
 Assign MAC addresses to the WILC device. More...
 
NMI_API sint8 m2m_wifi_set_p2p_pin (uint8 *pu8PinNumber, uint8 u8PinLength)
 
NMI_API sint8 m2m_wifi_set_scan_list (tstrM2MScanList *pstrScanList)
 
NMI_API sint8 m2m_wifi_set_scan_options (uint8 u8NumOfSlot, uint8 u8SlotTime)
 
NMI_API sint8 m2m_wifi_set_scan_region (uint8 ScanRegion)
 
NMI_API sint8 m2m_wifi_set_sleep_mode (uint8 PsTyp, uint8 BcastEn)
 Set the power saving mode for the WILC1000. More...
 
NMI_API sint8 m2m_wifi_wps (uint8 u8TriggerType, const char *pcPinNumber)
 Asynchronous API to engage the WINC IC's Wi-Fi Protected Setup (enrollee) function. More...
 
NMI_API sint8 m2m_wifi_wps_disable (void)
 Disable the WILC WPS operation. More...
 
NMI_API sint8 m2m_wifi_set_device_name (uint8 *pu8DeviceName, uint8 u8DeviceNameLength)
 Set the WILC1000 device name which is used as P2P device name. More...
 

NMI_API sint8 m2m_wifi_allow_p2p_connection ( )
Parameters
[in]None
Warning
The p2p mode must have be enabled and active before a m2m_wifi_set_p2p_pin can be called.
Returns
The function returns M2M_SUCCESS for successful operations and a negative value otherwise.

References m2m_wifi_set_p2p_pin().

Referenced by wifi_cb().