Application Components#

The following sections provide a list of v3.x components.

The component category path is listed for each component, specifying how to navigate to the component in the SOFTWARE COMPONENTS tab of Simplicity Studio. Components are listed in alphabetical order of the component category path.

Studio Software Components tabStudio Software Components tab

Common#

Component Name

Component Category Path

Description

WiSeConnect3 Common Library

Common

Commonly used components

WiSeConnect3 Resources

Resources

Default values and certificates

Si91x Support Library

Si91x Support library

Library with utilities for the NCP UART interface

Unity test framework

Test > Framework

Unity test framework

Wireless#

Component Name

Component Category Path

Description

BLE

Device > Si91x > Wireless

API for Bluetooth Low Energy (BLE) functionality

Si91x Wireless Subsystem

Device > Si91x > Wireless

API to manage the wireless subsystem in the SiWx91x™ chipset

Basic Buffer Manager

Device > Si91x > Wireless > Buffer Manager

SiWx91x memory buffer manager for malloc-based memory management

Internal Network Stack

Device > Si91x > Wireless > Network Stack

API for running the networking layers on the SiWx91x chipset

LwIP Network Stack (Hosted)

Device > Si91x > Wireless > Network Stack

Lightweight Internet Protocol (LwIP) third party library-based API for running networking layers on a host MCU

Si91x NCP bus interface

Device > Si91x > Wireless > Network Stack

API to manage bus communication to SiWx91x from the host MCU

Si91x NCP SPI bus interface

Device > Si91x > Wireless > Network Stack

API to manage SPI communication to SiWx91x from the host MCU

Si91x NCP UART bus interface

Device > Si91x > Wireless > Network Stack

API to manage UART communication to SiWx91x from the host MCU

Wi-Fi

Protocol

Application programming interface (API) for Wi-Fi functionality

Network Management#

Component Name

Component Category Path

Description

Network Manager

Service > Network Management

API to manage network interfaces and their behaviour

Basic Network Configuration Manager

Service > Network Management > Configuration

Basic reference implementation for managing network credentials and profiles

NVM3 Network Configuration Manager

Service > Network Management > Configuration

API for managing network credentials and profiles in non-volatile memory with key-based storage

Basic Credential Manager

Service > Credential Management > Configuration

Basic reference implementation for managing credentials

NVM3 Credential Manager

Service > Credential Management > Configuration

API to manage credentials stored in NVM3

Sockets#

Component Name

Component Category Path

Description

BSD Socket API

Common

Berkeley Software Distribution (BSD) standard API for socket programming

Si91x Asynchronous Socket

Device > Si91x > Wireless > Socket

API for SiWx91x asynchronous socket programming

Si91x Socket

Device > Si91x > Wireless > Socket

API for SiWx91x socket programming

BSD Socket

Service

API for BSD-style communication over the Transport Control Protocol (TCP) and Internet Protocol (IP) networking layers

IoT Socket

Third Party

ARM Internet-of-Things (IoT) standard API for socket programming

SiWx91x MCU#

The following SiWx91x MCU (application processor) components are available:

Common MCU components#

Component Name

Component Category Path

Description

Board Configuration Header Files

N/A (no category)

Radio board configuration header files

brd4338a config

Board > Configuration

Configuration files for radio board BRD4338A

brd4342a config

Board > Configuration

Configuration files for radio board BRD4342A

brd4343a config

Board > Configuration

Configuration files for radio board BRD4343A

EFx32 - Si91x Connection Configurator

Board > Configuration

Configuration for connections between SiWx91x and EFx32 host MCU

Si91x SoC Board Configurations

Board > Configuration

Hardware configurations for SiWx91x SoC boards

BRD4338A

Board > Radio Board

Radio Board support for BRD4338A

BRD4342A

Board > Radio Board

Radio Board support for BRD4342A

BRD4343A

Board > Radio Board

Radio Board support for BRD4343A

