WiSeConnect Release Notes#
Release notes are provided with each version of the WiSeConnect™ SDK.
WiSeConnect 2.4.1 Release Notes#
Last updated: September 10, 2021
Highlights#
FragAttack Vulnerability Fixes
Wi-Fi Interoperability issue fixes
Release Details#
Item | Details |
---|---|
Release date | September 1, 2021 |
API Version (SAPI) | 2.4.1 (Build 16) |
Firmware Version | 2.4.1.0.16 (Build 16) |
Package Name | RS9116W.2.4.1.16 |
Supported RTOS | FreeRTOS |
Hardware Modules/Chipsets | QMS, B00, C00, CC1, AB0, AB1, AA0, AA1 |
Operating Modes Supported | Wi-Fi STA, Wi-Fi AP, Wi-Fi STA+BLE |
Additional Operating Modes Supported (Beta Quality) | Wi-Fi STA+BT, Wi-Fi STA+BT+BLE |
Updating to this Release#
RS9116W 2.4.1 release consists of two components
Firmware - RS9116 Firmware Binary
SAPI Library - SAPI Library runs on Host
This release has bug-fixes and Firmware. It is strongly recommended to upgrade SAPI and Firmware together.
Changes and Fixes#
Fix for FragAttack Vulnerabilities
Fix for issues on Swyentooth Vulnerability fixes
Fix for few Wi-Fi interoperability issues with certain Access Points
Fix for issue in BLE local attribute setting, when notification not enabled in remote, resulting in error 4046
Fix for issue in AP mode, switching to 5 GHz band results in 0x5B error
Fix for UDP Asynchronous socket not storing and providing remote IP and Port information
Fix for Low WiFi Transmit Power issue for AA0 modules
Fix for ping failure after reconnection to AP in concurrent mode
Fix for HTTP OTAF upgrade failing in subsequent iterations if first iteration fails due to network connections resulting in 0xBBED error
Fix for issue with BLE connection 2nd iteration onwards after connect/disconnect when remote device is advertising as connectable
Fix for issue of BT disconnection with continous SPP_rx traffic, sometime due to LMP timeout
Known Issues#
FragAttack Vulnerability CVE-2020-24588: Aggregation Attack (accepting non SPP A-MSDU frames) is not addressed in this release, as this needs a change in specification
FragAttack Vulnerability CVE-2020-26146: Aggregation Attack (reassemble fragments with non-consecutive packet numbers) is not addressed in this release
Workarounds#
CC0/CC1 Host Interface Detection at Low Temperatures#
One or more of the serial host interfaces of RS9116 CC0/CC1 modules may fail to respond to host detection at ambient temperatures lower than approximately -20 degC. Execute the following sequence of commands to adjust the module calibration to workaround this issue.
#define BURN_INTO_FLASH 1
#define BURN_XO_FAST_DISABLE 8
rsi_wireless_init(8, 0); // Set the operating mode of the module
rsi_wlan_radio_init(); // Set the operating band and initialize the module
rsi_calib_write(BURN_INTO_FLASH, BURN_XO_FAST_DISABLE, 0, 0); // Trigger the calibration write process to update the
// information in flash and wait for a response from the firmware.
Note!
The workaround must be executed at room temperature, ~25 degC.
The command sequence must be executed once ONLY.
Ensure the power supply to the module is stable while issuing commands.
The workaround is needed for existing products/boards already mounted with CC0/CC1 modules only.
Once executed, the module must be power-cycled before it can be used for normal operation.
WiSeConnect 2.4 Release Notes#
Index#
Highlights#
Azure and AWS Cloud Connectivity Support
SweynTooth Vulnerabilities fixes
Strong Cipher Suite Support
Co-Existence Algorithm Enhancements
EN 300 328 v.2.2.2 Certification Support
TELEC Certification Support
Wi-Fi Interoperability Fixes and Enhancements
Crystal Calibration Support (Needed for RS9116 QMS)
Significant reorganization and refactoring of the SDK
Integrated support for EFR32MG21 hosts and Simplicity Studio
Release Details#
Item | Details |
---|---|
Release date | June 30, 2021 |
API Version (SAPI) | 2.4.0 (Build 36) |
Firmware Version | 2.4.0 (Build 36) |
Package Name | RS9116W.2.4.0.36 |
Supported RTOS | FreeRTOS |
Hardware Modules/Chipsets | QMS, B00, C00, CC1, AB0, AB1, AA0, AA1 |
Operating Modes Supported | Wi-Fi STA, Wi-Fi AP, Wi-Fi STA+BLE |
Additional Operating Modes Supported (Beta Quality) | Wi-Fi STA+BT, Wi-Fi STA+BT+BLE |
Updating to this Release#
RS9116W 2.4 release consists of two components
Firmware - RS9116 Firmware Binary
SAPI Library - SAPI Library runs on Host
This release has bug-fixes, enhancements, new SAPI features and Firmware. Most of the new features have associated APIs, which are available in the latest SAPI implementation only. It is strongly recommended to upgrade SAPI and Firmware together.
New Features#
Wi-Fi#
Azure Support for Cloud Connectivity
AWS Support for Cloud Connectivity
Support for Dynamic switching between AP and STA mode of Operation (see
config_feature_bit_map[16]
)Support for Loading Certificate without requiring a reboot of the chip
Configurability Option for disabling TX Data rates
MCS5
,MCS6
andMCS7
Support for Stronger Cipher Suites
Support for Enhanced Max PSP mode for better interoperability, see
config_feature_bit_map[26]
and refer to APIrsi_wlan_power_save_profile()
. This PSP type is supported for STA Only mode.Enhancements for better interoperability. Keep alive configuration, graceful closure of previous WLAN connections.
Enhancements to Wi-Fi Auto Rate adaptation Algorithm
Enhancements to Wi-Fi + BLE Co-Existence support
Improvements to Wi-Fi + BLE provisioning examples
Bluetooth - Common#
Resolution to SweynTooth family of BT vulnerabilities
Bluetooth - Classic#
Support for BT Advanced Audio Distribution Profile Source (BT alone mode only). Example Application project included for RT595 host platform
Power Save#
Fixes for functional issues in power save mode at high temperature, 85°C
General#
WLAN EN 300 328 v.2.2.2 ETSI Certification Compliance support added for the following modules and SoC Versions: B00 1.4, QMS 1.3, QMS 1.4, CC0/CC1 1.3, CC0/CC1 1.4, and AA0/AA1 1.3
Certified Gain tables are added for these modules for different antennas, which can be configured using the User Gain Table API for Wi-Fi and
rsi_bt_set_antenna_tx_power_level()
API for BT/BLE. Default firmware configuration is for the internal PCB/Chip AntennaB00: Internal Antenna (Fractus FR05-S1-N-0-102) and Dipole antenna (Taoglas GW.34.5153)
CC0/CC1 1.4 FCC/ETSI: Dipole antenna (GW.71.5153), Dipole antenna (Inside WLAN PRO-IS 299), PCB Antenna (RSIA7), PIFA Antenna (Smarteq 4211613980), PIFA Antenna (MARS-31A8 Wi-Fi antenna)
CC0/CC1 1.3 : PCB antenna , Dipole antenna
AA0/AA1-1.3: Chip antenna, Heavy-duty screw mount antenna
TELEC Certification Support
Support for Chip Manufacturing Software (Crystal Calibration Support for RS9116 QMS chip integration)
Support for Examples on EFR Platform
Package and Documentation Restructure
Changes and Fixes#
Fixes for Memory Leak in SSL, ensuring stability for longer connection
Resolved Issue with TCP long data transfer with low power configuration for memory configuration greater than 256k.
Fix for setting device local name for BLE
Fix for
rsi_ble_white_list_using_adv_data()
failureFix for store config/auto-config keep-alive timeout not working.
Fix for HID Keyboard notifications not being seen on the iOS mobile side
Configurability support in Firmware update APIs for the SAFE and FAST upgrade
Mishandling of SDIO Interrupts addressed in SAPI driver by calling
rsi_hal_intr_pin_status()
API. MCU HAL APIs will need to port this API for respective platform. Refer to SAPI porting guide for more information.Boot up Issue at Low Temperature (refer to API
rsi_calib_write() Bit of 3
)
New APIs#
For a complete list of new APIs, see SAPI Changelog
Recommendations and New Options#
Wi-Fi#
It is recommended to enable bit 16 of the 'Extended TCP IP Feature' bit map in opermode command for all Wi-Fi Socket Operations from host to ensure graceful handling during asynchronous closures from peer.
Aggregation (
bit 2 of feature_bit_map
) is recommended to be enabled in opermode.TCP retransmission count value is recommended to be 30 or higher, so that the TCP does not disconnect while the rejoin happens.
For Low throughput Applications, such as Smart lock, disabling the highest MCS rates, such as
MCS7
andMCS6
might help reducing packet retransmissions and ensure robust connection during heavy interference.To restart the module, the application needs to call
rsi_driver_deinit()
followed byrsi_driver_init()
andrsi_device_init()
. For OS cases, additionally callrsi_task_destroy(driver_task_handle)
to delete the driver task before callingrsi_driver_deinit()
and create again afterrsi_device_init()
usingrsi_task_create()
Register 'Join Fail Callback' function every time when join is called, as in the rejoin failure path the callback is deregistered. If not done, this might result in a scan not functioning on rejoin failure.
BT/BLE#
In BLE, recommended range of Connection Interval in
Power Save (BLE Only) - 100 ms to 1.28 s.
BT Classic + BLE Dual Mode is >= 200 ms.
Wi-Fi + BLE coex - 30 ms to 250 ms
In BLE, during Connection, the configuration of Scan Interval and Scan Window with same value is not recommended.
In BT Classic, recommended Sniff Interval configuration during Power Save is limited to 100 ms (<= 100).
In BLE, if a device is acting as Central, the scan window (in set_scan_params and create_connection command) must be less than the existing Connection Interval.
In BLE mode, if scanning and advertising is in progress and subsequently gets connected and moves to the central role, scanning and advertising stops. To further establish connection to another peripheral device or to a central device, the application should give a command for starting advertising and scanning again.
Device Power save need to be disabled before BT init and de-init.
Co-Existence#
For Wi-Fi + BLE, during Wi-Fi connection, lesser BLE scan Window and larger BLE scan Interval are recommended (1:3 or 1:4).
Wi-Fi + BLE Advertising
All the advertising intervals are supported, as per the BT Spec. If the Wi-Fi transactions are more, you may observe a slight difference in on-air advertisements compared to the configured intervals.
BLE Advertising will be stopped for intervals that collide with Wi-Fi activity.
Wi-Fi + BLE scanning
All scan intervals are supported as per BT Spec. For better scan results, use scan-window and scan interval in 1:3 or 1:4 ratio when the Wi-Fi scan activity is present.
BLE scanning will be stopped for intervals that collide with Wi-Fi activity.
Wi-Fi + BLE Central/Peripheral Connections
All connection intervals are supported as per BT Spec.
For stable connection, use optimal connection intervals and max supervision timeout in the presence of Wi-Fi activity.
Wi-Fi + BLE Central/Peripheral Data Transfer
To get better throughputs in both Wi-Fi and BLE, use medium connection intervals, such as 45 to 80 ms with Maximum supervision timeout.
Ensure Wi-Fi activity consumes lesser intervals.
For Wi-Fi + BT + BLE, Wi-Fi + BT, Wi-Fi + BLE operating modes, connect Wi-Fi ahead of BT/BLE connections to ensure seamless, stable connection for all 3 protocols.
For Wi-Fi + BT + BLE, Wi-Fi + BT, Wi-Fi + BLE operating modes, if BT/BLE needs to be connected ahead of Wi-Fi connection, use with high supervision timeout and high connection interval for BLE and high sniff interval for BT, to ensure seamless, stable connection. This configuration will also ensure a stable BT/BLE connection when Wi-Fi connects/disconnects/rejoins.
Wi-Fi + BLE Central/Peripheral Data Transfer
System#
For User Store configuration and Configuration Save, do not enable power save or save it as a configuration. If power save is enabled and saved as a configuration, upon boot up, the module will come up with the saved configuration and will go to power save without any indication to the host.
Set Optimization level to
O0
in project settings for IDE (KEIL).Memory Configuration must be 384K for BT/BLE and Co-Ex Operating Modes
Usage of Low Power Flash mode bit (Bit 19 in Extended customer feature bitmap). Enable this bit for Ultra low power standby associated scenarios. This results in about 20µA lower Wi-Fi standby associated current consumption.
Memory Configuration in SAPI functions: The default memory configuration is 384K. Users can configure it to 256/320/384kB by changing the macros defined in the below two files
In
rsi_wlan_config.h
:RSI_EXT_CUSTOM_FEATURE_BIT_MAP
EXT_FEAT_256K_MODE
orEXT_FEAT_320K_MODE
orEXT_FEAT_384K_MODE
In
rsi_common.c
:rsi_uint32_to_4bytes(rsi_opermode-\>ext_custom_feature_bit_map, (EXT_FEAT_256K_MODE (or) EXT_FEAT_320K_MODE (or) EXT_FEAT_384K_MODE | RSI_EXT_CUSTOM_FEATURE_BIT_MAP))
;
Apply Opermode commands in AT mode correctly. The wrong opermode in some cases might lead to unspecified behavior.
Set the recommended Power Save Profile (PSP) type to Enhanced Max PSP for Wi-Fi alone mode and MAX PSP for Wi-Fi Co-Ex Modes.
Disable power save during firmware upgrade and re-enable on upgrade completion.
Disable Power Save for High Throughput Applications.
The application needs to ensure that it sets RTC with correct timestamp when the feature is enabled before establishing the SSL connection.
Timeout value should be minimum 1 second for socket select and socket receive calls. Timeout value less than 1 second is not currently supported.
For more details, see 'Configuration parameters' in the SAPI Reference Manual.
Known Issues#
Network Stack#
MQTT disconnects during firmware upgrade using OTAF, when power save is enabled. Disable power save during firmware upgrade and re-enable on upgrade completion.
Newly Added GCM Based Strong Cipher Suites will have performance issues as Hardware support is not available in the current platform.
Recommended MQTT Publish payload is 1 kBytes.
If HTTP Server is configured in the module, MQTT client port should not be port configured on port 80.
Randomize the client port if using rapid connect/disconnect of the MQTT session on the same client port with the power save.
Secure SSL Renegotiation not supported in Embedded Networking Stack.
IPv6 support is not available in this release.
Wi-Fi#
If the station performs the scan in concurrent mode (Wi-Fi STA+AP), it is possible for stations connected to the AP to get disconnected. Enable AP after STA connection is completed.
Issue observed with WPA2 Enterprise Connectivity using Microsoft RADIUS Server.
If BG Scan is enabled along with custom feature bit map bit (8) configuration of the DFS Channel support, issues may occur in getting IP address for the Wi-Fi STA.
BT/BLE#
Wake on Wireless not supported for BLE.
BT-HID might not inter-operate with Apple devices.
In Wi-Fi + BT/BLE Co-Ex mode, high Wi-Fi broadcast traffic might cause BT/BLE disconnections.
Continuous data transfer on SPP (Rx/Tx) with packet size ~800 bytes in some scenarios might lead to BT disconnection. Introduce delay in between transfers to work around this issue.
In Wi-Fi + BT mode when there is continuous Wi-Fi data, you might observe BT not re-connecting to remote after disconnection.
BT-A2DP interoperability issue might be observed with some headsets.
For BLE, dual role scenario issues might occur when connecting as central if the advertising is also going out for the peripheral role. Central connections can be made after the peripheral connections are established and advertising is stopped.
Co-Existence#
In Co-Ex Mode if power save is enabled, it stays in enabled state even after Wi-Fi disconnection. Disable power save after every
radio_init()
and enable it when intended by application.BLE may disconnect with Wi-Fi + BLE configuration and Wi-Fi continuous data transfer when the low BLE supervision timeout is configured. When the supervision timeout is configured with the value of 16 seconds, no disconnections are observed.
WiFi + BLE mode WPS is not working.
Wi-Fi +BLE/BLE only mode: For SPI as host interface, continuous BLE TX Notification might cause the host interface to hang needing a hardware reset. The issue is not seen with discrete burst BLE data.
In Wi-Fi + BT/BLE configuration with Wi-Fi disconnects, BT/BLE reconnection issue is observed (see the earlier section 'Recommended Configurations and Application Development options' in this document).
Interoperability#
QoS Null frames indicating going to Power Save if not acknowledged by AP may cause AP not to sync with the power save state, resulting in Possible disconnections.
If 3rd Party Access Points are periodically not sending beacons, in some scenarios unicast probe requests are not sent from the module, as expected, which might result in disconnections.
System#
A known issue exists with FAST-PSP mode. Use Enhanced MAX-PSP power save.
Wake on Wireless support is tested only for UART AT command interface.
802.11b transmit power of some AA0 modules might be 4 dBm less than that mentioned in data sheets. As a result, connectivity issues might be observed at 2.4 GHz when the AP is far.
Power Save without RAM retention is not working for the SPI interface.
Limitations and Unsupported Features#
Wi-Fi/Network Stack#
AMSDU TX is not supported.
Fragmentation is not supported.
AMSDU's within AMPDU is not supported.
Currently, the module does not support Radio Measurement Requests feature of CCX V2
802.11k is not supported
Short GI is not supported
802.11w is not supported
40 MHz bandwidth in 2.4 GHz band is not supported.
802.11J channels less than 16 are not supported.
USB host interface and USB Power save are not supported.
Total MQTT Command Length, apart from MQTT Publish, should not exceed
150
bytes. This includesat+rsi
(start of command) to (end of command)\r\n
.Configure
MQTT_VERSION
inrsi_mqtt_client.h
based on the server configuration; only version 3 and 4 are supported.3xSSL connections or 1xTCP and 2xSSL connection, connections are supported concurrently in Wi-Fi only mode.
SSL Curve IDs supported are 15-28. SSL handshake with 3rd party clients depends on the SSL Curve ID.
BT/BLE#
BT Sniff mode does not work if BT multiple slaves feature is enabled.
For BLE, if the connection is established with a small connection interval (< 15 ms), simultaneous roles (i.e., Central/Peripheral + Advertising/Scanning) are not supported.
BLE maximum 2 concurrent connections are supported, which can be either a connection to two peripheral devices or to 1 central and 1 peripheral device.
For BT Classic, only 1 connection is supported at any time
BLE Slave latency value is valid up to 32 only.
BT-A2DP Encoder is not supported in the firmware
BT-A2DP not supported in AT mode
User Gain Table API is not available for BT/BLE Path. Limit the BT/BLE TX power for a specific antenna using rsi_bt_set_antenna_tx_power_level API.
Co-Existence#
In Wi-Fi + BLE during Wi-Fi connection, if both BLE scan interval and window are the same, an issue will occur in successfully making the Wi-Fi connection.
For AT commands, Wi-Fi + BT + BLE (Opermode 9) B + BLE(Opermode 8) are not working. However, BT, Wi-Fi + BT modes (Opermode 5) works fine. Also, all combinations work fine with SAPI.
Wi-Fi STA + BT + BLE multiprotocol cases require detailed understanding of use cases and associated configurations. Contact Silicon Labs Support for more details.
Wi-Fi AP + BLE, Wi-Fi AP + BT & Wi-Fi AP + BT + BLE modes are not supported.
SDK Refactor#
The SDK folder structure and names were significantly changed in the 2.4 release. For detailed information, see SAPI Changelog
Terminology#
Term | Description |
---|---|
New Features | These items are new to this release |
Changes/Issues Fixed | Changes made to existing features found in previous releases of the software. |
Enhancements to existing product flow and feature set. | |
Bug fixes done in the Release | |
Deprecated Items | Features or functions or APIs that are removed from the distributed release to align with the software roadmap |
Known Issues | Features or functions that do not work as planned at time of release. Workarounds may be offered to meet short term development goals, but longer-term solutions will be added in future software releases |
Limitations/Recommendations | Describes the limitations on product usage and recommendations for optimal use cases |