Gecko Platform 4.3.1.0 GA

Gecko SDK Suite 4.3

July 26, 2023

The Gecko Platform provides infrastructure support for applications developed with higher-level protocols, and it provides an interface with the underlying hardware. It is composed of the following modules:

These release notes cover SDK version(s):

1 CMSIS Device

1.1 New Items

Added in release 4.3.1.0

Added in release 4.3.0.0

1.2 Improvements

Changed in release 4.3.0.0

1.3 Fixed Issues

Fixed in release 4.3.0.0

ID # Description
1105018 Made changes in pin_config.h defines to avoid MISRA warnings caused due to multiple definitions of macros.

1.4 Known Issues in the Current Release

None

1.5 Deprecated Items

None

1.6 Removed Items

None

2 Peripherals

2.1 New Items

Added in release 4.3.0.0

2.2 Improvements

Changed in release 4.3.0.0

2.3 Fixed Issues

Fixed in release 4.3.0.0

ID # Description
1131889 em_eusart: Fixed an array-bounds warning in em_eusart.c
1114232 em_lesense: fixed LESENSE_DecoderStateAllConfig and LESENSE_DecoderStateConfig to account for the correct number of states for Series 2 devices.

Fixed in release 4.3.0.0

ID # Description
1127003 Fixed Buck DCDC IPKVAL and DRVSPEED default settings for Series 2 devices.
1106525 For Series 2 devices, added a timeout to EMU_DCDCModeSet function to avoid deadlock when called from an interrupt context during EM4 shutdown process.
1083378 For Series 2 devices, disabled Interrupts while entering EM4 to prevent modification to DCDC Mode. If DCDC is in regulation mode while trying to reach the EM4 state, the power state transition will be aborted, and the DCDC IF EM4ERR condition will be set.
1119860 Updated IADC_init function to removed an implicit conversion from double to float compiler warning.
412632 Fix ADC_Init so it does not overwrite SINGLEDMAWU in CTRL register when ADC in configured in ASYNC mode.
1079268 Fixed CMU_ClockSelectGet() to return the right value when the EM01GRPACLK clock is disabled instead of cmuSelect_Error.

2.4 Known Issues in the Current Release

None

2.5 Deprecated Items

None

2.6 Removed Items

None

3 Drivers

3.1 New Items

None

3.2 Improvements

Changed in release 4.3.0.0

The platform/driver/mvp source catalog has been moved to the new position platform/compute where the content has been split into the component, driver, math, and nn catalogs. The rationale behind this change is to have all the software that supports hardware accelerators under the platform/compute catalog. In the new structure, the math library is placed in its own directory and it was natural to separate the CMSIS-NN compatible library functions used by Tensorflow Lite Micro from the driver. The MVP driver, nn and math libraries are now supported by new slc-components and the mvp.slcc component has been updated to bring in all the other MVP components by using only this component. This will ensure application compatibility with the previous file structure when using the mvp-component. (Release note updated in release 4.3.1.0)

3.3 Fixed Issues

Fixed in release 4.3.0.0

ID # Description
1105632 Fixed an implicit unsigned to signed casts warning in the DMADRV_AllocateChannel() function.
1099270 Fixed a bug in the SPIDRV_Deinit function, where the allocated/routed GPIOs were not reset.
1095676 Fixed I2CSPM to send 9 clocks during the i2c bus recovery sequence.
1095611 Fixed the sl_spidrv_init_instances function of the SPIDRV component to correct the EUSART Chip Select control mode (control mode set to spidrvCsControlApplication).
854128 Change default flow control settings in the UARTDRV component to uartdrvFlowControlHwUart.

3.4 Known Issues in the Current Release

None

3.5 Deprecated Items

None

3.6 Removed Items

The SLEEP and RTCDRV drivers from platform/emdrv were removed.

4 Services

4.1 New Items

Added in release 4.3.0.0

4.2 Improvements

Changed in release 4.3.0.0

4.3 Fixed Issues

Fixed in release 4.3.1.0