Default Configuration

Device > Si91x > Memory Configuration

Default memory configuration

MCU Advanced Features and Wireless Basic Features

Device > Si91x > Memory Configuration

Configuration for random-access memory (RAM) split option 3 between processors - 256KB for network processor and 448KB for application processor.

MCU Basic Features and Wireless Advanced Features

Device > Si91x > Memory Configuration

Configuration for default RAM split (option 1) between processors - 512KB for network processor and 192KB for application processor.

MCU Medium Features and Wireless Medium Features

Device > Si91x > Memory Configuration

Configuration for RAM split option 2 between processors - 448KB for network processor and 256KB for application processor.

Si91x MCU Subsystem

Device > Si91x > MCU

Initializing the SiWx91x MCU (application processor) subsystem on startup

System Calls

Device > Si91x > MCU > Common

System call support for the SiWx91x MCU

Core

Device > Si91x > MCU > Core

Core SiWx91x MCU functionality

CMSIS Core

Device > Si91x > MCU > Core

Common Microcontroller Software Interface Standard (CMSIS) core functionality

FreeRTOS Configuration

Device > Si91x > MCU > Core

Default configuration for FreeRTOS (operating system) instance on the SiWx91x MCU

NVIC Interrupt Priorities Configuration

Device > Si91x > MCU > Core

Configuration of nested vector interrupt controller (NVIC) priorities

RAM Execution

Device > Si91x > MCU > Core

Enabling certain pre-determined components to execute from random-access memory (RAM)

RSI User Configuration

Device > Si91x > MCU > Core

User configuration for the SiWx91x MCU

UDMA Linker Configuration

Device > Si91x > MCU > Core

Linker configuration for unified direct memory access (UDMA)

ulp_mode_execution

Device > Si91x > MCU > Core

Enabling ultra low power (ULP) mode

Debug UC

Device > Si91x > MCU > Debug UC

Debug functionality for the SiWx91x MCU

SI917-SB00

Device > Si91x > MCU > Device Part > SiWG917

CMSIS device part headers for SI917-SB00

SIWG917M100MGTBA

Device > Si91x > MCU > Device Part > SiWG917

CMSIS device part headers for SIWG917M100MGTBA

SIWG917M100XNTBA

Device > Si91x > MCU > Device Part > SiWG917

CMSIS device part headers for SIWG917M100XNTBA

SIWG917M110LGTBA

Device > Si91x > MCU > Device Part > SiWG917

CMSIS device part headers for SIWG917M110LGTBA

SIWG917M111MGTBA

Device > Si91x > MCU > Device Part > SiWG917

CMSIS device part headers for SIWG917M111MGTBA

SIWG917M111XGTBA

Device > Si91x > MCU > Device Part > SiWG917

CMSIS device part headers for SIWG917M111XGTBA

SIWG917M121XGTBA

Device > Si91x > MCU > Device Part > SiWG917

CMSIS device part headers for SIWG917M121XGTBA

SIWG917M141XGTBA

Device > Si91x > MCU > Device Part > SiWG917

CMSIS device part headers for SIWG917M141XGTBA

8MB Flash (External)

Device > Si91x > MCU > Flash

Adding 8MB external flash to the SiWx91x SoC

8MB PSRAM (External)

Device > Si91x > MCU > Flash

Adding 8MB external pseudo-static random-access memory (PSRAM) to the SiWx91x SoC

No External Flash

Device > Si91x > MCU > Flash

Excluding the external flash from the SiWx91x SoC

No External PSRAM

Device > Si91x > MCU > Flash

Excluding the external PSRAM from the SiWx91x SoC

HAL

Device > Si91x > MCU > HAL

Hardware abstraction layer (HAL) for the SiWx91x MCU

Soft Reset

Device > Si91x > MCU > HAL

Soft reset functionality for the SiWx91x MCU

SL errno

Device > Si91x > MCU > Service

