Gecko OS is now in maintenance and is not recommended for new designs. Please see the Software Advisory for detailed information (registration required).

Release Notes for Gecko OS Edition 4

To install the latest version of Gecko OS on your device, use the DFU Update Command or Gecko OS Studio (GSS).


These release notes document the changes between Gecko OS version 4.1 and Gecko OS version 4.2.

Gecko OS 4.2.7 GA Release April 2021

Changelog

Last Updated : April, 2021

Fixes and Improvements

TopicDescription
DFUFixed an issue that could cause the device to exit DFU with an invalid application and enter safe mode. In this condition the only way to recover the device is to restart DFU from the safe mode console. The issue only occurred on rare occasions when the network conditions between the device and DMS were unstable or heavily loaded. If the same condition occurs in this new version, the device will continue to retry DFU until the update is successful.
WLAN & SoftAP InterfaceThe WGM160P Wi-Fi transceiver (WF200) firmware was upgraded to version 3.12.2. The previous version of Gecko OS included WF200 firmware version 3.10.0. Details about the WF200 firmware version history can be found in the WF200 GitHub Repository.
PLATFORM SupportAdded support for the WGM160P022KGN, WGM160P022KGA and WGM160PX22KGN part variants in Gecko OS Studio and in the Gecko OS SDK. The previous version of Gecko OS only supports WGM160PX22KGA.

Gecko OS 4.2.6 GA Release December 2020

Changelog

Last Updated : December, 2020

Fixes and Improvements

TopicDescription
HTTPFixed an issue resulting in a command failed error when using http_download with options: -j, -m, -l, -t.
TCPEnhanced TCP sequence number generation to improve security. Security advisories maybe accessed through the Silicon Labs Salesforce notification system. Details on signing up for security or software advisories may be found here or at www.silabs.com/security
TLS streamFixed an issue when polling for remaining data from a TLS stream. In the previous version of Gecko OS, the command stream_poll returned an incorrect number of Rx bytes available in the TLS stream.

Gecko OS 4.2.5 GA Release November 2020

Changelog

Last Updated : November, 2020

Fixes and Improvements

TopicDescription
Certification exampleUpdated the wifi_test.cw.tx_power setting to use units of dbm instead of a quarter of dbm.
WLAN & SoftAP InterfaceThe WGM160P Wi-Fi transceiver (WF200) firmware was upgraded to version 3.10.0. The previous version of Gecko OS included WF200 firmware version 3.8.0. Details about the WF200 firmware version history can be found in the WF200 GitHub Repository.
Fixed an issue when connecting to WPA3-Mixed mode. Gecko OS is will now default to WPA2 mode when connecting to an access point configured to WAP3-Mixed mode.
Error messages are now made more descriptive for command responses from the WF200.
Customer SDKFixed: gos_ethernet_bridge_start() and gos_ethernet_bridge_stop() results in a undefined reference error.
Fixed an issue where the max size of gos_file_read() has an upper limit of 2^16. The max size of the buffer for gos_file_read() is now 2^32.
Fixed an issue where the API gos_hs_write_reply_header_with_config() always returns "OK".
The UART now supports interrupts for individual bytes received. This setting can be configured using the API function gos_uart_set_responsive_mode_enabled().
EthernetIf system.interface.ethernet_enabled is enabled, the Ethernet PHY will no longer power off when the network is brought down. This allows the application to query the presence of an Ethernet cable when the network is down.
Added a warning message if Ethernet is used without being enabled.
PWMFixed an issue where the PWM max frequency is limited to 70 KHz. The PWM now supports a max frequency of 720 KHz.
ADCFixed an issue resulting in command fail when passing a lookup table to the adc_take_sample command.
RTCThe time.zone setting now supports offsets of 15 minutes.
TLS handshakeFixed a TLS handshake failure with some specific hosts. Refer to this Silicon Labs community forum post.
WebSocketThe WebSocket client now supports custom headers. See the example network/websocket_client_with_header for more detail.

Gecko OS 4.2.4 GA Release August 2020

Changelog

Last Updated : August, 2020

Fixes and Improvements

TopicDescription
Certification exampleThe wifi_test.tx.tx_power range was updated to [ -10dBm : +20dBm ] with a default value +20dBm
Fixed the command shortcut for wifi_test.tx.region: wt t g
Fixed the command shortcut for wifi_test.tx.power: wt t o
Removed the command wifi_test_set_backoffand added the variable wifi_test.backoff. The syntax and usage of wifi_test.backoff is same as wlan.backoff
WLAN & SoftAP InterfaceFixed an incompatibility with GOS 4.2.3 that caused multi-pass DFU to fail when using WAP2-Mixed security and wlan.join.retries less than or equal to 1.
The command network_verify was corrected to align with the documentation.
Fixed an issue of incorrect naming of gos_security_t members. Previously, some of the gos_security_t members were incorrectly prefixed with "SL_WIFI_" instead of "GOS_".
The WGM160P Wi-Fi transceiver (WF200) firmware was upgraded to version 3.8.0. The previous version of Gecko OS included WF200 firmware version 3.7.0. Details about the WF200 firmware version history can be found in the WF200 GitHub Repository.
DFUFixed the ability to return to normal app when system.safemode.ota_auto_retry is false.
Added more information for DFU update when performing in machine mode. The console will print the state of the command dfu_update.
NTP ClientFixed a known issue of failed NTP sync during DHCP renewal. In the previous SDK, NTP sync will fail and stopped syncing when NTP sync occurs at the same time as DHCP renewal.
HTTP ClientFixed an issue resulting in invalid HTTP header when the reason phrase is missing. The HTTP client no longer verifies the reason phrase.
Fixed an issue resulting in failed WebSocket handshake due to case-sensitivity in the HTTP response header.
Command ConsoleCorrected the documentation for the variable system.shutdown.wakeup_timeout. The wake up time should only be set to a power of 2. If not, it will be rounded down in code.
Added the API for the function gos_shutdown. In the previous SDK, this function was declared but not implemented.
MQTT exampleFixed an issue resulting in MQTT failing to receive messages larger than 1400 bytes.
UDP serverFixed an issue resulting in the API function gos_udp_query() returning error 7062 : GOS_UNINITIALIZED.
SoftapAdded support for the command softap_get_rssi. In the previous versions this command was not fully supported.
Added support for the variable softap.idle_timeout. In previous versions this variable was not fully supported.
Https serverFixed an issue with the command http.server.tls_client_log not returning correct information.

