Approach for Porting WiSeConnect™ SDK for an External Host#

The following figure illustrates the software-layered architecture of an SiWx917™ application in Network Co-processor (NCP) mode. The architecture presents the application flow in terms of software functional layers beginning with host user application, the WiSeConnect™ SDK (hereafter referred to as SDK), host platform drivers, an interface between a host MCU and SiWx917 NCP (SPI/UART/SDIO), and ending with the SiWx917 NCP core layers. It also highlights the functional layers of SDK that are to be ported.

  1. The SDK provides the SiWx917 Wi-Fi/BLE connectivity, and application protocol API to be used at the host application. It also contains the SiWx917 NCP examples. The functional layers of SDK include the CMSIS-RTOS2 Abstraction Layer, API implementation libraries, SiWx917 driver, and Hardware Abstraction Layer (HAL). Below are the layers that need to be ported.

    • CMSIS-RTOS2 Abstraction Layer: The SDK supports the CMSIS-RTOS2 API. The CMSIS-RTOS2 is a generic Real-Time Operating System (RTOS) interface API that should be ported to the desired RTOS library such as FreeRTOS, ThreadX, etc.

      Note: CMSIS-RTOS2 is a vendor-independent RTOS interface layer for ARM Cortex processors. It abstracts out the underlying OS Kernel from the application developer. The CMSIS-based abstraction layer is implemented for the WiSeConnect SDK to standardize the developer’s experience.

    • HAL: The HAL of SDK abstracts out the underlying host platform-specific functions/drivers. It contains the host platform-specific abstraction APIs that must be written by the application writer using the host platform drivers to enable the SDK to interact with their host platform.

  2. The host MCU can communicate to SiWx917 via SPI or UART or SDIO interface. Currently, the SDK by default comes with the SPI and UART interface support.

  3. The SiWx917 Network Co-Processor (NCP) is a comprehensive framework that runs Network, Bluetooth, Wi-Fi, and wireless radio stacks.

WiSeConnect SDK components to be portedWiSeConnect SDK components to be ported

The following figure shows the folders present in the SDK. It also highlights the SDK folders that can be added to your application project based on your requirements.

WiSeConnect SDK folders to be portedWiSeConnect SDK folders to be ported