S32K148 Fails to Wake Up from Stop1 Mode Using Pretend Networking with CAN

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

S32K148 Fails to Wake Up from Stop1 Mode Using Pretend Networking with CAN

306 Views
amZ1
Contributor II

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.

  • Activated Pretended Networking:

I enabled the pretended networking option in the CAN general settings as shown in the figure below.

amZ1_0-1716801169543.png

  • Configured ECUM Driver for Wakeup Source:

I set up the ECUM driver to recognize the wakeup source.

amZ1_1-1716801217153.png

amZ1_2-1716801233199.png

  • Selected Wakeup Source in FlexCAN0:

In the CAN configuration set, under canController, I selected the wakeup source for FlexCAN0.

amZ1_3-1716801306222.png

  • Configured CAN ICOM to Filter by ID:

I set up the CAN ICOM to filter messages by ID.

amZ1_4-1716801396419.png

Additional Configuration Screens:

amZ1_5-1716801449090.pngamZ1_6-1716801533870.png

 

amZ1_7-1716801568615.png

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!

0 Kudos
2 Replies

137 Views
Julián_AragónM
NXP TechSupport
NXP TechSupport

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 

0 Kudos

172 Views
amZ1
Contributor II

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.

0 Kudos