Gecko OS 4.2.3 GA Release June 2020

Known Issues

TopicDescriptionSolution or Workaround
NTP ClientWhen a NTP sync occurs at the same time as a DHCP address renewal, the NTP sync will fail and Gecko OS will not ever try NTP again until the network interface is brought down then back up. Note that Gecko OS will attempt to renew the DHCP address at DHCP-lease-time / 2 where the DHCP-lease-time is determined by the remote DHCP server. The NTP sync interval is controlled by the variable ntp.inteval.There are two suggested work arounds: 1) Since the DHCP lease time is typically divisible by 1 hour, set ntp.inteval to a value that is not divisible by 1 hour (for example 57 minutes) so that the intervals do not collide. 2) If you are developing a native application you can use the API function gos_ntp_update() to force a NTP sync.
DFUMultipass DFU will fail and enter safe mode when the the update is performed while associated to an access point with WPA2-Mixed security and when wlan.join.retries is less than or equal to 1. This is caused by a change in gos_security_t. The first pass of the DFU will operate without error but the second pass will fail with the error GOS_WIFI_UNKNOWN_SECURITY_TYPE (1044).Set wlan.join.retries greater than or equal to 2. The default is 3.

Changelog

Last Updated : July, 2020

Fixes and Improvements

TopicDescription
Command ConsoleThe max line length in the command console was increased from 128 to 160.
Example AppsFixed the network/ethernet_bridge example. In previous versions of the Gecko OS SDK the network/ethernet_bridge example used an incorrect command.
Fixed documentation hyperlinks found in the example applications.
WLAN & SoftAP InterfaceFixed an issue with connecting to a hidden SSID when specifying the BSSID using wlan.bssid. In previous versions, the BSSID must be cleared to connect to a hidden SSID.
Fixed issues in the Wi-Fi scan feature with identifying Wi-Fi access points using WPA1 and WEP security. Previously, access points using WPA1 and WEP security were identified as Open
Added the ability to identify Wi-Fi access points using enterprise authentication. Note that the WGM160P and Gecko OS do not support enterprise authentication. This change is only to identify such access points during scan. Scan results will append an asterisk to the security mode to indicate that the access point is using enterprise authentication. In addition, the values for the datatype gos_security_t have been expanded to include enterprise authentication.
Fixed an issue that resulted in a hard fault when connecting to a SSID containing UTF-8 characters sequences such as emojis.
The WGM160P Wi-Fi transceiver (WF200) firmware was upgraded to version 3.7.0 to fix an interoperability issue with certain access points. The previous version of Gecko OS included WF200 firmware version 3.6.0. Details about the WF200 firmware version history can be found in the WF200 GitHub Repository.
Enabled diagnostic logging information from the WGM160P Wi-Fi transceiver (WF200) whenever an exception occurs inside the WF200 device.
NTP ClientClear the DNS entry for NTP whenever an NTP sync failure occurs. This forces Gecko OS to perform another DMS lookup to re-establish a NTP server IP address which reduces the chance of a subsequent NTP failure.
TLS ConnectionsFixed thread-safe issues for all TLS connections. In the previous version of Gecko OS, TLS connections where not thread-safe and as a result, simultaneous TLS transactions (HTTPS, DMS, etc.) could result in undefined behavior including hard faults.
SDK ToolsModified the SDK tools to add support for the WGM160P variants WGM160P022KGN, WGM160P022KGA and WGM160PX22KGN.
HTTP(s) ClientFixed an issue resulting in lost data when an HTTP server response used chunk encoding.

Gecko OS 4.2.0 GA Release April 2020

This release is an upgrade of the WF200 Wi-Fi transceiver firmware that is included in Gecko OS. There are no changes to commands, variables or the C-API. See the Gecko OS 4.1 release notes for information on the previous version.

Changelog

Last Updated : July, 2020

Fixes and Improvements

TopicDescription
WLAN & SoftAP InterfaceThe WGM160P Wi-Fi transceiver (WF200) firmware was upgraded to version 3.6.0 which includes several fixes and improvements. The previous version of Gecko OS included WF200 firmware version 3.3.0. Details about the WF200 firmware version history can be found in the WF200 GitHub Repository.
This version fixes a potential lockup of the Wi-Fi transceiver that can sometimes occur when bringing down the softap interface. In the previous version, when this issue occurs, the device reports Command failed: 2 to the command console after which all Wi-Fi related functionality no longer works until a reboot is performed.