Microchip® Advanced Software Framework

at_cmd_Handler.c File Reference
#include "at_cmd_Handler.h"
#include "driver/include/m2m_types.h"
#include "os/include/m2m_wifi_ex.h"
#include <string.h>

Data Structures

struct  str_uart_conn
 
struct  tstrProv_Data
 

Macros

#define DISABLED   0
 
#define ENABLED   1
 
#define ESCAPE_CHAR   27
 
#define GET_CH_ENUM_VAL(ch)   (ch == 255 ? ch : ch-1)
 
#define IS_VAR_IS_L0(var)   (var == 0)
 
#define IS_VAR_IS_L1(var)   (var > 0)
 
#define MAX_RX_BUFFER_LENGTH   1
 
#define RESET_VAR_TO_0(var)   (var = 0)
 
#define SET_VAR_TO_1(var)   (var = 1)
 

Enumerations

enum  {
  AP_INDEX_SSID = 0,
  AP_INDEX_SSID_VISIBLE_MODE,
  AP_INDEX_SEC_TYPE,
  AP_INDEX_SEC_KEY,
  AP_INDEX_CHANNEL,
  PROV_INDEX_SERVER_DOMAIN,
  PROV_INDEX_REDIRECT_STATE
}
 
enum  {
  P2P_INDEX_CHANNEL = 0,
  P2P_INDEX_TRIGGER,
  P2P_INDEX_CFG_METHODS
}
 
enum  enum_connIndexes {
  CONN_INDEX_SSID = 0,
  CONN_INDEX_SSID_LENGTH,
  CONN_INDEX_SEC_TYPE,
  CONN_INDEX_SEC_KEY,
  CONN_INDEX_CHANNEL
}
 
enum  enum_scanlist {
  SCAN_LIST_CH =0,
  SCAN_LIST_NUM_SSID,
  SCAN_LIST_SSID0,
  SCAN_LIST_SSID1,
  SCAN_LIST_SSID2,
  SCAN_LIST_SSID3
}
 

Functions

static uint8 Ascii2Hex (uint8 u8AsciiChar)
 
sint8 atCmd_AntDiversity_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_ApDisable_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_ApEnable_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_AppConfig_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_ChipInfo_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_Connect_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_CurRSSI_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_DisConnect_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_FileDownload_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_GetConnInfo_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_Help_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_HTTPCon_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_Inquiries_Handler (tstrAt_cmd_content *data, strAtCMD_Handler *pastrAtCMD_Handler)
 
sint8 atCmd_IPCon_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_Iperf_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_IsParameterNumericOnly (uint8 *pData)
 
sint8 atCmd_List_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_MonDis_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_MonEn_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_P2pDisable_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_P2pEnable_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_P2pPIN_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_Ping (tstrAt_cmd_content *data, void *moreData, uint8 useStoreValue)
 
sint8 atCmd_PsMode_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_Reset_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_Scan_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_SetStaticIP_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_TxPwr_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_WpsConnect_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
sint8 atCmd_WpsDisable_Handler (tstrAt_cmd_content *data, void *moreData, uint8 useStoredValue)
 
void cmd_handler (void *argument)
 
void get_cmd_txt (uint8 ndx, uint8 *txt)
 
sint8 get_index_cmdHandler (tstrAt_cmd_content *strCmd, strAtCMD_Handler *atCMD_Handler)
 
void handle_data ()
 
void init_at_cmd_handler (strAtCMD_Handler *pstrAtCMD_Handler)
 
static sint8 init_m2m_app (void)
 
sint8 parse_cmd (uint8 *data, tstrAt_cmd_content *strCmd, tstrAt_cmd_parse_chrs parseChrs)
 
void print_cmd_handler_arr (strAtCMD_Handler *astrAtCMD_Handler)
 
void print_Handle_status (sint8 ret, uint8 *cmdTxt)
 
void print_monitoring_result ()
 
static void start_m2m_app (void)
 
static sint32 StrMac2Bin (char *ps8MacStr, char *ps8MacBin)
 
void UART_Handler (void)
 UART IRQ handler. More...
 

Variables

xSemaphoreHandle at_cmd_task1_sem
 
static volatile uint8 carriage_return = false
 
static volatile uint8 escape_command = false
 
static uint8 gaAt_CFG_Values_arr [AT_MAX_CFG_CMD_COUNT][AT_MAX_CMD_LENGTH]
 
static strAtCMD_Handler gaAt_CMD_handler_fn [AT_MAX_COMMANDS_COUNT]
 
