Hi,
could you please specify documents and code/driver version you are referring to?
BR, Petr
Hello Petr,
Thank you for the reply.
First picture is a description of the test.
Second picture is from LIN 2.1 Standard
Third picture is from lin_common_proto.c, version S32SDK_S32K1XX_RTM_4.0.2
BR, Gabr
Hi,
this is a feedback I got from SDK team...
Following the LIN 2.1 Standard specification, the Error_in_response bit shall not be set in case master no response.
Anyway, I have checked the issue on my side based on your information. However, it seems I cannot reproduce your issue. The Error_in_response was not set after master sent header only.
We only have LIN_LLD_NODATA_TIMEOUT when slave node has received the header and at least one byte of data.
From my point of view, maybe we have other error on the bus(LIN_LLD_FRAME_ERR, LIN_LLD_READBACK_ERR…) not NODATA_TIMEOUT. You can set a break point on the lin_handle_error() function to know the exact error on the bus.
So please recheck the test case on your side and make sure that master node has sent header successfully and no response after that.
If the issue is still not resolved, please let me know how I can reproduce it (send me your test case if possible).
BR, Petr
Hello Petr,
Thank you again for the reply, good to see that for you it's working.
Here is the actual test:
The test was done by a 3rd party company and I can not reproduce it on my system because I can't manage to send only the header using CANoe in order to debug it.
BR, Gabr
Hi,
see feedback I got for this...
Following you information, I would like to share with you my example and CANoe script that I have used to test(Attachments).
These are the frames on the bus that I have tried to test:
BR, Petr
Hello Petr,
Thanks alot for the feedback.
Unfortunately for the test case 11.3 the Response Error bit is set 523 from 760 attempts:
And in addition to that with these settings:
we see sporadic missing responses for the below tests:
[11.1] Send only the break field
[11.2] Send only BREAK and SYNC
[11.3] Send just the header of the Device Specific Receive Frame
Any idea where the problems could be?
BR, Gabr.
Hi,
please see below a feedback I got...
BR, Petr
According to your information, I tried to reproduce the issue (PT CT-11.3) with more than 1000 tries from my side. However, it seems impossible, you can see my report to more detail(Attachment).
Regarding the customer's problem, from my point of view the cause could be due to timing and interrupt handling.
So, please recheck the test case to make sure that:
In case the problem is still not resolved. If possible, please share with me some information:
Hello Petr,
I see in your test that after you send only the header you wait 100ms and then check for the status:
But in the ISO 17987-6 standard it's saying that the wait should be frame max. time. and that is 9ms (8 byte frame the delay of T_Frame_Max = 173 Bit = 9 ms at 19200 Baud.)
On our side it's working also with more than 20ms, but that's not correct.
BR, Gabr.
PetrS did you have the chance to check this internally?
BR, Gabr.
PetrS did you have the chance to check this internally?
BR, Gabr.
Hi @gabr,
I am again with this topic. Please see the atached zip with the following info:canoe_test where I modified the .can file for our project and for my tests I also added our LDFcommErr.png is the responce_error bitevent_id.png is the event id from lin_handle_error() when the error_in_response bit is setreport_10ms_wait is the report for when the timeout (see timeout.png) for the " testStep("Execution", "CANoe send a header of frame without response");" test is 10 msreport_20ms_wait is the report for when the timeout (see timeout.png) for the " testStep("Execution", "CANoe send a header of frame without response");" test is 20 msAs you can see from the reports, all tests are passed when the timeout is 20ms, but with 10ms the test fails everytime. Do you have any idea what should I check, what could be wrong?Our colleagues together with NXP collegues are working on an NDA now and I will be able to also share the full ldf and project details.
[Diep] From my point of view, the cause of the problem could be that the lin_lld_timeout_service() function was called incorrectly.CANoe sends a header of frame without response and then the header of next frame is sent after 10ms, the frame timeout is always occurred. The frame without response will be ignored and the error_in_response bit is not set.This is my example:![]()
Channel_0: LIN signalsChannel_1: It is the time when lin_lld_timeout_service() function was called(each 500us)The time between the header of frame without response and the header of next frame is 10ms. The frame timeout has occurred during this time.
Best regards,
Dan