API Reference Guide#

This is a guide to the application programming interface (API) of the WiSeConnectâ„¢ SDK v3.x.

The sections listed below cover the various categories of APIs provided by the WiSeConnect SDK v3.x along with details of the functions, data types, constants, and callback frameworks within each category.

Note: The following API naming conventions are followed in WiSeConnect APIs:

  • APIs with names starting with sl_ apply to all present and future Silicon Labs products, including the SiWx91x family.

  • APIs with names starting with sl_si91x_ apply only to the SiWx91x family of chipsets.

  • APIs with names starting with sli_ are only used internally by the WiSeConnect SDK v3.x in Silicon Labs products, and are not intended to be used in an application. There is a known issue with the use of these APIs in examples as mentioned in the note below.

Note: There is a known issue in the WiSeConnect SDK v3.x examples where they invoke sli_xxx() APIs that are only intended for internal use.

  • Wireless APIs provide connectivity and networking features.

    • BLE APIs provide Bluetooth Low Energy (BLE) connectivity and protocol features.

    • Wi-Fi APIs provide Wi-Fi connectivity and protocol features, including client (station) mode, Access Point (AP) mode, Wi-Fi Protected Setup (WPS), and others.

  • Network Management APIs provide Wi-Fi network interface and configuration management.

  • Socket APIs provide various emulated socket programming implementations including Berkeley Software Distribution (BSD) standard sockets, ARM Internet-of-Things (IoT) sockets, and others.

  • SiWx91x Device Management APIs provide device management features including calibration, low-power settings, firmware upgrades, and others.

  • External Host Interface APIs provide an interface between an external microcontroller unit (MCU) host and the SiWx91x chipset.

  • SiWx91x MCU APIs provide access to the device platform including peripheral, driver, and service APIs.

    • Peripheral APIs provide access to device peripherals such as the e-fuse, clock, timers, general-purpose input-output (GPIO), and others.

    • Driver APIs provide access to peripherals that are external to the device such as buttons, joystick, sensors, and others.

    • Service APIs provide high level functions to access device peripherals without requiring low-level knowledge of such peripherals, such as power management, sensor hub, sleep timers, and others.

  • Crypto APIs provide access to the cryptographic functions of the SiWx91x chipset.

  • Network Protocol APIs provide implementations of networking protocols.

    • Ping APIs provide the ability to ping other Wi-Fi devices using the Internet Control Message Protocol (ICMP).

    • SNTP APIs provide Simple Network Time Protocol (SNTP) client features such as time and date synchronization.

  • Application Protocol APIs provide implementations of application layer protocols.

    • HTTP APIs provide HyperText Transfer Protocol (HTTP) client features such as sending GET or POST requests to an HTTP server.

    • MQTT APIs provide Message Queue Telemetry Transport (MQTT) protocol client features such as subscribing or publishing to topics on an MQTT broker.

  • The Status Codes section provides the list of status codes returned by APIs.