ID # Description
1167174 HFXO Manager: HFXO default startup is now 600 µs for when either PRS or a timer is used to start the HFXO. There is no longer the distinction between 300 µs & 600 µs startup for when PRS used vs when timer used to start HFXO. 300 µs HFXO default startup value could cause issues related to radio operation during the first EM2 wake up events.
1157958 HFXO manager: now checks if the SYSRTC peripheral is used by the sleeptimer instead of if the SYSRTC peripheral is present on this IC for Series 2 devices, fixing issues if another RTC timer was used by the sleeptimer.
1152110 Power Manager: Fixed a bug in the power manager component preventing a project not containing the power manager component to be upgraded to a newer GSDK. The bug was causing the upgraded project to be invalid.
1122968 MPU: Fixed sl_mpu_disable_execute to return an error when defining a region that overlaps a region already defined in the MPU to prevent a hard fault to occur on ARMv8-M architecture.

Fixed in release 4.3.0.0

ID # Description
1109520 Fix issue in Sleeptimer related to integration with Power Manager Early wake-up feature. This issue appeared on FreeRTOS-based applications. An abnormally high HFXO startup time was observed because of the issue leading to the application entering EM1 sleep instead of EM2.
1139472 Fixed a bug in Series 0 where the get_write_ptr function computed an incorrect value.
1130712 Fixed an issue in the deinitialization process of IOStream-UART where the power requirement was not properly removed, resulting in an incorrect power state.

4.4 Known Issues in the Current Release

None

4.5 Deprecated Items

None

4.6 Removed Items

None

5 CPC

5.1 New Items

Added in release 4.3.0.0

5.2 Improvements

Changed in release 4.3.1.0

Changed in release 4.3.0.0

5.3 Fixed Issues

Fixed in release 4.3.1.0

ID # Description
1141564 Resolved an issue where the initialization between CPCd/Secondary would fail at runtime if the request for the application version couldn't be acknowledged.
1150872 Addressed an issue causing negative RTO (retransmit timeout) calculation.

Fixed in release 4.3.0.0

ID # Description
1125380 Resolved a warning related to sl_cpc_iostream cast compatibility with the IAR compiler.
1117787 Addressed a stack smashing issue that occurred when the compiler option was activated.
1105518 Resolved an issue where packets were being unnecessarily retransmitted twice, resulting in redundant transmissions.
1093597 Addressed a critical bug in the UART/SPI driver that could lead to frame corruption during transmission. Previously, the bug caused invalid pointers within the frame when the TX complete callback was invoked, resulting in corruption.
1105185 Resolved an issue where a reject frame was incorrectly interpreted as a valid acknowledgement (ack).
1107259 Fixed the CPC IOStream bridge to enable external connections for enhanced connectivity and communication capabilities.

5.4 Known Issues in the Current Release

None

5.5 Deprecated Items

None

5.6 Removed Items

None

6 Common

6.1 New Items

6.2 Improvements

None

6.3 Fixed Issues

None

6.4 Known Issues in the Current Release

None

6.5 Deprecated Items

None

6.6 Removed Items

None

7 Middleware

7.1 New Items

None

7.2 Improvements

None

7.3 Fixed Issues

Fixed in release 4.3.1.0

ID # Description
1159242 Fixed current page size calculation before writing to flash.

Fixed in release 4.3.0.0

ID # Description
748986 Fixed bug #61333 (https://savannah.nongnu.org/bugs/?61333) in lwIP module.

7.4 Known Issues in the Current Release

None

7.5 Deprecated Items

None

7.6 Removed Items

None

8 Security

8.1 New Items

Added in release 4.3.1.0

Added in release 4.3.0.0

8.2 Improvements

Changed in release 4.3.1.0

Changed in release 4.3.0.0

8.3 Fixed Issues

Fixed in release 4.3.1.0