Enabling thread-safe error numbers

GCC Toolchain Support

Device > Si91x > MCU > Toolchain

Support for the Gnu's Not UNIX (GNU) Compiler Collection (GCC) toolchain

SIWG917Y111MGAB

Platform > Device > Si91x > MCU > Family > SIWG917Y

CMSIS device part headers for SIWG917Y111MGAB

SIWG917Y111MGNB

Platform > Device > Si91x > MCU > Family > SIWG917Y

CMSIS device part headers for SIWG917Y111MGNB

Peripherals#

Component Name

Component Category Path

Description

ADC

Device > Si91x > MCU > Peripheral

API for the Analog-to-Digital Converter (ADC) peripheral

ADC Instance

Device > Si91x > MCU > Peripheral

ADC peripheral instance

Analog Comparator

Device > Si91x > MCU > Peripheral

API for the Analog Comparator peripheral

Analog Comparator Instance

Device > Si91x > MCU > Peripheral

Analog Comparator peripheral instance

BJT Temperature Sensor

Device > Si91x > MCU > Peripheral

API for the BJT Temperature sensor peripheral

BOD

Device > Si91x > MCU > Peripheral

API for the Brown-Out Detector (BOD) peripheral

CRC

Device > Si91x > MCU > Peripheral

API for the Cyclic Redundancy Check (CRC) peripheral

Calendar

Device > Si91x > MCU > Peripheral

API for the Calendar peripheral

Config Timer

Device > Si91x > MCU > Peripheral

API for the Configurable Timer peripheral

DAC

Device > Si91x > MCU > Peripheral

API for the Digital-to-Analog Converter (DAC) peripheral

DMA

Device > Si91x > MCU > Peripheral

API for the Direct Memory Access (DMA) peripheral

Efuse

Device > Si91x > MCU > Peripheral

API for the e-Fuse peripheral

GPDMA

Device > Si91x > MCU > Peripheral

API for the General-Purpose DMA (GPDMA) peripheral

GPIO

Device > Si91x > MCU > Peripheral

API for the General-Purpose input/output (GPIO) ports

GSPI

Device > Si91x > MCU > Peripheral

API for the Generic Serial Peripheral Interface (GSPI) peripheral

HRNG - Hardware Random Number Generator

Device > Si91x > MCU > Peripheral

API for the Hardware Random Number Generator (HRNG) peripheral

I2C

Device > Si91x > MCU > Peripheral

API for the Inter-Integrated Circuit (I2C) peripheral

I2C Instance

Device > Si91x > MCU > Peripheral

I2C peripheral instance

I2S

Device > Si91x > MCU > Peripheral

API for the Inter-IC Sound (I2S) peripheral

IO Stream: USART

Device > Si91x > MCU > Peripheral

API for Input/Output (I/O) stream over a Universal Synchronous/Asynchronous Receiver/Transmitter (USART) interface

OPAMP

Device > Si91x > MCU > Peripheral

API for the Operational Amplifier (OPAMP) peripheral

OPAMP Instance

Device > Si91x > MCU > Peripheral

OPAMP peripheral instance

PCM

Device > Si91x > MCU > Peripheral

API for the I2S Pulse-Code Modulation (PCM) feature

PWM

Device > Si91x > MCU > Peripheral

API for the Pulse-Width Modulation (PWM) peripheral

PWM Instance

Device > Si91x > MCU > Peripheral

PWM peripheral instance

QEI

Device > Si91x > MCU > Peripheral

API for the Quadrature Encoder Interface (QEI) peripheral

SDC

Device > Si91x > MCU > Peripheral

API for the Sensor Data Collector (SDC) peripheral

SDC Instance

Device > Si91x > MCU > Peripheral

SDC peripheral instance

SSI

Device > Si91x > MCU > Peripheral

API for the Synchronous Serial Interface (SSI) peripheral

SSI Instance

Device > Si91x > MCU > Peripheral

