Hello,
I've been working with the NXP S32K148 microcontroller using the MCAL configuration and have encountered an issue where the MCU fails to wake up from Stop1 mode using Pretend Networking with CAN. Here are the details of my configuration:
The microcontroller is set to enter Stop1 mode when no CAN messages are received within a specified timeout period. It should wake up upon receiving a CAN message.
Here’s what I’ve done so far:
The microcontroller is configured to enter Stop1 mode when no CAN messages are received within a specified timeout period. It should wake up upon receiving a CAN message.
I enabled the pretended networking option in the CAN general settings as shown in the figure below.
I set up the ECUM driver to recognize the wakeup source.
In the CAN configuration set, under canController, I selected the wakeup source for FlexCAN0.
I set up the CAN ICOM to filter messages by ID.
Additional Configuration Screens:
I configured the CAN settings and selected the appropriate clock sources, as shown in the figures below.
In my code, before entering Stop1 mode, I deactivated all unnecessary drivers and activated the CAN wakeup interrupt using:
Platform_SetIrq(CAN0_Wake_Up_IRQn, TRUE);
Then, I called the following functions:
Can_SetIcomConfiguration(0, 1); // Activates PNET and enters freeze mode
Mcu_SetMode(McuModeSettingConf_SleepModeClock); // Enters Stop1 mode
The problem is that the microcontroller does not wake up when I send CAN messages. However, if my debugger is connected, it wakes up correctly. I tried unchecking the "CAN clock from bus CTRL[CLK_SRC]" option, but it didn’t make any difference.
Do you have any suggestions on how to resolve this issue?
Thank you for your assistance!
Hi @amZ1,
I noticed you also entered a support ticket. I have responded through your support case.
I can also recommend following this example for FlexCAN0 Pretend Network for the S32K144 derivative: Example S32K144 FlexCAN Pretended Networking STOP mode test S32DS.ARM.2.2 - NXP Community.
Best regards,
Julián
Hello,
I just want to bring this topic up again to get a response. I still haven't received a reply from you. Thank you in advance.