ID # Description
1154777 Fixed a bug in the PSA Crypto AEAD driver for Series-1 SoCs/Modules where the driver would potentially return an incorrect 'tag_length' for the 'psa_aead_finish()' function. The value of 'tag_length' would depend on the value passed in the 'tag_size' argument instead of the actual length of the tag. The bug affected both AES-CCM and AES-GCM modes of operation. The driver would never allow a 'tag_size' less than the tag length specified by the algorithm chosen, so this bug is not considered a vulnerability.
1148593 Corrected the behavior of the PSA Crypto Cipher driver on HSE devices (xG21, xG23, xG24, xG25, xG28) to make sure that calls to psa_cipher_encrypt_setup()/psa_cipher_decrypt_setup() return PSA_ERROR_NOT_SUPPORTED if the current configuration does not include support for the selected cipher algorithm.
1167059 Fixed a bug in the PSA ITS driver (version 1 and 2) that can potentially lead to inaccessibility of some keys when there are more than 16 keys (stored in NVM3 by the ITS driver). The ITS driver version 3 is not affected. Affected SDK versions are 4.3.0 and earlier (versions including PSA ITS version 1 and 2 drivers). Affected devices are EFx32xG1 and EFR32xG2.

8.4 Known Issues in the Current Release

None

8.5 Deprecated Items

None

8.6 Removed Items

None

9 Operating System

9.1 New Items

None

9.2 Improvements

None

9.3 Fixed Issues

Fixed in release 4.3.1.0

ID # Description
1154620 Fixed an issue in MicriumOS where a HardFault exception occurs when the scheduler is configured in Round Robin mode and the last task in the application deletes itself.

9.4 Known Issues in the Current Release

ID # Description Workaround
1108940 When osThreadTerminate() is called from the task that needs to be terminated a memory leakage occurs. Call the OsThreadTerminate from another task specifying correct thread_id to terminate the designated task.
1166857 OSTaskQPost doesn't send message to current task when called with a null pointer as argument. N/A

9.5 Deprecated Items

None

9.6 Removed Items

None

10 Gecko Bootloader

10.1 New Items

None

10.2 Improvements

None

10.3 Fixed Issues

Fixed in release 4.3.1.0

ID # Description
1161217 Added Fix in parser_parseApplicationInfo() function to fix the leakage from secure area

Fixed in release 4.3.0.0

ID # Description
1105352 Fixed OTA DFU App component issues with default optimization.
1107186 Fixed Project Creation fails for BG24 Bootloader SoC Internal Storage (single image on 1 MB device).
1111035 Fixed bootloader SPI error.
1138508 Fixed format of Bootloader Upgrade Location Base configuration option in the Bootloader Core component.
1130159 Fixed issue to enable clock for bootloader SPI Controller EUSART Driver.
1124579 Fixed Bootloader - SoC Bluetooth AppLoader OTA DFU Secure part fails to build.
1122767 Fix added to support to build Trust Zone apps using workspaces.

10.4 Known Issues in the Current Release

None

10.5 Deprecated Items

None

10.6 Removed Items

None

11 MVP Math Library

11.1 New Items

Added in release 4.3.0.0

The new Math Library accelerates Real and Complex Matrix and Vector operations using the Matrix Vector Processor available on EFR32xG24 (see parts with MVP available) operating on IEEE-754 half-precision floating point data and 8-bit integers, while offloading CPU. For heavy workloads it will improve overall performance and efficiency significantly.

The library is an alternative to CMSIS-DSP for Matrix and Vector math operations.

Category Function
Vector Math sl_math_mvp_complex_vector_conjugate_f16
sl_math_mvp_complex_vector_dot_product_f16
sl_math_mvp_complex_vector_magnitude_squared_f16
sl_math_mvp_complex_vector_mult_real_f16
sl_math_mvp_complex_vector_mult_f16
sl_math_mvp_vector_abs_f16
sl_math_mvp_vector_add_f16
sl_math_mvp_vector_add_i8
sl_math_mvp_clamp_i8
sl_math_mvp_vector_clip_f16
sl_math_mvp_vector_copy_f16
sl_math_mvp_vector_dot_product_f16
sl_math_mvp_vector_fill_f16
sl_math_mvp_vector_mult_f16
sl_math_mvp_vector_negate_f16
sl_math_mvp_vector_offset_f16
sl_math_mvp_vector_scale_f16
sl_math_mvp_vector_sub_f16
Matrix Math sl_math_mvp_complex_matrix_mult_f16
sl_math_mvp_matrix_add_f16
sl_math_mvp_matrix_mult_f16
sl_math_mvp_matrix_scale_f16
sl_math_mvp_matrix_sub_f16
sl_math_mvp_matrix_transpose_f16
sl_math_mvp_complex_matrix_transpose_f16
sl_math_mvp_matrix_vector_mult_f16

