SAPI Architecture#
SAPI APIs are designed in layers, where each layer is independent and uses services of the underlying layers.
Application Layer. Application layer contains application specific functionality. Application layer calls SAPI to configure and operate the device.
BSD Socket API. This layer contains BSD Socket API compliant wrapper and supports some of the basic BSD Socket API calls. These APIs can be called from application to initialize and configure the embedded TCP/IP stack and perform data transfers.
WLAN API. This layer contains set of APIs called by the application to initialize and configure Wi-Fi Device. User is recommended to use the given APIs without any modification in order to facilitate upgrading to future releases.
Network API. This layer contains APIs related to network applications like HTTP/HTTPS, SSL/TLS-1.0/1.1/1.2, DHCP, MQTT, DNS, SNTP and WebSockets.
BT/BLE API. This layer contains set of APIs called from application to initialize and configure BT/BLE . User is recommended to use the given APIs without any modification in order to facilitate upgrading to future releases.
WiSeConnect Driver. WiSeConnect Driver software framework contains core functions for state machine maintenance, command preparation, and command response parsing.
Interface Layer. The device supports different host interfaces such as SPI, USB, UART, SDIO, USB-CDC. These APIs are collection of functions specific to a particular interface. The interface functions between the Driver API Layer and the Interface Specific API Layer are independent of the Host interface used. This allows the user to migrate to different interfaces without any change in the application layer.
HAL. Hardware Abstraction Layer APIs are platform specific APIs. The users need to implement or modify these APIs according to their platforms.
Reference Applications#
The WiSeConnect SDK contain reference applications that operate the device in different modes. Users can use these applications as a reference or customize these applications as per their requirements.
SAPI Sample Flow#
The flow diagram below shows sample API flow for Wi-Fi using the SAPI library.