MCUXpresso SDK Documentation

Known issues#

This section lists the known issues, limitations, and/or workarounds.

FRO6M Clock Stability Issue#

According to ERRATA ERR052742, the FRO6M clock is not stable on some parts. FRO6M outputs lower frequency signal instead of 6MHz when device is reset or wakes up from low power. It can impact peripherals using it as a clock source.

Impact on TSTMR Module#

The TSTMR (Time Stamp Timer) module exclusively uses the FRO6M clock source. Due to the aforementioned stability issues, avoid using TSTMR-related APIs if your application requires high-precision timing.

Recommendation#

For applications requiring precise timing, consider using alternative timer modules that support more stable clock sources.

New project wizard compile failure#

The following components request the user to manually select other components that they depend upon in order to compile. These components depend on several other components and the New Project Wizard (NPW) is not able to decide which one is needed by the user.

Note: xxx means core variants, such as, cm0plus, cm33, cm4, cm33_nodsp.

Also for low-level adapter components, currently the different types of the same adapter cannot be selected at the same time. For example, if there are two types of timer adapters, gpt_adapter and pit_adapter, only one can be selected as timer adapter in one project at a time. Duplicate implementation of the function results in an error.

Only FreeRTOS is tested for RTOS support#

This release only supports the FreeRTOS kernel and a bare-metal non-preemptive task scheduler.

Bluetooth LE#

Most sensor applications have pairing and bonding disabled to allow a faster interaction with mobile applications. These two security features can be enabled in the app_preinclude.h header file.

Bluetooth LE controller:#

  • The maximum Advertising data length is limited to 800 bytes.

  • The scanner may sporadically miss some chained packets.

Periodic Advertising with Responses (PAwR):

  • Periodic Advertising with Response (PAwR) is not supported with the configuration “Subevent Interval = Number of Response Slots x Response Slot Spacing with Response Slot Spacing = 0x2”.

  • Periodic Advertising placement with connection events is unoptimized.

  • The feature is not functional with the Free-Running Oscillator (FRO32K); it requires a 32 KHz Crystal Oscillator with accuracy less than 50 ppm.

KW45/MCXW71: No specific issues.

KW47/MCXW72: Channel Sounding (CS): Limitations:

  • RTT with Sounding Sequence is not supported.

  • Maximum 6 Channel Sounding procedures are supported in parallel.

  • Scheduling of activities may be non optimal when multiple Channel Sounding procedures are running in parallel.

  • Phase measurement bias is within certification range (<1.7x2πns) with KW47 EVK board. However, if different PCB or antenna matching is used, some bias may appear due to increased delay. Known issues:

  • When CS Subevents are configured very close from each other (<700us), some Subevents may be aborted with reason 0x3.

  • When CS offset is configured too close from ACL anchor point, the anchor point may not be served (TX on central or RX on peripheral will not happen). Ideally, CS Offset should be configured greater than 1ms.

  • RTT bias compensation:

    • For parts not properly configured at production (IFR blank), RTT bias may not be compensated properly. Consequently, an inaccuracy of +/-2m may be observed.

LIN New Project Wizard (NPW) issue#

  • The lin (LIN Driver) and lin_stack (LIN Stack Driver) drivers components should not be enabled at the same time while creating the new projects in MCUXpresso. Otherwise there will be the compiling issue.

  • The lin_stack (LIN Stack Driver) is not actually a driver. It is an adapt layer for LIN Stack middleware to adapt to the low level lpuart driver and cannot be used in NPW alone. So, select the LIN Stack middleware and then the lin_stack is selected automatically since it is required by LIN Stack middleware. Besides, customer need to add the lin_cfg.c/h in application layer for user definition of frame data and add FSL_SDK_LIN_STACK_ENABLE=1 in MCUXpresso preprocessor, otherwise the compiling of LIN Stack will report error.

Flash ROMAPI#

Note that:

  • If using ROM API for internal flash or SPI NOR operation, reserve RAM location 0x200030A0 - 0x200032CF (0x300030A0 - 0x300032CF).

  • If using kb API, reserve 0x20002000 - 0x200032FF (0x30002000 - 0x300032FF).

Other limitations#

  • The following Connectivity Framework configurations are Experimental and not recommended for mass production:

    • Power down on application power domain.

  • GenFSK Connectivity_test application is not operational with Low Power enabled.

  • Serial manager is only supported on UART (not I2C nor SPI).

  • The --no-warn-rwx-segments cannot been recognized on legacy MCUXpresso IDE versions.

    The --no-warn-rwx-segments option in MCUXpresso projects should be manually removed from the project settings if someone needs to use legacy (< 11.8.0) MCUXpresso IDE versions

  • If the FRO32K is configured as the clock source of the CM33 Core then the debug session will block in both IAR, MCUX CMSIS-DAP while debugging. Use a lower debug wire speed, for example 1 MHz instead of the default one.

    In IAR, the option is in Runtime Checking -> Debugger -> CMSIS DAP -> Interface -> Interface speed.

    In MCUXpresso IDE, the option is in LinkServer Debugger -> Advanced Settings -> Wirespeed (Hz).

Examples hello_world_ns, secure_faults_ns, and secure_faults_trdc_ns have incorrect library path in GUI projects#

When the affected examples are generated as GUI projects, the library linking the secure and non-secure worlds has an incorrect path set. This causes linking errors during project compilation.

Examples: hello_world_ns, hello_world_s, secure_faults_ns, secure_faults_s, secure_faults_trdc_ns, secure_faults_trdc_s

Affected toolchains: mdk, iar

Workaround: In the IDE project settings for the non-secure (_ns) project, find the linked library (named hello_world_s_CMSE_lib.o, or similar, depending on the example project) and replace the path to the library with <build_directory>/<secure_world_project_folder>/<IDE>/, replacing the subdirectory names with the build directory, the secure world project name, and IDE name.

The freertos_lpuart example does not complete successfully#

The example hangs after console output ‘FreeRTOS LPUART driver example’.

Examples: freertos_lpuart

Affected toolchains: All

The example does not perform as expected (Ticks do not printed on the console or the application does not wake up from the sleep mode).

Examples: freertos_tickless

Affected toolchains: All

Implementation Status of el2go Examples#

El2go examples have been implemented but have not been verified on specified platforms. The only verification performed so far is through automation, where we check whether the application boots successfully. However, no el2go-specific verification has been conducted to confirm functionality beyond the boot process.

Examples: el2go_blob_test, el2go_import_blob

Affected toolchains: All