static strAtCMD_Handler gastrAtCMD_Handler [AT_MAX_COMMANDS_COUNT]
 
static uint8 gau8DataBuffer [AT_MAX_RX_BUFF_SIZE] ={0}
 
static uint8 gau8DataBufferTemp [AT_MAX_RX_BUFF_SIZE] ={0}
 
volatile uint8_t gau8Rx_buffer [MAX_RX_BUFFER_LENGTH]
 
uint8 gHostNameSNI [AT_MAX_HOST_NAME] =""
 
uint8 gHTTPChecksum
 
uint8 gHTTPport [AT_MAX_PARAM_LENGTH]
 
tstrM2MAPConfig gstrApConfig
 
static tstrAt_cmd_parse_chrs gstrAt_cmd_parse_chrs = {"+","=","[","]",",","/?"}
 
static tstrAt_cmd_content gstrAt_cmdContent
 
struct str_uart_conn gstrConn
 
tstrMonstats gstrMonitorControlStats
 
tstrMonstats gstrMonitorDataStats
 
tstrMonstats gstrMonitorMangementStats
 
tstrM2MP2PConnect gstrP2pConfig
 
uint8 gTLS
 
tstr_app_config gtstrApp_config
 
tstrProv_Data gtstrProv_Data
 
static volatile uint16 gu16Data_Index = 0
 
uint32 gu32IPAddress
 
sint32 gu32IperfPacketCount
 
static volatile uint8 gu8CmdStatus = AT_CMD_STATUS_IDLE
 
static volatile uint8 gu8InvalidPrinted = true
 
static volatile uint8 gu8IsrFired = false
 
uint8 gu8ReceivingUDP
 
uint8 gu8TCPIperfRX
 
static volatile uint8 gu8TO = 0
 
uint8 gu8UDPIperfRX
 
tpf_at_cmd_handler pf_at_cmd_handler
 
uint rx_pos = 0
 
uint8 u8ControlSubtype [AT_MAX_CONTROL_SUBTYPE] = {PS_POLL, RTS, CTS, ACK, CFEND, CFEND_ACK, BLOCKACK_REQ, BLOCKACK}
 
uint8 u8DataSubType [AT_MAX_DATA_SUBTYPE] = {DATA, DATA_ACK, DATA_POLL, DATA_POLL_ACK, NULL_FRAME, CFACK, CFPOLL, CFPOLL_ACK, QOS_DATA, QOS_DATA_ACK, QOS_DATA_POLL, QOS_DATA_POLL_ACK, QOS_NULL_FRAME, QOS_CFPOLL, QOS_CFPOLL_ACK}
 
uint8 u8MangmentSubtype [AT_MAX_MANGEMENT_SUBTYPE] = {ASSOC_REQ, ASSOC_RSP, REASSOC_REQ, REASSOC_RSP, PROBE_REQ, PROBE_RSP, BEACON, ATIM, DISASOC, AUTH, DEAUTH, ACTION}
 

#define DISABLED   0
#define ENABLED   1

Referenced by init_m2m_app(), and start_m2m_app().

#define ESCAPE_CHAR   27

Referenced by handle_data(), and parse_cmd().

#define GET_CH_ENUM_VAL (   ch)    (ch == 255 ? ch : ch-1)
#define IS_VAR_IS_L0 (   var)    (var == 0)
#define IS_VAR_IS_L1 (   var)    (var > 0)
#define MAX_RX_BUFFER_LENGTH   1
#define RESET_VAR_TO_0 (   var)    (var = 0)

Referenced by handle_data(), and start_m2m_app().

#define SET_VAR_TO_1 (   var)    (var = 1)

anonymous enum
Enumerator
AP_INDEX_SSID 
AP_INDEX_SSID_VISIBLE_MODE 
AP_INDEX_SEC_TYPE 
AP_INDEX_SEC_KEY 
AP_INDEX_CHANNEL 
PROV_INDEX_SERVER_DOMAIN 
PROV_INDEX_REDIRECT_STATE 
anonymous enum
Enumerator
P2P_INDEX_CHANNEL 
P2P_INDEX_TRIGGER 
P2P_INDEX_CFG_METHODS 
Enumerator
CONN_INDEX_SSID 
CONN_INDEX_SSID_LENGTH 
CONN_INDEX_SEC_TYPE 
CONN_INDEX_SEC_KEY 
CONN_INDEX_CHANNEL 
Enumerator
SCAN_LIST_CH 
SCAN_LIST_NUM_SSID 
SCAN_LIST_SSID0 
SCAN_LIST_SSID1 
SCAN_LIST_SSID2 
SCAN_LIST_SSID3 

