Morse Micro IoT SDK  2.10.4
ap_mode.c File Reference

Detailed Description

AP Example Application.

Note
It is assumed that you have followed the steps in the Getting Started guide and are therefore familiar with how to build, flash, and monitor an application using the MM-IoT-SDK framework.

Definition in file ap_mode.c.

#include <string.h>
#include "mmconfig.h"
#include "mmosal.h"
#include "mmutils.h"
#include "mm_app_common.h"
#include "mm_app_loadconfig.h"
Include dependency graph for ap_mode.c:

Go to the source code of this file.

Macros

#define STATIC_LOCAL_IP   "192.168.1.1"
 Statically configured IP address. More...
 
#define STATIC_GATEWAY   "192.168.1.1"
 Statically configured gateway address. More...
 
#define STATIC_NETMASK   "255.255.255.0"
 Statically configured netmask. More...
 
#define AP_SSID   MorseMicroIoT
 SSID of the AP. More...
 
#define SAE_PASSPHRASE   12345678
 Passphrase of the AP (ignored if security type is not SAE). More...
 
#define SECURITY_TYPE   MMWLAN_SAE
 Security type (. More...
 
#define PMF_MODE   MMWLAN_PMF_REQUIRED
 Protected Management Frames (PMF) mode (. More...
 
#define OP_CLASS   (71) /* US, 8 MHz */
 Operating Class to use for AP. More...
 
#define S1G_CHANNEL   (44) /* US, 8 MHz */
 S1G Channel to use for AP. More...
 
#define PRIMARY_BW_MHZ   (0)
 Primary Bandwidth to use for AP. More...
 
#define PRIMARY_1MHZ_CHANNEL_INDEX   (0)
 Primary 1 MHz Channel Index to use for AP. More...
 
#define MAX_STAS   MMWLAN_DEFAULT_AP_MAX_STAS
 The maximum number of stations that can connect to the AP. More...
 
#define _STRINGIFY(x)   #x
 Stringify macro. More...
 
#define STRINGIFY(x)   _STRINGIFY(x)
 Convert the content of the given macro to a string. More...
 

Functions

static void handle_ap_sta_status (const struct mmwlan_ap_sta_status *sta_status, void *arg)
 Handler for AP STA Status callback. More...
 
static void load_ap_mmipal_init_args (struct mmipal_init_args *args)
 Loads the provided structure with initialization parameters read from config store. More...
 
void load_mmwlan_ap_args (struct mmwlan_ap_args *ap_args)
 Loads the provided structure with initialization parameters read from config store. More...
 
static void load_mmwlan_settings_ap (void)
 Loads various WLAN AP specific settings from config store and applies them. More...
 
static void link_status_callback (const struct mmipal_link_status *link_status)
 Link status callback. More...
 
void app_init (void)
 Main entry point to the application. More...
 

Variables

uint32_t opaque_argument_value
 A throw away variable for checking that the opaque argument is correct. More...
 

Macro Definition Documentation

◆ _STRINGIFY

#define _STRINGIFY (   x)    #x

Stringify macro.

Do not use directly; use STRINGIFY().

Definition at line 120 of file ap_mode.c.

◆ AP_SSID

#define AP_SSID   MorseMicroIoT

SSID of the AP.

(Do not quote; it will be stringified.)

Definition at line 51 of file ap_mode.c.

◆ MAX_STAS

#define MAX_STAS   MMWLAN_DEFAULT_AP_MAX_STAS

The maximum number of stations that can connect to the AP.

Must not be greater than MMWLAN_AP_MAX_STAS_LIMIT.

Definition at line 116 of file ap_mode.c.

◆ OP_CLASS

#define OP_CLASS   (71) /* US, 8 MHz */

Operating Class to use for AP.

This together with S1G_CHANNEL must correspond to a channel in the regulatory database.

Definition at line 83 of file ap_mode.c.

◆ PMF_MODE

#define PMF_MODE   MMWLAN_PMF_REQUIRED

Protected Management Frames (PMF) mode (.

See also
mmwlan_pmf_mode).

Definition at line 69 of file ap_mode.c.

◆ PRIMARY_1MHZ_CHANNEL_INDEX

#define PRIMARY_1MHZ_CHANNEL_INDEX   (0)

Primary 1 MHz Channel Index to use for AP.

Definition at line 108 of file ap_mode.c.

◆ PRIMARY_BW_MHZ

#define PRIMARY_BW_MHZ   (0)

Primary Bandwidth to use for AP.

Valid values:

  • 0 (auto)
  • 1
  • 2

Definition at line 103 of file ap_mode.c.

◆ S1G_CHANNEL

#define S1G_CHANNEL   (44) /* US, 8 MHz */

S1G Channel to use for AP.

This together with OP_CLASS must correspond to a channel in the regulatory database.

Definition at line 91 of file ap_mode.c.

◆ SAE_PASSPHRASE

#define SAE_PASSPHRASE   12345678

Passphrase of the AP (ignored if security type is not SAE).

(Do not quote; it will be stringified.)

Definition at line 57 of file ap_mode.c.

◆ SECURITY_TYPE

#define SECURITY_TYPE   MMWLAN_SAE

Security type (.

See also
mmwlan_security_type).

Definition at line 63 of file ap_mode.c.

◆ STATIC_GATEWAY

#define STATIC_GATEWAY   "192.168.1.1"

Statically configured gateway address.

Definition at line 36 of file ap_mode.c.

◆ STATIC_LOCAL_IP

#define STATIC_LOCAL_IP   "192.168.1.1"

Statically configured IP address.

Definition at line 32 of file ap_mode.c.

◆ STATIC_NETMASK

#define STATIC_NETMASK   "255.255.255.0"

Statically configured netmask.

Definition at line 40 of file ap_mode.c.

◆ STRINGIFY

#define STRINGIFY (   x)    _STRINGIFY(x)

Convert the content of the given macro to a string.

Definition at line 122 of file ap_mode.c.

Function Documentation

◆ app_init()

void app_init ( void  )

Main entry point to the application.

This will be invoked in a thread once operating system and hardware initialization has completed. It may return, but it does not have to.

Definition at line 399 of file ap_mode.c.

◆ handle_ap_sta_status()

static void handle_ap_sta_status ( const struct mmwlan_ap_sta_status sta_status,
void *  arg 
)
static

Handler for AP STA Status callback.

Parameters
sta_statusSTA status information.
argOpaque argument that was provided when the callback was registered.

Definition at line 133 of file ap_mode.c.

◆ link_status_callback()

static void link_status_callback ( const struct mmipal_link_status link_status)
static

Link status callback.

Parameters
link_statusCurrent link status

Definition at line 379 of file ap_mode.c.

◆ load_ap_mmipal_init_args()

static void load_ap_mmipal_init_args ( struct mmipal_init_args args)
static

Loads the provided structure with initialization parameters read from config store.

If a specific parameter is not found then default values are used. Use this function to load defaults before calling mmipal_init().

Note
This is a AP specific implementation.
Parameters
argsA pointer to the mmipal_init_args to return the settings in.

Definition at line 155 of file ap_mode.c.

◆ load_mmwlan_ap_args()

void load_mmwlan_ap_args ( struct mmwlan_ap_args ap_args)

Loads the provided structure with initialization parameters read from config store.

If a specific parameter is not found then default values are used. Use this function to load defaults before calling mmwlan_ap_enable().

Parameters
ap_argsA pointer to the mmwlan_ap_args to return the settings in.

Definition at line 179 of file ap_mode.c.

◆ load_mmwlan_settings_ap()

static void load_mmwlan_settings_ap ( void  )
static

Loads various WLAN AP specific settings from config store and applies them.

Definition at line 323 of file ap_mode.c.

Variable Documentation

◆ opaque_argument_value

uint32_t opaque_argument_value

A throw away variable for checking that the opaque argument is correct.

Definition at line 125 of file ap_mode.c.