Extended TCP/IP Feature Bitmap#

This section provides a reference to the Transport Control Protocol and Internet Protocol (TCP/IP) extended feature bitmap in the boot configuration feature bitmaps.

Macros#

#define

DHCP USER CLASS.

#define

TCP bi-directional acknowledgment update.

#define

TCP RX window division.

#define

SSL server certificate bypass.

#define

SSL 16K record size support.

#define

Enable DNS client bypass.

#define

Enable TCP window scaling feature.

#define

Enable both TCP/IP bypass mode and embedded modes.

#define

Enable Ethernet to WiFi bridge.

#define

Enable dynamic coexistence memory.

#define

Configure the number of selects.

#define

Enable socket wait close.

#define

Enable embedded/internal MQTT.

#define

Enable HTTP OTAF support.

#define

Enable to update TCP window from host.

#define

Enable to update max receive length for TCP.

#define

Enable three SSL/TLS sockets.

#define

Configure additional memory for SSL/TLS connections to cloud servers.

#define

Config feature bit map validity.

Macro Definition Documentation#

SL_SI91X_EXT_TCP_FEAT_DHCP_OPT77#

#define SL_SI91X_EXT_TCP_FEAT_DHCP_OPT77
Value:
BIT(1)

DHCP USER CLASS.

This feature enables DHCP Option 77, which allows the device to specify user class information in DHCP requests.

Note

  • Bit 0 is reserved.


Definition at line 1176 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_BI_DIR_ACK_UPDATE#

#define SL_SI91X_EXT_TCP_IP_BI_DIR_ACK_UPDATE
Value:
BIT(3)

TCP bi-directional acknowledgment update.

This feature enables bi-directional data transfer by updating TCP acknowledgment handling.

Note

  • Need to enable this bit if user wants to run the bi-directional data transfer.

  • Bit 2 is reserved.


Definition at line 1187 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_WINDOW_DIV#

#define SL_SI91X_EXT_TCP_IP_WINDOW_DIV
Value:
BIT(4)

TCP RX window division.

This feature allows the division of the TCP receive window, enabling more granular control over the window size.


Definition at line 1196 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_CERT_BYPASS#

#define SL_SI91X_EXT_TCP_IP_CERT_BYPASS
Value:
BIT(5)

SSL server certificate bypass.

This feature allows the device to bypass SSL server certificate validation, with validation being performed by the host instead.


Definition at line 1205 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_SSL_16K_RECORD#

#define SL_SI91X_EXT_TCP_IP_SSL_16K_RECORD
Value:
BIT(6)

SSL 16K record size support.

This feature enables support for 16K SSL record sizes, improving performance for SSL connections that use larger record sizes.


Definition at line 1214 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_DNS_CLIENT_BYPASS#

#define SL_SI91X_EXT_TCP_IP_DNS_CLIENT_BYPASS
Value:
BIT(7)

Enable DNS client bypass.

This feature allows the device to bypass the internal DNS client, using the host for DNS resolution instead.


Definition at line 1223 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_WINDOW_SCALING#

#define SL_SI91X_EXT_TCP_IP_WINDOW_SCALING
Value:
BIT(8)

Enable TCP window scaling feature.

This feature enables TCP window scaling, allowing the device to use receive window sizes larger than 64 KB.

Note

  • If this feature is not enabled, then the maximum possible RX window size is 64 KB. If user wants to use more than 64KB window size, tcp_rx_window_size_cap in socket configuration is used to increase the window size.


Definition at line 1235 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_DUAL_MODE_ENABLE#

#define SL_SI91X_EXT_TCP_IP_DUAL_MODE_ENABLE
Value:
BIT(9)

Enable both TCP/IP bypass mode and embedded modes.

This feature allows the device to use both bypass and non-bypass modes simultaneously, providing flexibility in network communication.

Note

  • Enabling this feature allows to use both bypass and non-bypass modes simultaneously.


Definition at line 1246 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_ETH_WIFI_BRIDGE#

#define SL_SI91X_EXT_TCP_IP_ETH_WIFI_BRIDGE
Value:
BIT(10)

Enable Ethernet to WiFi bridge.

This feature enables the device to act as a bridge between Ethernet and WiFi networks, facilitating communication between the two.


