Change CAN ID Mapping on the Fly
Posted: Tue 8. Sep 2015, 16:18
Hey,
we are currently developing a tester and our ECU changes the addressing when switching to the ECUProgrammingSession.
The ECU jumps to the bootloader when switching to the programming session and the bootloader uses different addressing information.
Here some example trace:
The ECU responses with response pending on the first address (0x4F1), jumps to the bootloader and then returns a positive repsonse to a different address (0x400).
Is it possible to changes the CAN ID mappings in the middle of this request <-> response pair?
I tried to realize it with waitForSingleMessage() etc. to wait for the response pending, change the mapping and waitForService() (with adjusted request), but with no luck.
Do you have any hints or samples to solve this problem and how to correctly use the waitFor... functions.
Thanks,
Tobias
we are currently developing a tester and our ECU changes the addressing when switching to the ECUProgrammingSession.
The ECU jumps to the bootloader when switching to the programming session and the bootloader uses different addressing information.
Here some example trace:
Code: Select all
; Message Number
; | Time Offset (ms)
; | | Type
; | | | ID (hex)
; | | | | Data Length Code
; | | | | | Data Bytes (hex) ...
; | | | | | |
;---+-- ----+---- --+-- ----+--- + -+ -- -- -- -- -- -- --
1) 8970.6 Rx 02F1 8 02 10 02 00 00 00 00 00
2) 8996.0 Rx 04F1 8 03 7F 10 78 FF FF FF FF
3) 9040.5 Rx 0400 8 06 50 02 48 53 05 52 FF
Is it possible to changes the CAN ID mappings in the middle of this request <-> response pair?
I tried to realize it with waitForSingleMessage() etc. to wait for the response pending, change the mapping and waitForService() (with adjusted request), but with no luck.
Do you have any hints or samples to solve this problem and how to correctly use the waitFor... functions.
Thanks,
Tobias