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.