What are the uses OR advantages of Normal, Extended and Mixed CAN addressed mechanism?
Where or why it is using?
Source Adress / Target Adress
Re: Source Adress / Target Adress
Last edited by Rijo Jose on Fri 8. Oct 2021, 13:52, edited 1 time in total.
Re: Source Adress / Target Adress
Hello,
please note that only API usage is covered in the support given by PEAK. It does not cover help on understanding the specifications. Please refer to the ISO-norm documentation for this, for instance ISO/DIS 14229-2.
Thanks for your understanding
please note that only API usage is covered in the support given by PEAK. It does not cover help on understanding the specifications. Please refer to the ISO-norm documentation for this, for instance ISO/DIS 14229-2.
Thanks for your understanding
Best regards,
Keneth
Keneth
Re: Source Adress / Target Adress
Hi All,
Thanks for your support.
I am working in a driverless car project.
When i checked Functional message method examples, those contain Functinal Req ID as 0x7DF and Functional response id as 0x7E8.
But OEM want to change Functinal Req ID as 0x5FF , my question is what will be Functional response id ?.
Can we use Functional response id as corresponding ECU CAN response id?
For example we have CAN response id as
0X588
0X589
0X58A
0X58B
Thanks for your support.
I am working in a driverless car project.
When i checked Functional message method examples, those contain Functinal Req ID as 0x7DF and Functional response id as 0x7E8.
But OEM want to change Functinal Req ID as 0x5FF , my question is what will be Functional response id ?.
Can we use Functional response id as corresponding ECU CAN response id?
For example we have CAN response id as
0X588
0X589
0X58A
0X58B
Re: Source Adress / Target Adress
Hello,
the API is so configured, that the standard values described by the ISO-norm are used, for instance, the CAN Ids for functional requests and physical requests/responses. In custom scenarios, like your, you will need to configure so called mapping addresses to match your requirements.
Please check the chapter 4.3 "UDS and ISO-TP Network Addressing Information" within the API documentation. There you will see a list of all CAN IDs used i.e. the list of mappings the API already configure at initialization time. The chapter 4.3.1 gives you information about using the API in non-standardized contexts.
the API is so configured, that the standard values described by the ISO-norm are used, for instance, the CAN Ids for functional requests and physical requests/responses. In custom scenarios, like your, you will need to configure so called mapping addresses to match your requirements.
Please check the chapter 4.3 "UDS and ISO-TP Network Addressing Information" within the API documentation. There you will see a list of all CAN IDs used i.e. the list of mappings the API already configure at initialization time. The chapter 4.3.1 gives you information about using the API in non-standardized contexts.
Best regards,
Keneth
Keneth
Re: Source Adress / Target Adress
Hi F.Vergnaud !
I'm fairly new to CAN buses and UDS protocol. You mentioned that the standard address for TesterClient is 0xF1. Which standard is proposing this value? I was looking at UDS standard 14229-1 but I didn't find any mention about reserved or proposed source addresses for CAN network nodes. I'm guessing they might be declared at some lower level standard but could you kindly point to right direction?
Thank you in advance,
Miikka
I'm fairly new to CAN buses and UDS protocol. You mentioned that the standard address for TesterClient is 0xF1. Which standard is proposing this value? I was looking at UDS standard 14229-1 but I didn't find any mention about reserved or proposed source addresses for CAN network nodes. I'm guessing they might be declared at some lower level standard but could you kindly point to right direction?
Thank you in advance,
Miikka
F.Vergnaud wrote: ↑Tue 5. Apr 2016, 17:45Hello Daniel,
When you communicate with an ECU using the UDS protocol, your application is usually what is called the "TesterClient", the standard address value associated to it is 0xF1.
On the other hand, the ECU's address is defined during its design.. For instance with OBD-II (a protocol above UDS), the standard states that there can be only 8 ECUs and there address is a range from 0x01 to 0x08.
You should check the specifications of your ECU to see how it is communicating via ISO-TP (address and addressing format).
The address is important because if a message is sent on the CAN bus, the ECU will/should check that the target address of the message matches its defined address (if not the message is ignored).
Yet based on how is designed the ECU, this can be completely ignored: may be the specifications of your ECU may only state that it listens to a specific CAN ID and responds with another CAN ID. In that case you have to configure your mappings with some dummy values:
First you have to check what ISO-TP addressing format the ECU is using. If it is:With NORMAL addressing, you can define 2 mappings (one from Client to physically address ECU and another from ECU to physically address Client):
- * NORMAL FIXED or MIXED addressing then it is problematic because (with 29bit CAN IDs) the CAN ID is dynamically generated from the source address (TesterClient) and the target address (ECU),
* Extended addressing is also a problem because the Target address is set in the first byte of the CAN data frame so it should be required too,
* NORMAL addressing should be the only addressing available in your case..
- can ID type is 29 bits
- canID is the CAN ID the ECU listens to (ex. 0xABC001)
- canIDResponse is the CAN ID the ECU responds with (ex. 0xABC002)
- format is NORMAL
- message type is diagnostic message
- source address is 0xF1 (client)
- target address is 0x01 (ECU)
- target type is physical addressing
- remote address is not used and is 0x00
the second mapping is almost the same you anly have to swap source and target address and canId/canIdresponse:
- canID is the CAN ID the ECU responds with (ex. 0xABC002)
- canIDResponse is CAN ID the ECU listens to (ex. 0xABC001)
- format is NORMAL
- message type is diagnostic message
- source address is 0x01 (ECU)
- target address is 0xF1 (CLIENT)
Let me know if this helps you.
-
- Software Development
- Posts: 305
- Joined: Mon 9. Sep 2013, 12:21
Re: Source Adress / Target Adress
Hello Jauris,
This is mentioned in ISO-15765-4 also known as ISOTP Diagnostic On CAN (DoCan).
This is mentioned in ISO-15765-4 also known as ISOTP Diagnostic On CAN (DoCan).
Best regards,
Fabrice
Fabrice
Re: Source Adress / Target Adress
Thank you very much for the quick reply !! 
