Features of WiSeConnect™ v3.x SDK#

This section describes the features of the WiSeConnect™ v3.x SDK.

Key Features#

WiSeConnect SDK v3.x includes the following key features:

  • Provides simplified methods of setting configuration values.

  • Follows Silicon Labs' standards for application programming interface (API) signatures and behavior.

  • Provides industry-standard APIs for socket programming, following the popular standards for Internet-of-Things (IoT) sockets and Berkeley Software Distribution (BSD) sockets.

  • Facilitates the passing of application context data in API calls and receiving that data back in callbacks.

  • Uses the same API signature to invoke either synchronous or asynchronous processing in the application.

Asynchronous API Invocation#

WiSeConnect™ SDK v3.x has common API functions for both synchronous and asynchronous processing.

For example, the access point connection APIs are illustrated below:

  • The sl_wifi_connect() function is invoked with a timeout_ms parameter value of 0 to connect to a Wi-Fi access point (AP) asynchronously, and a value other than 0 to connect synchronously.

status = sl_wifi_connect(SL_WIFI_CLIENT_INTERFACE, &profile.config, 0);        // Connect asynchronously
status = sl_wifi_connect(SL_WIFI_CLIENT_INTERFACE, &profile.config, 15000);    // Connect synchronously

Bare Metal and OS Support#

WiSeConnect SDK v3.x supports only FreeRTOS applications.

Build System#

WiSeConnect™ SDK v3.x provides the following ways to build applications:

Build Method

Mode

Host

3.x Support

Simplicity Studio

SoC

SiWx91x™

Yes

Simplicity Studio

NCP

EFx32™

Yes

Configuration#

WiSeConnect™ SDK v3.x passes all configurations as function arguments.

Error Handling#

The APIs in WiSeConnect™ SDK v3.x return an sl_status_t value that contains one of the standard Silicon Labs error code values.

Event Handling#

WiSeConnect™ SDK v3.x utilizes two threads for handling events:

  • The bus_thread sends commands to the SiWx91x™ network processor and processes the responses sent back by the network processor.

  • The event_thread performs asynchronous processing for commands and events.

Queue Management#

WiSeConnect™ SDK v3.x has a total of 12 queues:

  • 5 for sending commands to the network processor, such as a command to scan for access points (APs).

  • 5 for processing command responses from the network processor.

  • 2 for asynchronous processing such as the handling of asynchronous command responses.