Definition at line 1255 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_DYNAMIC_COEX_MEMORY#

#define SL_SI91X_EXT_DYNAMIC_COEX_MEMORY
Value:
BIT(11)

Enable dynamic coexistence memory.

This feature dynamically adjusts the TCP receive window size based on coexistence requirements, improving network performance in coexistence scenarios.

Note

  • To enable or disable the coexistence and update TCP RX window accordingly.


Definition at line 1267 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_TOTAL_SELECTS#

#define SL_SI91X_EXT_TCP_IP_TOTAL_SELECTS
Value:
(total_selects)

Configure the number of selects.

This feature configures the number of select operations the device can handle, with a maximum value of 10.

Note

  • Bits 12 - 15 are used for TOTAL_SELECTS.


Definition at line 1278 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_WAIT_FOR_SOCKET_CLOSE#

#define SL_SI91X_EXT_TCP_IP_WAIT_FOR_SOCKET_CLOSE
Value:
BIT(16)

Enable socket wait close.

This feature ensures that a socket is not closed until close() is called from the host, which is recommended for use with TCP sockets.

Note

  • If it is set socket will not be closed until close() is called from host. It is recommended to enable this bit when using TCP sockets.

  • This is always set internally for Si91x chips.


Definition at line 1290 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_EMB_MQTT_ENABLE#

#define SL_SI91X_EXT_EMB_MQTT_ENABLE
Value:
BIT(17)

Enable embedded/internal MQTT.

This feature enables support for embedded MQTT (Message Queuing Telemetry Transport) functionality, allowing the device to use MQTT without external libraries.

Note

  • If user wants to use AT command for MQTT, enable this bit in the Opermode Command.


Definition at line 1302 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_FEAT_HTTP_OTAF_SUPPORT#

#define SL_SI91X_EXT_FEAT_HTTP_OTAF_SUPPORT
Value:
BIT(18)

Enable HTTP OTAF support.

This feature enables support for HTTP-based over-the-air firmware (OTAF) updates, allowing the device to download and install firmware updates via HTTP.

Note

  • To do firmware upgrade with HTTP this bit should be enabled.


Definition at line 1314 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_DYNAMIC_WINDOW_UPDATE_FROM_HOST#

#define SL_SI91X_EXT_TCP_DYNAMIC_WINDOW_UPDATE_FROM_HOST
Value:
BIT(19)

Enable to update TCP window from host.

This feature allows the TCP window size to be dynamically updated from the host, providing more control over TCP flow management.


Definition at line 1323 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_MAX_RECV_LENGTH#

#define SL_SI91X_EXT_TCP_MAX_RECV_LENGTH
Value:
BIT(20)

Enable to update max receive length for TCP.

This feature allows the maximum receive length for TCP connections to be updated, accommodating different application requirements.


Definition at line 1332 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_FEAT_SSL_THREE_SOCKETS#

#define SL_SI91X_EXT_TCP_IP_FEAT_SSL_THREE_SOCKETS
Value:
BIT(29)

Enable three SSL/TLS sockets.

This feature allows the device to support up to three simultaneous SSL/TLS connections.

Note

  • Set tcp_ip_feature_bit_map[31] and ext_tcp_ip_feature_bit_map[29] to open 3 TLS sockets.

  • Bits 21-28 are reserved.


Definition at line 1344 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_EXT_TCP_IP_FEAT_SSL_MEMORY_CLOUD#

#define SL_SI91X_EXT_TCP_IP_FEAT_SSL_MEMORY_CLOUD
Value:
BIT(30)

Configure additional memory for SSL/TLS connections to cloud servers.

This feature allocates additional memory for SSL/TLS connections, typically required for connections to cloud servers, to avoid 0xD2 error.

Note

  • If user connects to a cloud server using two SSL/TLS connections then it is required to set this bit to avoid 0xD2 error.


Definition at line 1355 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h

SL_SI91X_CONFIG_FEAT_EXTENTION_VALID#

#define SL_SI91X_CONFIG_FEAT_EXTENTION_VALID
Value:
BIT(31)

Config feature bit map validity.

This feature validates the configuration feature bit map. If this bit is enabled then only, the features present in the configuration feature bitmap can be used.


Definition at line 1364 of file components/device/silabs/si91x/wireless/inc/sl_wifi_device.h