I have noticed UDS API only supports CAN ID over 0x7E0 for tester ID and 0x7e8 for ECU. I am doing some simulation, once I changed to the Tester ID 7B3 and 7BB for ECU. there is no more commination for TP(22 01 01 -> 62 01 01 FF FF FF FF FF AA AA AA BB BB BB CC...) same with 7Dx etc..
Is there any restriction for ID selection for lower address?
UDS Tester ID below 0x7E0 prblem
Re: UDS Tester ID below 0x7E0 prblem
Hello,
if you are talking about the defines within the header files, please note that these are the values corresponding to the UDS norm, i.e. they are the standard values for tester and ECUs used by UDS. Those address mapping are automatically registered by the API at initialization time. You may use custom ones, but for this you have to register your own mappings.
Check the chapter "4.3 UDS and ISO-TP Network Addressing Information" within the PCAN-UDS documentation to see which mappings are already registered. Check the chapter "3.7.11 AddMapping_2013" to see how to register additional CAN IDs. You will find in there also sample code.
if you are talking about the defines within the header files, please note that these are the values corresponding to the UDS norm, i.e. they are the standard values for tester and ECUs used by UDS. Those address mapping are automatically registered by the API at initialization time. You may use custom ones, but for this you have to register your own mappings.
Check the chapter "4.3 UDS and ISO-TP Network Addressing Information" within the PCAN-UDS documentation to see which mappings are already registered. Check the chapter "3.7.11 AddMapping_2013" to see how to register additional CAN IDs. You will find in there also sample code.
Best regards,
Keneth
Keneth
Re: UDS Tester ID below 0x7E0 prblem
Hello,
I am using two sets of CAN FD ids. 7b3(Tester) / 7bb(ECU) and 7e0(Tester) / 7e8(ECU) with threading
I found if I set mapping for 7e0 as below. actual CAN sending ID is changed into 7e1. If I use ECU_3 then it goes 7e2. is there any way to avoid this situation? I guess there is something preset in API for standard UDS IDs. however most of car OEM does not follow exact CAN ID rules...
"source_mapping.nai.target_addr = PUDS_ISO_15765_4_ADDR_ECU_2"
and one more thing, Is there any way to increase UDS communication speed with UDS API? in PCAN view FD, I can see very high speed of TP communication(10...21...22...23...24...) almost 1ms. but If I use UDS API it goes 10ms speed...
I am using two sets of CAN FD ids. 7b3(Tester) / 7bb(ECU) and 7e0(Tester) / 7e8(ECU) with threading
I found if I set mapping for 7e0 as below. actual CAN sending ID is changed into 7e1. If I use ECU_3 then it goes 7e2. is there any way to avoid this situation? I guess there is something preset in API for standard UDS IDs. however most of car OEM does not follow exact CAN ID rules...
"source_mapping.nai.target_addr = PUDS_ISO_15765_4_ADDR_ECU_2"
and one more thing, Is there any way to increase UDS communication speed with UDS API? in PCAN view FD, I can see very high speed of TP communication(10...21...22...23...24...) almost 1ms. but If I use UDS API it goes 10ms speed...
Re: UDS Tester ID below 0x7E0 prblem
Hello,
Regarding your comment: "I guess there is something preset in API for standard UDS IDs"
Well, you don't have to guess if you read. I already told you this:
Thank you for your understanding.
Regarding your comment: "I guess there is something preset in API for standard UDS IDs"
Well, you don't have to guess if you read. I already told you this:
As I wrote in my last post:
You will see there, that there are already mappings for those ECUs, for instance, ECU 3:
Yes, this case is called "non-standardized context". This is just the next chapter after the one showing you the standard address mappings, "4.3.1 Usage in a Non-Standardized Context". You will see there this information:
This is also a definition within the transport protocol used by UDS. This is called STmin (minimum separation time). This is specified to be per default 10ms. You may change this value by using the parameter PUDS_PARAMETER_SEPARATION_TIME: We always encourage our customers to acquire and understand the norms they want to use. Please understand, that teaching them or giving support on those is not part of the scope of support that we offer for our libraries (already told you in another oportunity). Further question relying on base knowledge of ISO-TP or UDS will not be answered.
Thank you for your understanding.
Best regards,
Keneth
Keneth
Re: UDS Tester ID below 0x7E0 prblem
Thanks for your feedback.
I am using Python and struggling to remove the mapping for CAN IDand set PUDS_PARAMETER_SEPARATION_TIME with python... even I cant' find how to set PUDS_PARAMETER_SEPARATION_TIME ... can you elaborate your comment a bit more?
I am using Python and struggling to remove the mapping for CAN IDand set PUDS_PARAMETER_SEPARATION_TIME with python... even I cant' find how to set PUDS_PARAMETER_SEPARATION_TIME ... can you elaborate your comment a bit more?
Re: UDS Tester ID below 0x7E0 prblem
Hello,
Why? you have two functions that you can use for removing address mappings: UDS_RemoveMapping_2013, and UDS_RemoveMappingByCanId_2013. The last one tells you in its name already just that what you want to do.
Parameters can be read and set with the UDS_GetValue_2013 and UDS_SetValue_2013 functions. Even the sample code by UDS_ReadValue_2013 handles that parameter:
We do offer python samples, but because the programming language is not part of the support for the library, we cannot help on problems mainly related to this or any other programming language.
Best regards,
Keneth
Keneth