LLCE CAN Controller can not be working in LLCE_CAN_STARTED but is always in LLCE_CAN_START_PENDING

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

LLCE CAN Controller can not be working in LLCE_CAN_STARTED but is always in LLCE_CAN_START_PENDING

Jump to solution
237 Views
Bruce_Huang
Contributor I

I am integrating LLCE  1.0.8 on s32g274a device with SW32G_RTD_4.4_4.0.2_P03,but have encountered a problem:after firmware was loaded and started successfully, then Can_43_LLCE_Init was  running ok and the state Can_43_LLCE_eDriverStatus  came to be CAN_43_LLCE_READY,  when Can_43_LLCE_SetControllerMode was called with parameter CAN_CS_STARTED, the firmware executed the cmd LLCE_CAN_CMD_GETCONTROLLERMODE successfully, then Can_Llce_GetControllerMode was called and firmware returned LLCE_FW_SUCCESS, but the returned controller state was always LLCE_CAN_START_PENDING,  I'm not sure what was wrong, so I want to get some useful solutions

0 Kudos
1 Solution
159 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

Thanks for your feedback. As for the questions:

it's required that the llce can controller have to be connected to the can tranceiver which was be enabled correctly in order to get the CAN bus voltage levels,  is that right ?

That is correct. This is a HW requirement by the CAN standard itself, the following is shown under the Integration Manual for LLCE-CAN:

"The CAN physical interface should be connected to the CAN-LLCE module pins in order to get the CAN bus voltage levels.

There has to be at least another CAN node present on the CAN bus in order to get the CAN bus synchronized."

Please, let us know.

View solution in original post

0 Kudos
3 Replies
179 Views
Bruce_Huang
Contributor I

Thanks,

I'm using a custom board and our custom application, but configures the llce can by referring to the llce_sample_app_af examples, now I have resolved this problem, it was caused by the can timeout parameters: (Can Timeout Method) and (Can Timeout Duration);

On our custom board, the llce_can0 and llce_can2 hardware channel doesn't work without can transceiver attached, but llce_can1 and llce_can3 is working normally with TJA1403 being enabled correctly;

In our costom application, (Can Timeout Method) and (Can Timeout Duration)  was set with OSIF_COUNTER_DUMMY and 65,during firstly enabling llce_can0 ,application was always looping with calling Can_Llce_MainFunctionMode,

but after (Can Timeout Method) and (Can Timeout Duration)  was set with OSIF_COUNTER_DUMMY and 0.1, enabling llce_can0 to llce_can3  was normal, and only llce_can1 and llce_can3 were started successfully.

Referring to  5.3 Peripheral Hardware Requirements  of the Integration Manual, it's required that the llce can controller have to be connected to the can tranceiver which was be enabled correctly in order to get the CAN bus voltage levels,  is that right ?

0 Kudos
160 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

Thanks for your feedback. As for the questions:

it's required that the llce can controller have to be connected to the can tranceiver which was be enabled correctly in order to get the CAN bus voltage levels,  is that right ?

That is correct. This is a HW requirement by the CAN standard itself, the following is shown under the Integration Manual for LLCE-CAN:

"The CAN physical interface should be connected to the CAN-LLCE module pins in order to get the CAN bus voltage levels.

There has to be at least another CAN node present on the CAN bus in order to get the CAN bus synchronized."

Please, let us know.

0 Kudos
194 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

Is this a custom board? Or is this with an NXP reference board?

Also, are you using any NXP examples? Or is this a custom application? We are not able to see the behavior you are describing.

Can you share images of the behavior you are seeing?

Please, let us know.

0 Kudos