Types

Note that this library mainly supports float16 input/output.

11.2 Improvements

Changed in release 4.3.0.0

The platform/driver/mvp source catalog has been moved to the new position platform/compute where the content has been split into the component, driver, math, and nn catalogs. See Drivers > Improvements for more information.

11.3 Fixed Issues

None

12 Examples

12.1 New Items

None

12.2 Improvements

None

12.3 Fixed Issues

Fixed in release 4.3.1.0

ID # Description
1106289 Increased the heap size for the usb_device_cdc_acm_micriumos, usb_device_composite_micriumos and usb_device_hid_micriumos IAR applications, application was configured with a too small heap, preventing it from working correctly.

12.4 Known Issues in the Current Release

Issues in bold were added since the previous release. If you have missed a release, recent release notes are available on https://www.silabs.com/products/software.

ID # Description Workaround
664803 Se_manager and psa_crypto sample apps do not work correctly In the launch console, change the line terminator selection to None.

12.5 Deprecated Items

None

12.6 Removed Items

None

13 Boards and External Devices

13.1 New Items

Added in release 4.3.1.0

Added in release 4.3.0.0

13.2 Improvements

None

13.3 Fixed Issues

None

13.4 Known Issues in the Current Release

None

13.5 Deprecated Items

None

13.6 Removed Items

None

14 Other Gecko Platform Software Components

14.1 New Items

None

14.2 Improvements

None

14.3 Fixed Issues

Fixed in release 4.3.1.0

ID # Description
1173756 Fixed a warning not being displayed correctly when generating a project with SLC and the project contains the freeRTOS component but does not contain the NVIC device initialization component (except when the device has a Cortex-M0+ core).

Fixed in release 4.3.0.0

ID # Description
1077816 Added APIs to fetch FLASH base address in both internal and external flash scenarios. Made external flash address configurable.
1083908 Added preprocessor macros to separate the use of internal flash (MSC) and SPI in iot_flash. The file is now an auto generated file.

14.4 Known Issues in the Current Release

None

14.5 Deprecated Items

None

14.6 Removed Items

None

15 RAIL Library

15.1 New Items

Added in release 4.3.1.0

Added in release 4.3.0.0

15.2 Improvements

Changed in release 4.3.1.0

Changed in release 4.3.0.0

15.3 Fixed Issues

Fixed in release 4.3.1.0

ID # Description
707731 Fixed an issue when using RAIL_BLE_SetNextTxRepeat() that would cause an incorrect Protocol Config ID to appear in the packet trace for repeated transmits.
1079816 Fixed a race condition on EFR32xG22 and later during RX channel hopping or duty-cycling where frame detection occurring close to when a hop should happen could leave the radio stuck in reception but not receiving anything, with the only remedy being to idle the radio.
1088439 Fixed an issue which would cause the incorrect antenna to be reported for a received packet on the EFR32xG25 when using OFDM and antenna diversity.
1141539 Fixed an issue to improve CCA behavior for regional certification test suites for EFR32xG25 chips.
1153679 Fixed an issue in "RAIL Utility, Coexistence" component where a GRANT signal pulse less than 100 µs might result in the radio not being properly placed in hold off after GRANT is deasserted.
1156980 Fixed an issue with channel hopping on EFR32xG22 and later where use of RAIL_RX_CHANNEL_HOPPING_OPTION_RSSI_THRESHOLD can prevent the timed RX channel hopping modes including RX duty-cycling from timing out properly.
1167235 Fixed an issue with RAIL_SupportsFastRx2Rx() where it used to return an incorrect value on supported platforms.

Fixed in release 4.3.0.0

