Hi NXP Team,
I am working with the FRDM-A-S32K344 development board based on the S32K344 MCU.
I would like to evaluate and integrate SafeRTOS for this platform. I have the following questions:
Currently, I am using FRDM-A-S32K344 and S32 Design Studio.
Any guidance regarding the supported SafeRTOS package, licensing, example projects, or integration procedure would be highly appreciated.
Thanks and regards.
Hello,
1. Does NXP provide an officially supported SafeRTOS package or BSP/port for the FRDM-A-S32K344 / S32K344?
NXP does not develop or distribute the SafeRTOS package directly. SafeRTOS is a proprietary, safety-certified RTOS owned and licensed exclusively by WITTENSTEIN high integrity systems Ltd. (WHIS).
2. Is there any SafeRTOS example or demo project available for S32K344?
FreeRTOS examples such as:
FreeRTOS_Toggle_Led_Example_S32K344
Additional FreeRTOS-based reference applications for S32K3 platforms
These are included in the S32K3 FreeRTOS package.
3. If NXP does not provide the SafeRTOS package directly, is there any recommended approach or partner from whom the SafeRTOS package can be obtained?
SafeRTOS is developed and licensed by WITTENSTEIN high integrity systems (WHIS), not by NXP. According to WHIS documentation:
4. Which SafeRTOS Cortex-M7 port layer and compiler configuration are recommended for the S32K344?
Since SafeRTOS is delivered by WHIS as a processor/compiler-specific package, the exact port depends on your selected toolchain.
The S32K344 uses an Arm Cortex-M7 core. WHIS states that SAFERTOS is delivered tailored to a specific processor/compiler combination rather than as a generic source package.
If you are using S32 Design Studio, you would typically discuss with WHIS which compiler variant you intend to use, for example:
GCC (S32DS default)
Green Hills
IAR
WHIS can then provide the appropriate certified port.
The S32K344 features a lockstep Arm® Cortex®-M7 core. Based on the available demo package and community guidance, the recommended configuration is:
|
Parameter |
Recommended Value |
|---|---|
|
SafeRTOS port layer |
ARMv7M_MPU (Cortex-M7 with MPU support) |
|
Compiler |
ARM GCC 11.4 (NXP Embedded GCC for Arm v7) |
|
Package identifier |
009-006-252-003-246-002 WEB - ARMv7M_MPU GCC S32K344 |
The ARMv7M_MPU port is the correct choice because it leverages the Cortex-M7's Memory Protection Unit (MPU) — a mandatory requirement for SafeRTOS's memory isolation and ISO 26262 / ASIL compliance guarantees.
5. Are there any reference projects, application notes, or integration guidelines available for integrating SafeRTOS with S32 Design Studio?
The SafeRTOS_S32K344_Demo_Web readme (provided by WHIS inside the demo package) specifies the following verified toolchain:
|
Component |
Version |
|---|---|
|
S32 Design Studio IDE |
v3.6.4 |
|
ARM GCC Compiler |
11.4 |
|
S32K3 Real-Time Drivers (RTD) |
6.0.0 |
Step-by-Step S32DS Setup:
Open S32DS and go to Help → S32 Extensions and Updates. Install the latest versions of:
GNU ARM PEmicro Interface Debugging Support
GDB Client for Arm Embedded Processors
S32 Design Studio Platform package
S32K3xx development package
Download S32K3 Real-Time Drivers (RTD) 6.0.0 from nxp.com:
Run the .exe installer
Add the remaining .zip update-site files via Help → S32 Extensions and Updates → Add sites
Import the SafeRTOS S32K344 demo project provided by WHIS into S32DS.
Install the WHIS Eclipse STATEVIEWER Plug-in — this is required for the demo to function correctly. The installation guide is included in the WHIS package as:
34-185-AN-001-i3.0-Installing and Using the Eclipse STATEVIEWER Plug-in.pdf
STATEVIEWER provides real-time task state visualization within the Eclipse/S32DS IDE for SafeRTOS debugging.
Best regards,
Peter