Radio#
Functions#
Get the maximum Wi-Fi transmit power.
Set the maximum Wi-Fi transmit power.
Set the Request to Send (RTS) threshold for the specified Wi-Fi interface.
Get the current Request to Send (RTS) threshold for the specified Wi-Fi interface.
Set the Management Frame Protection (MFP) mode for the specified Wi-Fi interface.
Get the Management Frame Protection (MFP) mode for the specified Wi-Fi interface.
Set the Wi-Fi antenna for an interface.
Get the Wi-Fi antenna for an interface.
Get the current channel for the given Wi-Fi interface.
Set the channel for the given Wi-Fi Access Point interface.
Set the Wi-Fi transmit rate for the given 802.11 protocol on the specified Wi-Fi interface.
Get the Wi-Fi transmit rate for the given 802.11 protocol on the specified Wi-Fi interface.
Set the Wi-Fi client interface listen interval.
Set the Wi-Fi client interface listen interval and listen interval multiplier.
Get the Wi-Fi client listen interval.
Get the Wi-Fi client listen interval and listen interval multiplier.
Assign the user configurable channel gain table entries in different regions to the module from the user.
Assign the user configurable channel gain table entries in different regions to the module from the user including 11ax SU and 11ax TB.
Configure the 11ax params.
Start the transmit test.
Stop the transmit test.
Provide feedback of frequency error in KHz.
Update Flash/EFuse DPD data.
Function Documentation#
sl_wifi_get_max_tx_power#
sl_status_t sl_wifi_get_max_tx_power (sl_wifi_interface_t interface, sl_wifi_max_tx_power_t * max_tx_power)
Get the maximum Wi-Fi transmit power.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_max_tx_power_t * | [out] | max_tx_power | A variable that contains current maximum transmit power as identified by by sl_wifi_max_tx_power_t. |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
Note
This function gets the transmit power for a particular radio interface: SL_WIFI_2_4GHZ_INTERFACE.
sl_wifi_set_max_tx_power#
sl_status_t sl_wifi_set_max_tx_power (sl_wifi_interface_t interface, sl_wifi_max_tx_power_t max_tx_power)
Set the maximum Wi-Fi transmit power.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_max_tx_power_t | [in] | max_tx_power | Max transmission power as identified by sl_wifi_max_tx_power_t |
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
Note
This function sets the transmit power for a particular radio interface: SL_WIFI_2_4GHZ_INTERFACE. Eg: Setting transmit power for client interface at 2.4 GHz will also set transmit power of the AP interface at 2.4 GHz.
The effective transmit power is subject to regional and device limitations. If the specified transmit power exceeds the maximum supported value for that region, the transmission occurs at the maximum supported transmit power.
sl_wifi_set_rts_threshold#
sl_status_t sl_wifi_set_rts_threshold (sl_wifi_interface_t interface, uint16_t rts_threshold)
Set the Request to Send (RTS) threshold for the specified Wi-Fi interface.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
uint16_t | [in] | rts_threshold | RTS threshold value to set, in bytes. Valid range: 0 to 2347. A value of 0 has a special meaning: an RTS frame will precede every transmitted frame. |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
sl_wifi_get_rts_threshold#
sl_status_t sl_wifi_get_rts_threshold (sl_wifi_interface_t interface, uint16_t * rts_threshold)
Get the current Request to Send (RTS) threshold for the specified Wi-Fi interface.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
uint16_t * | [out] | rts_threshold | Pointer to a variable that will receive the current RTS threshold value. |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
sl_wifi_set_mfp#
sl_status_t sl_wifi_set_mfp (sl_wifi_interface_t interface, const sl_wifi_mfp_mode_t config)
Set the Management Frame Protection (MFP) mode for the specified Wi-Fi interface.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
const sl_wifi_mfp_mode_t | [in] | config | MFP configuration as identified by sl_wifi_mfp_mode_t |
Note
This API needs to be called before sl_wifi_connect
This API is currently supported only in STA mode.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
sl_wifi_get_mfp#
sl_status_t sl_wifi_get_mfp (sl_wifi_interface_t interface, sl_wifi_mfp_mode_t * config)
Get the Management Frame Protection (MFP) mode for the specified Wi-Fi interface.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_mfp_mode_t * | [out] | config | MFP configuration as identified by sl_wifi_mfp_mode_t |
Note
This API is currently supported only in STA mode.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
sl_wifi_set_antenna#
sl_status_t sl_wifi_set_antenna (sl_wifi_interface_t interface, sl_wifi_antenna_t antenna)
Set the Wi-Fi antenna for an interface.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_antenna_t | [in] | antenna | Antenna to select as identified by sl_wifi_antenna_t |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
sl_wifi_get_antenna#
sl_status_t sl_wifi_get_antenna (sl_wifi_interface_t interface, sl_wifi_antenna_t * antenna)
Get the Wi-Fi antenna for an interface.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_antenna_t * | [out] | antenna | sl_wifi_antenna_t object that contains current antenna selection. |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
sl_wifi_get_channel#
sl_status_t sl_wifi_get_channel (sl_wifi_interface_t interface, sl_wifi_channel_t * channel)
Get the current channel for the given Wi-Fi interface.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_channel_t * | [out] | channel | sl_wifi_channel_t object that contains current channel information. |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
sl_wifi_set_channel#
sl_status_t sl_wifi_set_channel (sl_wifi_interface_t interface, sl_wifi_channel_t channel)
Set the channel for the given Wi-Fi Access Point interface.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_channel_t | [in] | channel | Channel as identified by sl_wifi_channel_t |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
sl_wifi_set_transmit_rate#
sl_status_t sl_wifi_set_transmit_rate (sl_wifi_interface_t interface, sl_wifi_rate_protocol_t rate_protocol, sl_wifi_rate_t mask)
Set the Wi-Fi transmit rate for the given 802.11 protocol on the specified Wi-Fi interface.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_rate_protocol_t | [in] | rate_protocol | 802.11 protocol as identified by sl_wifi_rate_protocol_t |
sl_wifi_rate_t | [in] | mask | Data rate as identified by sl_wifi_rate_t |
Pre-conditions:
sl_wifi_init should be called before this API.
In AP mode, this API should be called before sl_net_wifi_ap_up. This configured data rate is passed as part of the AP configuration while bringing up the AP interface.
In Wi-Fi client mode, this API should be called after sl_wifi_connect.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
Note
Only 1 and 2 Mbps rates are allowed in channel 14.
sl_wifi_get_transmit_rate#
sl_status_t sl_wifi_get_transmit_rate (sl_wifi_interface_t interface, sl_wifi_rate_protocol_t * rate_protocol, sl_wifi_rate_t * mask)
Get the Wi-Fi transmit rate for the given 802.11 protocol on the specified Wi-Fi interface.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_rate_protocol_t * | [out] | rate_protocol | 802.11 protocol as identified by sl_wifi_rate_protocol_t |
sl_wifi_rate_t * | [out] | mask | Data rate as identified by sl_wifi_rate_t |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
sl_wifi_set_listen_interval#
sl_status_t sl_wifi_set_listen_interval (sl_wifi_interface_t interface, sl_wifi_listen_interval_t listen_interval)
Set the Wi-Fi client interface listen interval.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_listen_interval_t | [in] | listen_interval | sl_wifi_listen_interval_t object |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
Note
By default listen interval is set 1000 millisecs. User can call this API to overwrite the value.
Moving forward, this API will be deprecated. Instead, use the sl_wifi_set_listen_interval_v2 API. This is retained for backward compatibility. Si91X implementation allows this API ONLY to be called before calling sl_wifi_connect(), sl_wifi_start_ap(), sl_wifi_start_wps()
sl_wifi_set_listen_interval_v2#
sl_status_t sl_wifi_set_listen_interval_v2 (sl_wifi_interface_t interface, sl_wifi_listen_interval_v2_t listen_interval)
Set the Wi-Fi client interface listen interval and listen interval multiplier.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_listen_interval_v2_t | [in] | listen_interval | sl_wifi_listen_interval_v2_t object |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
Note
By default listen interval is set 1000 millisecs and listen interval multiplier is set to 1. User can call this API to overwrite the values for listen interval and listen interval multiplier. Recommended max value for listen_interval_multiplier is 10. Higher value may cause interop issues. Si91X implementation allows this API ONLY to be called before calling sl_wifi_connect(), sl_wifi_start_ap(), sl_wifi_start_wps()
sl_wifi_get_listen_interval#
sl_status_t sl_wifi_get_listen_interval (sl_wifi_interface_t interface, sl_wifi_listen_interval_t * listen_interval)
Get the Wi-Fi client listen interval.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_listen_interval_t * | [out] | listen_interval | sl_wifi_listen_interval_t object that contains the current listen interval. |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
Note
By default, the listen interval is set to 1000 millisecs.
Moving forward, this API will be deprecated. Instead, use the sl_wifi_get_listen_interval_v2 API. This is retained for backward compatibility.
sl_wifi_get_listen_interval_v2#
sl_status_t sl_wifi_get_listen_interval_v2 (sl_wifi_interface_t interface, sl_wifi_listen_interval_v2_t * listen_interval)
Get the Wi-Fi client listen interval and listen interval multiplier.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
sl_wifi_listen_interval_v2_t * | [out] | listen_interval | sl_wifi_listen_interval_v2_t object that contains the current listen interval and listen interval multiplier. |
Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
Note
By default, the listen interval is set to 1000 millisecs and listen interval multiplier is set to 1.
sl_wifi_update_gain_table#
sl_status_t sl_wifi_update_gain_table (uint8_t band, uint8_t bandwidth, const uint8_t * payload, uint16_t payload_length)
Assign the user configurable channel gain table entries in different regions to the module from the user.
Type | Direction | Argument Name | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uint8_t | [in] | band | 1 - 2.4 GHz | ||||||||||
uint8_t | [in] | bandwidth | 0 - 20 MHz | ||||||||||
const uint8_t * | [in] | payload | Pass channel gain table entries for different regions in a given array format. The gain array format is as follows:
Repeat the above format for all regions codes. | ||||||||||
uint16_t | [in] | payload_length | Max payload length (table size) in 2.4 GHz is 128 bytes. |
This function overwrites the default gain tables present in the firmware. Customers can load gain tables for 2.4 GHz-20 MHz. This is a blocking API.
Returns
sl_status_t. See Status Codes and Additional Status Codes for details..
Pre-conditions: sl_wifi_init should be called before this API.
Note
This API is deprecated and retained only for backward compatibility. Instead, use the sl_wifi_update_su_gain_table API. For IC parts: This function is applicable in Transmit test mode (SL_WIFI_TRANSMIT_TEST_MODE) and end-to-end modes. Use this function only in devices for which you have completed FCC, CE (ETSI), MIC (TELEC), KC (KCC) certification with your own antenna. Silicon Labs disclaims any liability for non-compliant use of this function that could breach those or any other regulatory certifications. To enforce regulatory transmit power limits (FCC, CE (ETSI), MIC (TELEC), KC (KCC)):
Load the region-specific maximum power values at every boot using the
sl_wifi_update_gain_table()
API.Because the firmware does not retain this information in flash memory, the application must invoke this API at every startup.
The provided region-based user gain table is copied into the firmware’s region-based table.
The device then uses this table to cap transmit power and ensure compliance with the allowed limits. Below are the default gain tables:
Si917 IC (SiWx917Mxxxxx) OPNs:
Number of regions: 4Region
Number of channels
Channel
11b
11g
11n
11ax
FCC
0xB
1
33
24
21
20
2
34
28
28
24
3
40
30
32
30
4
40
33
36
31
5
40
35
36
32
6
40
35
36
31
7
40
34
36
30
8
38
32
36
32
9
38
34
34
28
10
34
30
30
22
11
34
24
22
20
ETSI
0x11
255
36
36
36
24
TELEC
0x24
2
34
28
32
24
10
34
36
36
24
13
34
26
24
24
14
36
0
0
0
KCC
0x11
255
36
36
36
36
For module parts: This function is applicable in Transmit test mode only. This API will return SL_STATUS_SI91X_FEATURE_NOT_AVAILABLE
unless the module is set in SL_SI91X_TRANSMIT_TEST_MODE
. On boot, Worldsafe gain entries are applied by default. These values are derived by taking the minimum gains across all supported regional regulatory limit tables to ensure global compliance. During AP association, the device may automatically switch to region-specific transmit power limits based on the AP's Country IE. If the AP does not include a Country IE, the device continues to operate using the Worldsafe region settings. FCC, ISED, and NCC share a common set of gain entries. CE (ETSI), UKCA, ACMA, and RSM also share a common set of gain entries. Below are the default gain tables:
Si917 Module (SiWx917Yxxxxxx) OPNs:
Number of regions: 6Region
Number of channels
Channel
11b
11g
11n
11ax
FCC
0x29
1
30
20
20
18
2
36
26
26
22
3
40
30
30
26
4
40
36
36
32
7
40
40
40
36
8
40
36
34
36
9
40
34
32
28
10
36
30
28
20
11
30
20
18
16
ETSI
0x11
255
24
28
28
14
TELEC
0x24
1
28
28
26
16
12
28
36
36
16
13
28
26
26
16
14
28
0
0
0
KCC
0x11
255
36
36
36
36
WORLDSAFE
0x24
1
24
20
20
14
2
24
26
26
14
10
24
28
28
14
11
24
20
18
14
SRRC
0x24
1
26
20
20
14
2
26
26
26
14
10
26
30
30
14
13
26
20
20
14
sl_wifi_update_su_gain_table#
sl_status_t sl_wifi_update_su_gain_table (uint8_t band, uint8_t bandwidth, const uint8_t * payload, uint16_t payload_length, uint8_t x_offset, uint8_t y_offset)
Assign the user configurable channel gain table entries in different regions to the module from the user including 11ax SU and 11ax TB.
Type | Direction | Argument Name | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uint8_t | [in] | band | 1 - 2.4 GHz | ||||||||||||
uint8_t | [in] | bandwidth | 0 - 20 MHz | ||||||||||||
const uint8_t * | [in] | payload | Pass channel gain table entries for different regions in a given array format. The gain array format is as follows:
Repeat the above format for all regions codes. This table contains the separate gain table entries for 11ax SU and TB | ||||||||||||
uint16_t | [in] | payload_length | Max payload length (table size) in 2.4 GHz is 160 bytes. | ||||||||||||
uint8_t | [in] | x_offset | Bump up offset for 11ax 56 tone RU | ||||||||||||
uint8_t | [in] | y_offset | Bump up offset for 11ax 106 tone RU |
This function overwrites the default gain tables present in the firmware. Customers can load gain tables for 2.4 GHz-20 MHz. This is a blocking API.
Returns
sl_status_t. See Status Codes and Additional Status Codes for details.
Pre-conditions: sl_wifi_init should be called before this API.
Note
For IC parts: This function is applicable in Transmit test mode (SL_WIFI_TRANSMIT_TEST_MODE) and end-to-end modes. Use this function only in devices for which you have completed FCC, CE (ETSI), MIC (TELEC), KC (KCC) certification with your own antenna. Silicon Labs disclaims any liability for non-compliant use of this function that could breach those or any other regulatory certifications. To enforce regulatory transmit power limits (FCC, CE (ETSI), MIC (TELEC), KC (KCC)):
Load the region-specific maximum power values at every boot by using the
sl_wifi_update_su_gain_table()
API.Because the firmware does not retain this information in flash memory, the application must invoke this API at every startup.
The provided region-based user gain table is copied into the firmware’s region-based table.
The device then uses this table to cap transmit power and ensure compliance with the allowed limits. Below are the default gain tables:
Si917 IC (SiWx917Mxxxxx) OPNs:
Number of regions: 4Region
Number of channels
Channel
11b
11g
11n
11ax(SU)
11ax(TB)
FCC
0xB
1
32
22
22
20
14
2
32
26
26
24
20
3
34
28
28
26
30
4
36
34
32
30
32
5
36
34
34
32
32
6
36
36
36
34
34
7
36
34
34
32
28
8
36
32
32
30
28
9
36
30
30
28
28
10
32
28
28
24
14
11
32
22
22
20
14
ETSI
0x11
255
34
36
36
36
24
TELEC
0x22
13
34
38
36
36
24
14
38
0
0
0
0
WORLDSAFE
0x25
1
32
22
22
20
14
2
32
26
26
24
20
11
32
22
22
20
14
13
34
36
36
36
24
14
38
0
0
0
0
For module parts: This function is applicable in Transmit test mode only. This API will return SL_STATUS_SI91X_FEATURE_NOT_AVAILABLE
unless the module is set in SL_SI91X_TRANSMIT_TEST_MODE
. On boot, Worldsafe gain entries are applied by default. These values are derived by taking the minimum gains across all supported regional regulatory limit tables to ensure global compliance. During AP association, the device may automatically switch to region-specific transmit power limits based on the AP's Country IE. If the AP does not include a Country IE, the device continues to operate using the Worldsafe region settings. FCC, ISED, and NCC share a common set of gain entries. CE (ETSI), UKCA, ACMA, and RSM also share a common set of gain entries.
Below are the default gain tables:
Si917 Module (SiWx917Yxxxxxx) OPNs:
Number of regions: 6Region
Number of channels
Channel
11b
11g
11n
11ax(SU)
11ax(TB)
FCC
0x29
1
30
20
20
18
18
2
36
26
26
22
22
3
40
30
30
26
26
4
40
36
36
32
32
7
40
40
40
36
36
8
40
36
34
36
36
9
40
34
32
28
28
10
36
30
28
20
20
11
30
20
18
16
16
ETSI
0x11
255
24
28
28
14
14
TELEC
0x24
1
28
28
26
16
16
12
28
36
36
16
16
13
28
26
26
16
16
14
28
0
0
0
0
KCC
0x11
255
36
36
36
36
36
WORLDSAFE
0x24
1
24
20
20
14
14
2
24
26
26
14
14
10
24
28
28
14
14
11
24
20
18
14
14
SRRC
0x24
1
26
20
20
14
14
2
26
26
26
14
14
10
26
30
30
14
14
13
26
20
20
14
14
sl_wifi_set_11ax_config#
sl_status_t sl_wifi_set_11ax_config (uint8_t guard_interval)
Configure the 11ax params.
Type | Direction | Argument Name | Description |
---|---|---|---|
uint8_t | [in] | guard_interval | Period of time delta between two packets in wireless transmission. Valid values : 0 - 3 (0 = 8 us, 1 = 16 us, 2 = 32 us, 3 = 64 us). |
This is a blocking API.
Pre-conditions:
This API should be called before sl_wifi_connect
Returns
sl_status_t. See https://docs.silabs.com/gecko-platform/latest/platform-common/status for details.
sl_wifi_transmit_test_start#
sl_status_t sl_wifi_transmit_test_start (sl_wifi_interface_t interface, const sl_wifi_transmitter_test_info_t * tx_test_info)
Start the transmit test.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
const sl_wifi_transmitter_test_info_t * | [in] | tx_test_info | Pointer to sl_wifi_transmitter_test_info_t structure containing the configuration for the transmit test. |
This function starts the transmit test using the provided configuration.
This is a blocking API.
This API is relevant in PER mode
-Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See [Status Codes] (https://docs.silabs.com/gecko-platform/latest/platform-common/status) and [Additional Status Codes] (../wiseconnect-api-reference-guide-err-codes/sl-additional-status-errors) for details.
Note
Before starting Continuous Wave mode, user must start Continuous mode with power and channel values that are intended to be used in Continuous Wave mode i.e.
Start Continuous mode with intended power value and channel values - Pass any valid values for rate and length.
Stop Continuous mode
Start Continuous Wave mode
If user wants to switch continuous wave mode, first need to stop the per mode and again need to give continuous wave mode which user wants to switch.
sl_wifi_transmit_test_stop#
sl_status_t sl_wifi_transmit_test_stop (sl_wifi_interface_t interface)
Stop the transmit test.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
This function stops the ongoing transmit test on the Si91x device.
This is a blocking API.
This API is relevant in PER mode.
-Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See [Status Codes] (https://docs.silabs.com/gecko-platform/latest/platform-common/status) and [Additional Status Codes] (../wiseconnect-api-reference-guide-err-codes/sl-additional-status-errors) for details.
Note
User should configure a minimum delay (approx. 10 milliseconds) before and after sl_wifi_transmit_test_start API to observe a stable output at requested dBm level.
sl_wifi_frequency_offset#
sl_status_t sl_wifi_frequency_offset (sl_wifi_interface_t interface, const sl_wifi_freq_offset_t * frequency_calibration)
Provide feedback of frequency error in KHz.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
const sl_wifi_freq_offset_t * | [in] | frequency_calibration | Pointer to sl_wifi_freq_offset_t structure containing the frequency error in KHz. |
This function provides feedback of the frequency error in KHz. The frequency error is specified using the sl_wifi_freq_offset_t
structure.
This is a blocking API.
-Pre-conditions:
sl_wifi_init should be called before this API.
Returns
sl_status_t. See [Status Codes] (https://docs.silabs.com/gecko-platform/latest/platform-common/status) and [Additional Status Codes] (../wiseconnect-api-reference-guide-err-codes/sl-additional-status-errors) for details.
sl_wifi_dpd_calibration#
sl_status_t sl_wifi_dpd_calibration (sl_wifi_interface_t interface, const sl_wifi_dpd_calib_data_t * dpd_calib_data)
Update Flash/EFuse DPD data.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_wifi_interface_t | [in] | interface | Wi-Fi interface as identified by sl_wifi_interface_t |
const sl_wifi_dpd_calib_data_t * | [in] | dpd_calib_data | Pointer to sl_wifi_dpd_calib_data_t structure containing the DPD calibration data. |
This function updates the Flash/EFuse DPD (Digital Pre-Distortion) data using the provided DPD calibration data.
This is a blocking API.
-Pre-conditions:
sl_wifi_init and sl_wifi_transmit_test_start should be called before this API.
Returns
sl_status_t. See [Status Codes] (https://docs.silabs.com/gecko-platform/latest/platform-common/status) and [Additional Status Codes] (../wiseconnect-api-reference-guide-err-codes/sl-additional-status-errors) for details.
Note
In FCC-certified modules, this API will trigger an error SL_STATUS_SI91X_FEATURE_NOT_AVAILABLE if used, except when in SL_WIFI_TRANSMIT_TEST_MODE mode.