ID # Description
824355 Fixed an issue in IEEE802.15.4 MAC address filtering when receiving small OFDM packets.
832743 Clarified use of RAIL_SetNextTxRepeat() must be prior to initiating a transmit operation via API call and fixed an issue where it did not properly return an error when called while a transmit operation was in progress.
1055824 Fixed an issue with low-side synth injection (negative IF) on proprietary 2.4GHz PHYs when using EFR32xG22 and newer chips. This fix requires regenerating the PHY with the latest version of the Radio Configurator to work.
1058480 Fixed an RX FIFO corruption on EFR32xG25 that occurred when receiving/sending certain OFDM packets using FIFO mode.
1082274 Fixed an issue on the EFR32xG22, EFR32xG23, EFR32xG24, and EFR32xG25 chips that could cause the chip to lock up if the application attempts to re-enter EM2 within ~10 µs after wake-up and hits a <0.5 µs timing window. If hit, this lockup requires a power-on reset to restore normal operation to the chip.
1083615 Fixed an issue for certain ramp time and power level combinations on the EFR32xG21 where the PA ramp would stop one power level short of the desired output level.
1090336 Fixed an issue in the "RAIL Utility, Protocol" component where BLE would be required to select a Zigbee PHY.
1090512 Fixed an issue in the "RAIL Utility, PA" component where certain functions would attempt to use the RAIL_TX_POWER_MODE_2P4GIG_HIGHEST macro even though they didn't support it. This would result in undefined behavior previously, but will now correctly error.
1090728 Fixed a possible RAIL_ASSERT_FAILED_UNEXPECTED_STATE_RX_FIFO issue on EFR32xG12 with RAIL_IEEE802154_G_OPTION_GB868 enabled for a FEC-capable PHY which can happen when aborting a packet at frame detection, for instance by idling the radio.
1092769 Fixed an issue when using Dynamic Multiprotocol and BLE Coded PHYs where a transmit could underflow depending on what protocol was active when the PHY and syncword were loaded.
1096663 Fixed a compilation error in "RAIL Utility, Coexistence" component when the Coexistence WiFi TX GPIO is enabled.
1096665 Fixed a compilation issue in "RAIL Utility, Coexistence" component when the SL_RAIL_UTIL_COEX_WIFI_TX_PORT is defined.
1103966 Fixed an unexpected Rx packet abort on the EFR32xG25 when using the Wi-SUN OFDM option4 MCS0 PHY.
1104033 Fixed an issue in the RAIL_ZWAVE_ReceiveBeam function so that it idles the radio regardless of whether a beam is detected on the EFR32ZG23.
1104441 Fixed an issue with the "RAIL Utility, Coexistence" component counters for Zigbee that could prevent them from ticking as expected depending on how things are linked.
1105134 Fixed an issue when switching between certain PHYs that could cause the first received packet to be reported as RAIL_RX_PACKET_READY_CRC_ERROR instead of RAIL_RX_PACKET_READY_SUCCESS. This issue could potentially impact EFR32xG22 and newer chips.
1105529 Fixed an issue on EFR32xG22 and later platforms when using a Frame Type decoding PHY where a bad frame type packet was mis-reported as RAIL_RX_PACKET_ABORT_ABORTED instead of the proper RAIL_RX_PACKET_ABORT_FORMAT.
1109574 Fixed an issue on EFR32xG22 and newer chips where a radio sequencer assert could cause the application to hang in an ISR rather than report the assert via RAILCb_AssertFailed().
1118063 Fixed issue with recent RAIL_ZWAVE_OPTION_PROMISCUOUS_BEAM_MODE on EFR32xG13 and EFR32xG14 where the NodeId of the promiscuous beam was not properly recorded for RAIL_ZWAVE_GetBeamNodeId(), causing it to report 0xFF.
1126343 Fixed an issue on EFR32xG24 when using the IEEE 802.15.4 PHY where the radio could become stuck when doing an LBT transmit if a frame is received during the CCA check window.
1134223 Fixed an issue when using "RAIL Utility, Coexistence" component where the request line is left asserted after TX is aborted following a sync detect.
1135418 Fixed incorrect RAIL_RxPacketInfo_t::filterMask on received 802.15.4 Beacon frames, which now reflects which PanId and address the Beacon's Source PanId and Source Address match, if any. Note that RAIL generally accepts all Beacons so the filterMask can be 0x00.
1138522 Fixed an issue on the EFR32xG25 for SUN FSK PHYs where receiving a packet after calling RAIL_IEEE802154_Init() but before configuring RAIL_IEEE802154_ConfigGOptions could break reception.
1140569 Fixed a rare timing issue on EFR32xG24 where an ACK timeout might cause the next packet to be received as RAIL_RX_PACKET_READY_CRC_ERROR instead of RAIL_RX_PACKET_READY_SUCCESS.
1150779 Fixed the 15.4 channel configurations on the MGM240PA32 and MGM240PB32 modules to use the correct frequency for channel 26.