SSI peripheral instance

SysRTC

Device > Si91x > MCU > Peripheral

API for the System Real-Time Clock (SysRTC) peripheral

UART

Device > Si91x > MCU > Peripheral

API for the Universal Asynchronous Receiver/Transmitter (UART) peripheral

UART0_RS485

Device > Si91x > MCU > Peripheral

API for the UART0 peripheral with RS485 support

UART1_RS485

Device > Si91x > MCU > Peripheral

API for the UART1 peripheral with RS485 support

ULP_TIMER

Device > Si91x > MCU > Peripheral

API for the Ultra Low-Power (ULP) Timer peripheral

USART

Device > Si91x > MCU > Peripheral

API for the Universal Synchronous/Asynchronous Receiver/Transmitter (USART) peripheral

WDT

Device > Si91x > MCU > Peripheral

API for the Watchdog Timer (WDT) peripheral

SL GPIO Peripheral

Device > Si91x > MCU > Peripheral > Register-Level API

API for GPIO ports (register-level)

SL I2C Peripheral

Device > Si91x > MCU > Peripheral > Register-Level API

API for the Inter-Integrated Circuit (I2C) peripheral (register-level)

SL SDIO Secondary Peripheral

Device > Si91x > MCU > Peripheral > Register-Level API

API for Secure Digital Input Output (SDIO) peripheral as secondary

PSRAM Core

Device > Si91x > MCU > Peripheral > PSRAM Driver

PSRAM driver core functionality

APS1604M-SQR PSRAM Device

Device > Si91x > MCU > Peripheral > PSRAM Driver > PSRAM Device

AP Memory APS1604M-SQR PSRAM device related configurations

APS6404L_SQH PSRAM Device

Device > Si91x > MCU > Peripheral > PSRAM Driver > PSRAM Device

AP Memory APS6404L-SQH PSRAM device related configurations

APS6404L_SQRH PSRAM Device

Device > Si91x > MCU > Peripheral > PSRAM Driver > PSRAM Device

AP Memory APS6404L-SQRH PSRAM device related configurations

BSS Segment in PSRAM

Device > Si91x > MCU > Peripheral > PSRAM Driver > PSRAM Linker Configurations

Adding the Block Starting Symbol (BSS) segment in pseudo-static random-access memory (PSRAM)

Data Segment in PSRAM

Device > Si91x > MCU > Peripheral > PSRAM Driver > PSRAM Linker Configurations

Adding the data segment in PSRAM

Heap Segment in PSRAM

Device > Si91x > MCU > Peripheral > PSRAM Driver > PSRAM Linker Configurations

Adding the heap segment in PSRAM

Stack Segment in PSRAM

Device > Si91x > MCU > Peripheral > PSRAM Driver > PSRAM Linker Configurations

Adding the stack segment in PSRAM

Text Segment in PSRAM

Device > Si91x > MCU > Peripheral > PSRAM Driver > PSRAM Linker Configurations

Adding the text segment in PSRAM

SDIO Secondary

Device > Si91x > MCU > Peripheral > SDIO Slave Driver

API for SDIO secondary driver

Component Name

Component Category Path

Description

PM PS2 Component

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP PS2 peripheral

PM SDC

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP SDC peripheral

PM ULP ADC

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP Analog-to-Digital Converter (ADC) peripheral

PM ULP BOD

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP Brown-Out Detector (BOD) peripheral

PM ULP Comparator

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP Comparator peripheral

PM ULP DAC

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP Digital-to-Analog Converter (DAC) peripheral

PM ULP DMA

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP Direct Memory Access (DMA) peripheral

PM ULP Debug

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

Debug functionality in ultra low power (ULP) mode

PM ULP GPIO

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP General-Purpose Input/Output (GPIO) ports

PM ULP I2C

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP Inter-Integrated Circuit (I2C) peripheral

PM ULP I2S

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP Inter-IC Sound (I2S) peripheral

