Hello,
During UDS communication I sometime get an error TPUDSStatus PUDS_ERROR_CAN_ERROR (0x80000000) (return value of WaitForService).
According to the documentation the CAN Basic error code should be ORed with the TPUDSStatus, but all I get is 0x80000000 (no other flags set).
Is the root cause for the PUDS_ERROR_CAN_ERROR available somewhere ?
Root cause PUDS_ERROR_CAN_ERROR
-
- Software Development
- Posts: 305
- Joined: Mon 9. Sep 2013, 12:21
Re: Root cause PUDS_ERROR_CAN_ERROR
Hello,
UDS_WaitForServiceFunctional and UDS_WaitForService functions return PUDS_ERROR_CAN_ERROR when a network error occured.
Originally the functions returned Ok, but users tend to forget to check the value of the member RESULT of their retrieved UDS message.
As a result, when this error occur please check MessageRspBuffer->RESULT or MessageReqBuffer->RESULT: you should see an ISO-TP network error (timeout may have occured during the communication).
UDS_WaitForServiceFunctional and UDS_WaitForService functions return PUDS_ERROR_CAN_ERROR when a network error occured.
Originally the functions returned Ok, but users tend to forget to check the value of the member RESULT of their retrieved UDS message.
As a result, when this error occur please check MessageRspBuffer->RESULT or MessageReqBuffer->RESULT: you should see an ISO-TP network error (timeout may have occured during the communication).
Best regards,
Fabrice
Fabrice
Re: Root cause PUDS_ERROR_CAN_ERROR
Hello Fabrice,
indeed, I was checking for the return value as well as UDS response, but not for the RESULT field.
indeed, I was checking for the return value as well as UDS response, but not for the RESULT field.