static uint8 Ascii2Hex ( uint8  u8AsciiChar)
static

Referenced by atCmd_MonEn_Handler(), and StrMac2Bin().

sint8 atCmd_GetConnInfo_Handler ( tstrAt_cmd_content data,
void *  moreData,
uint8  useStoredValue 
)
sint8 atCmd_Help_Handler ( tstrAt_cmd_content data,
void *  moreData,
uint8  useStoredValue 
)

References AT_ERR_NO_ERROR, and PRINT.

sint8 atCmd_IsParameterNumericOnly ( uint8 pData)
sint8 atCmd_List_Handler ( tstrAt_cmd_content data,
void *  moreData,
uint8  useStoredValue 
)
sint8 atCmd_Reset_Handler ( tstrAt_cmd_content data,
void *  moreData,
uint8  useStoredValue 
)
void cmd_handler ( void *  argument)
void get_cmd_txt ( uint8  ndx,
uint8 txt 
)

References AT_MAX_COMMANDS_COUNT, and NULL.

Referenced by wifi_cb().

sint8 get_index_cmdHandler ( tstrAt_cmd_content strCmd,
strAtCMD_Handler atCMD_Handler 
)
void init_at_cmd_handler ( strAtCMD_Handler pstrAtCMD_Handler)

References AT_MAX_COMMANDS_COUNT.

Referenced by init_m2m_app().

void print_cmd_handler_arr ( strAtCMD_Handler astrAtCMD_Handler)

References AT_MAX_COMMANDS_COUNT.

Referenced by init_m2m_app().

static sint32 StrMac2Bin ( char *  ps8MacStr,
char *  ps8MacBin 
)
static
void UART_Handler ( void  )

UART IRQ handler.

Interrupt handler for UART.

References CONF_UART, gau8Rx_buffer, handle_data(), rx_pos, uart_get_status(), and uart_read().

xSemaphoreHandle at_cmd_task1_sem
volatile uint8 carriage_return = false
static

Referenced by handle_data().

volatile uint8 escape_command = false
static

Referenced by handle_data().

uint8 gaAt_CFG_Values_arr[AT_MAX_CFG_CMD_COUNT][AT_MAX_CMD_LENGTH]
static
Initial value:
=
{
"ECHO",
"HINT"
}

Referenced by atCmd_AppConfig_Handler(), and atCmd_List_Handler().

strAtCMD_Handler gaAt_CMD_handler_fn[AT_MAX_COMMANDS_COUNT]
static
strAtCMD_Handler gastrAtCMD_Handler[AT_MAX_COMMANDS_COUNT]
static
uint8 gau8DataBuffer[AT_MAX_RX_BUFF_SIZE] ={0}
static

Referenced by handle_data(), and start_m2m_app().

uint8 gau8DataBufferTemp[AT_MAX_RX_BUFF_SIZE] ={0}
static

Referenced by parse_cmd().

volatile uint8_t gau8Rx_buffer[MAX_RX_BUFFER_LENGTH]
uint8 gHostNameSNI[AT_MAX_HOST_NAME] =""
uint8 gHTTPChecksum
tstrM2MAPConfig gstrApConfig
tstrAt_cmd_parse_chrs gstrAt_cmd_parse_chrs = {"+","=","[","]",",","/?"}
static
tstrAt_cmd_content gstrAt_cmdContent
static
struct str_uart_conn gstrConn

Referenced by atCmd_Connect_Handler().

tstrMonstats gstrMonitorControlStats
tstrMonstats gstrMonitorDataStats
tstrMonstats gstrMonitorMangementStats
tstrM2MP2PConnect gstrP2pConfig
uint8 gTLS
tstr_app_config gtstrApp_config
tstrProv_Data gtstrProv_Data
volatile uint16 gu16Data_Index = 0
static

Referenced by handle_data(), and start_m2m_app().

uint32 gu32IPAddress
sint32 gu32IperfPacketCount
volatile uint8 gu8CmdStatus = AT_CMD_STATUS_IDLE
static

Referenced by handle_data(), and start_m2m_app().

volatile uint8 gu8InvalidPrinted = true
static

Referenced by handle_data(), and start_m2m_app().

volatile uint8 gu8IsrFired = false
static

Referenced by handle_data(), and start_m2m_app().

uint8 gu8ReceivingUDP
uint8 gu8TCPIperfRX
volatile uint8 gu8TO = 0
static
uint8 gu8UDPIperfRX
tpf_at_cmd_handler pf_at_cmd_handler
uint rx_pos = 0

Referenced by UART_Handler().