S32K1 lin stack diagnostic services

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

S32K1 lin stack diagnostic services

1,111 Views
Francesco_Solito
Contributor II

Good morning

I have a similar issue. The example shared above (with ld_receive_message, diag_get_flag, diag_clear_flag and ld_send_message) seems to work, but sometimes it fails (I get the diag_get_flag, but then the req_data buffer is full of 0s) and sometimes it "crashes" into DefaultISR. I don't understand if there is a better way to manage the diagnostic services, different from polling.

Is it possible to have a more complex example, where more than one UDS is used? For instance the UDS 0x10 (session), 0x34 (download), 0x36 (transfer data) and so on. How to manage more than one UDS? How to manage negative responses for UDS servicese? (in particular how to manage the 0x78 (response pending) negative response? probably negative responses must be "prepared" before sending ld_send_message?).

Could you please provide a feedback as soon as possible? It's very urgent in our development.

Is it possible to be contacted by phone (or through Meet or similar platforms) in order to discuss the topic in detail?

Thank you in advance and kind regards,

Francesco Solito

0 Kudos
Reply
4 Replies

1,082 Views
PetrS
NXP TechSupport
NXP TechSupport

Hi,

could you please specify which example are you referring to?
What is the device you have, S32DS and driver version (SDK, RTD,...)?

BR, Petr

0 Kudos
Reply

1,073 Views
Francesco_Solito
Contributor II

Hello

I'm referring to the example mentioned in this topic:

https://community.nxp.com/t5/S32K/S32K116-LIN-Diagnostic-Example/m-p/1196377

Anyway I'm asking for general indications about diagnostic services and for a more complex example, where many diagnostic services are used.

I'm using a S32K118 device, I'm developing on S32DS for ARM with SDK RTM 4.0.1.

Thank you and kind regards,

Francesco Solito

0 Kudos
Reply

1,052 Views
PetrS
NXP TechSupport
NXP TechSupport

Hi,

the thread you pointed to is about LIN driver only, do not deal with the stack.
Attached is some project we got from Apps team, hope could be useful, if not the one you mentioned.
But I do not have anything else.

BR, Petr

0 Kudos
Reply

1,020 Views
Francesco_Solito
Contributor II

Thank you for your reply, but the example you shared is similar to the one in the post I mentioned; it is very simple. If you put more than one UDS you will find many troubles in your example. Anyway I solved in a different way. In particular I don't force variable lenght at each cycle, but only after a diagnostic frame was received (otherwise length is overwritten and you loose the lenght of the incoming diagnostic frame).

Kind regards,

Francesco 

0 Kudos
Reply