SAPI Overview#

The RS9116W Simple API (SAPI) is a comprehensive collection of Wireless, Network Applications, BSD Socket APIs, and RS9116 driver code along with different HALs for mapping to platform interface on which the library may be ported.

This documentation in this section describes the RS9116 WiSeConnect SAPI (Simple API) library, including:

  • Brief descriptions about the RS9116 WiSeConnect SAPI Architecture

  • Details about the APIs and configurations available in the SAPI library

  • Recent updates of the SAPI library changes

SAPI is intended to run on a host MCU with/without RTOS. Use the given APIs without any modifications to make upgrading to future releases easier. Make sure you also update SAPI with the RS9116 device firmware.

RS9116 device includes Wi-Fi, TCP/IP Networking stack with SSL/TLS support up to TLS 1.2, HTTP/HTTPS, Web sockets, DHCP, MQTT client, and Bluetooth 5 stacks embedded. This device requires a separate application processor, which acts as a host. Host can communicate with RS9116 device using one of the interfaces listed below.

RS9116 supports the following interfaces for host interaction:

  • SPI

  • UART

  • SDIO (in development)

  • USB-CDC

SAPI enables easy migration onto any platform with its uniform APIs. This library simplifies application development on the host. Users can develop application software without learning the underlying peripheral register interface and other details.

RS9116W release consists of two main components, Firmware and SAPI Library. Both components have the same revision number as they are tightly coupled. Latest releases might have bug fixes, enhancements, and new features in SAPI and/or Firmware. Most of the new features have associated APIs, which are available in the latest SAPI release only. It is recommended to always update SAPI and Firmware to same release version.

RS9116W Block Diagram with SAPI components

Features#

  • Platform-independent, interrupt-driven drivers written in C.

  • Drivers provide a simpler, functional interface and eliminate the need to manage the low-level host interface protocol.

  • Common APIs for four host interfaces (SPI, UART, SDIO, USB-CDC), which enables easy migration to different host interfaces.

  • Supports bare metal and FreeRTOS OS by default. Other RTOS can be supported through OS Abstraction changes.

  • May be used with Simplicity Studio, Keil uVision and IAR IDEs. The SAPI driver can also be ported for use with other IDEs that use GCC or ARM compiler toolchains.