PM ULP SSI

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP Synchronous Serial Interface (SSI) peripheral

PM ULP SysRTC

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP System Real-Time Clock (SysRTC) peripheral

PM ULP Timer

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP Timer peripheral

PM ULP UART

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

ULP Universal Asynchronous Receiver/Transmitter (UART) peripheral

PM UULP Calendar

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

UULP Calendar peripheral

PM UULP Deep Sleep Timer

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

UULP Deep Sleep timer

PM UULP GPIO

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

UULP GPIO ports

PM UULP Watchdog Timer

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

UULP Watchdog Timer

PM UULP Wireless Wakeup

Device > Si91x > MCU > Service > Power Manager > ULP Peripheral

UULP Wireless Wakeup functionality

Drivers#

Component Name

Component Category Path

Description

Button

Device > Si91x > MCU > Hardware

API for the Button driver

ICM40627 6-axis Inertial Sensor (IMU)

Device > Si91x > MCU > Hardware

API for the ICM40627 6-axis inertial measurement unit (IMU) sensor driver

Joystick

Device > Si91x > MCU > Hardware

API for the Joystick peripheral driver

LED

Device > Si91x > MCU > Hardware

API for the Light-Emitting Diode (LED) peripheral driver

Memory LCD SPI Driver

Device > Si91x > MCU > Hardware

API for the Memory LCD peripheral driver over the Serial Peripheral Interface (SPI)

Mic

Device > Si91x > MCU > Hardware

API for the Microphone peripheral driver

RGB LED

Device > Si91x > MCU > Hardware

API for the RGB LED peripheral driver

Si70xx Humidity and Temperature Sensor

Device > Si91x > MCU > Hardware

API for the Si70xx Humidity and Temperature sensor driver

VEML6035

Device > Si91x > MCU > Hardware

API for the VEML6035 Ambient Light sensor driver

### Services

Component Name

Component Category Path

Description

Clock Manager

Device > Si91x > MCU > Service > Clock Manager

API for SiWx91x clock management

CPC

Device > Si91x > MCU > Service > CPC

API for SiWx91x Co-Processor Communication service

IO Stream Si91x

Device > Si91x > MCU > Service > IOStream

Data transfer over physical communication interfaces

IO Stream Si91x Debug

Device > Si91x > MCU > Service > IOStream

Data transfer over physical communication interfaces (debug)

IO Stream Si91x VUART

Device > Si91x > MCU > Service > IOStream

Data transfer over virtual UART interface

IO Stream Si91x RTT

Device > Si91x > MCU > Service > IOStream

Data transfer over Real-Time Transfer (RTT) interface

IO Stream Si91x SWO

Device > Si91x > MCU > Service > IOStream

Data transfer over Serial Wire Output (SWO) interface

LittleFS for Common Flash

Device > Si91x > MCU > Service > LittleFS

API for LittleFS file system support on SiWx91x

LittleFS for Common Flash Parts with External Flash

Device > Si91x > MCU > Service > LittleFS

API for LittleFS file system support on SiWx91x with external flash parts

LittleFS for Dual Flash

Device > Si91x > MCU > Service > LittleFS

API for LittleFS file system support on SiWx91x dual flash variants

NVM3 Common Flash

Device > Si91x > MCU > Service > NVM3

Non-volatile memory (NVM3) API for SiWx91x common flash chip variants

NVM3 Dual Flash

Device > Si91x > MCU > Service > NVM3

NVM3 API for SiWx91x dual flash chip variants

NVM3 for Si91x

Device > Si91x > MCU > Service > NVM3

Common features for NVM3 APIs

Power Manager

Device > Si91x > MCU > Service > Power Manager

API for SiWx91x power management

Sensor Hub

Device > Si91x > MCU > Service > Sensor Hub

API for the sensor hub on the SiWx91x

Sleep Timer for Si91x