15.4 Known Issues in the Current Release

Issues in bold were added since the previous release.

ID # Description Workaround
641705 Using direct mode (or IQ) functionality on EFR32xG23 requires a specifically set radio configuration that is not yet supported by the radio configurator. For these requirements, reach out to technical support who could provide that configuration based on your specification.
732659 Infinite receive operations where the frame's fixed length is set to 0 are not working correctly on the EFR32xG23 series chips. On EFR32xG23:
  • Wi-SUN FSK mode 1a exhibits a PER floor with frequency offsets around ± 8 to 10 KHz
  • Wi-SUN FSK mode 1b exhibits a PER floor with frequency offsets around ± 18 to 20 KHz

15.5 Deprecated Items

None

15.6 Removed Items

None


File Info : application/pdf, 26 Pages, 884.67KB

PDF preview unavailable. Download the PDF instead.

gecko-platform-release-notes-4.3.1.0

References

Silicon Labs Adobe PDF Library 23.3.20

Related Documents

Preview Silicon Labs Gecko Platform 4.2.4.0 GA and Gecko SDK Suite 4.2 Release Notes
Release notes for Silicon Labs Gecko Platform version 4.2.4.0 GA and Gecko SDK Suite 4.2, detailing new features, improvements, and fixed issues across various components including CMSIS Device, Peripherals, Drivers, Services, CPC, Middleware, Security, Operating System, Gecko Bootloader, Machine Learning, Examples, Boards and External Devices, and RAIL Library.
Preview Silicon Labs Gecko Platform Release Notes - Version 5.1.3
Release notes for Silicon Labs Gecko Platform, detailing updates, improvements, and fixes for SDK version 5.1.3 and earlier versions. Covers modules like CMSIS Device, Peripherals, Drivers, Services, CPC, Common, Middleware, Security, Operating System, Gecko Bootloader, MVP Math Library, Examples, Boards and External Devices, Other Gecko Platform Components, and RAIL Library.
Preview Gecko Platform Release Notes v4.2.3.0
Comprehensive release notes for Silicon Labs Gecko Platform version 4.2.3.0 (SDK Suite 4.2), detailing new features, improvements, and bug fixes across all core components. Covers CMSIS Device, Peripherals, Drivers, Services, CPC, Common, Middleware, Security, Operating System, Gecko Bootloader, Machine Learning, Examples, Boards and External Devices, and the RAIL Library.
Preview Silicon Labs Bluetooth® LE SDK 7.3.0.0 GA and Gecko SDK Suite 4.4 Release Notes
Release notes for Silicon Labs' Bluetooth® LE SDK 7.3.0.0 GA and Gecko SDK Suite 4.4, detailing new features, improvements, fixed issues, known issues, deprecated, and removed items for developers.
Preview Silicon Labs 32-bit MCU SDK 6.4.7.0 GA Release Notes
Official release notes for Silicon Labs' 32-bit MCU SDK version 6.4.7.0 GA, part of Gecko SDK Suite 4.2. Details SDK versions, new features, compatibility, and support for EFM32 and EZR32 development kits.
Preview Silicon Labs Bluetooth LE SDK 5.0.0.0 GA Release Notes
Detailed release notes for Silicon Labs Bluetooth LE SDK version 5.0.0.0 GA, covering new features, improvements, fixed issues, known issues, and multiprotocol capabilities for the Gecko SDK Suite 4.2.
Preview Zigbee EmberZNet SDK 7.4.3.0 GA Release Notes
Release notes for Silicon Labs' Zigbee EmberZNet SDK version 7.4.3.0 GA, part of Gecko SDK Suite 4.4, detailing new features, improvements, fixed issues, and known issues.
Preview Silicon Labs Connect Stack: A Comprehensive Guide to Wireless Networking
Explore the Silicon Labs Connect stack, an IEEE 802.15.4 MAC-based wireless networking solution optimized for low-power devices. This guide covers development, fundamentals, bootloading, security, and more for proprietary wireless applications.