Device > Si91x > MCU > Service > Sleep Timer

Sleep Timer functionality for SiWx91x

WDT Manager

Device > Si91x > MCU > Service > WDT Manager

API for the Watchdog Timer (WDT) manager on the SiWx91x

Cryptography#

Component Name

Component Category Path

Description

AES

Device > Si91x > Wireless > Crypto

API for encyption using the Advanced Encryption Standard (AES) method

ATTESTATION

Device > Si91x > Wireless > Crypto

API for performing attestation of the SiWx91x using cryptographic methods

CCM

Device > Si91x > Wireless > Crypto

API for encryption using the counter with cipher block chaining message authentication code (CCM) method

CHACHAPOLY

Device > Si91x > Wireless > Crypto

API for encryption using the ChaChaPoly method

Crypto - Common

Device > Si91x > Wireless > Crypto

API for cryptographic functionality

CRYPTO MULTITHREAD

Device > Si91x > Wireless > Crypto

Thread-safe mechanism in cryptography hardware accelerators

Crypto - Utility

Device > Si91x > Wireless > Crypto

API for cryptographic utilities

ECDH

Device > Si91x > Wireless > Crypto

API for encryption using the elliptic-curve Diffie-Hellman (ECDH) method

GCM

Device > Si91x > Wireless > Crypto

API for the Galois/Counter Mode (GCM) of operation

HMAC

Device > Si91x > Wireless > Crypto

API for encryption using the hash-based message authentication code (HMAC) method

PSA WRAP

Device > Si91x > Wireless > Crypto

API for Platform Security Architecture (PSA) standard cryptography using key wrap algorithms

SHA

Device > Si91x > Wireless > Crypto

API for encryption using the secure hash algorithm (SHA) method

TRNG

Device > Si91x > Wireless > Crypto

API for the True Random Number Generator (TRNG) algorithm

WRAP

Device > Si91x > Wireless > Crypto

API for encryption using key wrap algorithms

PSA AEAD

Device > Si91x > Wireless > PSA Crypto

API for PSA standard cryptography with the authenticated encryption with associated data (AEAD) method

PSA AES

Device > Si91x > Wireless > PSA Crypto

API for PSA standard cryptography with the AES method

PSA Crypto - Utility

Device > Si91x > Wireless > PSA Crypto

API for PSA standard cryptographic utilities

PSA ECDH

Device > Si91x > Wireless > PSA Crypto

API for PSA standard cryptography with the ECDH method

PSA HMAC

Device > Si91x > Wireless > PSA Crypto

API for PSA standard cryptography with the HMAC method

PSA SHA

Device > Si91x > Wireless > PSA Crypto

API for PSA standard cryptography with the SHA method

PSA TRNG

Device > Si91x > Wireless > PSA Crypto

API for the PSA standard TRNG algorithm

Network Protocols#

Component Name

Component Category Path

Description

SNTP Client

Service

API for Simple Network Time Protocol (SNTP) client functionality

Application Protocols#

Component Name

Component Category Path

Description

AWS IoT Device SDK

Third Party

API for accessing the Amazon Web Services (AWS) Internet-of-Things (IoT) cloud service

AZURE FreeRTOS Middleware

Third Party

AZURE IoT Device SDK for Embedded C

Core MQTT

Third Party

Core MQTT

HTTP Client

Service

API for Hyper-Text Transfer Protocol (HTTP) client functionality

HTTP Server

Service

API for Hyper-Text Transfer Protocol (HTTP) server functionality

MQTT Client

Service

API for Message Queue Telemetry Transport (MQTT) client functionality

MDNS

Service

API for utilizing the multicast domain name service (mDNS) standard protocol to advertise services over the network

Built-In Command Database

Service > Console

Built-in console commands for WiSeConnect SDK v3.x features

Console

Service > Console

Console command-line interpreter (CLI) functionality

Console Variables

Service > Console

Functionality for reading and writing console variables