linux-can.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* AW: Problem receiving > 8 byte UDS response when using istpsend
       [not found] <FR2P281MB165556E4F729AC3CDB50F6F69F0A9@FR2P281MB1655.DEUP281.PROD.OUTLOOK.COM>
@ 2022-11-21 12:08 ` Marvin Ludersdorfer
  2022-11-21 16:11   ` Andre Naujoks
  0 siblings, 1 reply; 5+ messages in thread
From: Marvin Ludersdorfer @ 2022-11-21 12:08 UTC (permalink / raw)
  To: linux-can

Hi,

I'm experiencing problems when trying to read out ECU parameters using istpsend when the response exceeds 8 bytes:

In one terminal, I run isotpdump -s 00000680 -d 00000780 -c -ta can0

In another terminal, I run echo 22 F1 95 | isotpsend -s 00000680 -d 00000780 can0 -p 0x00

In the first terminal, I receive only the FF, but no FC frame is sent (expected is a 11-byte response).

If I turn around the communication direction and run isotpsend -s 00000680 -d 0000780 can0 -D 255, the target ECU answers correctly by sending the expected FC frame.


I would expect that isotpsend takes care of sending the FC frame in the first example as well to receive the full response - am I doing something wrong?

Any help would be highly appreciated!

Best regards,

Marvin Ludersdorfer


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Problem receiving > 8 byte UDS response when using istpsend
  2022-11-21 12:08 ` AW: Problem receiving > 8 byte UDS response when using istpsend Marvin Ludersdorfer
@ 2022-11-21 16:11   ` Andre Naujoks
  2022-11-21 16:45     ` Patrick Menschel
  0 siblings, 1 reply; 5+ messages in thread
From: Andre Naujoks @ 2022-11-21 16:11 UTC (permalink / raw)
  To: Marvin Ludersdorfer, linux-can

Am 21.11.22 um 13:08 schrieb Marvin Ludersdorfer:
> Hi,
> 
> I'm experiencing problems when trying to read out ECU parameters using istpsend when the response exceeds 8 bytes:
> 
> In one terminal, I run isotpdump -s 00000680 -d 00000780 -c -ta can0

Use isotprecv instead of isotpdump. isotpsend just sends the 3 bytes, 
you pass to it and then is done.

The FC should then be sent by the socket, which is opened by isotprecv.

E.g.
terminal 1: isotprecv -s 00000680 -d 00000780 vcan0  <anything else>
terminal 2: echo 22 f1 95 | isotpsend -s 00000680 -d 00000780 vcan0 
<anything else>

... your milage may vary though.

Regards
   Andre

> 
> In another terminal, I run echo 22 F1 95 | isotpsend -s 00000680 -d 00000780 can0 -p 0x00
> 
> In the first terminal, I receive only the FF, but no FC frame is sent (expected is a 11-byte response).
> 
> If I turn around the communication direction and run isotpsend -s 00000680 -d 0000780 can0 -D 255, the target ECU answers correctly by sending the expected FC frame.
> 
> 
> I would expect that isotpsend takes care of sending the FC frame in the first example as well to receive the full response - am I doing something wrong?
> 
> Any help would be highly appreciated!
> 
> Best regards,
> 
> Marvin Ludersdorfer
> 


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Problem receiving > 8 byte UDS response when using istpsend
  2022-11-21 16:11   ` Andre Naujoks
@ 2022-11-21 16:45     ` Patrick Menschel
  2022-11-22 12:52       ` Oliver Hartkopp
  0 siblings, 1 reply; 5+ messages in thread
From: Patrick Menschel @ 2022-11-21 16:45 UTC (permalink / raw)
  To: Marvin Ludersdorfer; +Cc: linux-can, Andre Naujoks


[-- Attachment #1.1: Type: text/plain, Size: 297 bytes --]

Am 21.11.22 um 17:11 schrieb Andre Naujoks:
> Am 21.11.22 um 13:08 schrieb Marvin Ludersdorfer:
>>
>> In another terminal, I run echo 22 F1 95 | isotpsend -s 00000680 -d 
>> 00000780 can0 -p 0x00

Typical error,

exchange -s and -d

isotprecv works the other way around.

--
Patrick

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Problem receiving > 8 byte UDS response when using istpsend
  2022-11-21 16:45     ` Patrick Menschel
@ 2022-11-22 12:52       ` Oliver Hartkopp
  2022-11-22 16:24         ` Marvin Ludersdorfer
  0 siblings, 1 reply; 5+ messages in thread
From: Oliver Hartkopp @ 2022-11-22 12:52 UTC (permalink / raw)
  To: Patrick Menschel, Marvin Ludersdorfer; +Cc: linux-can, Andre Naujoks



On 21.11.22 17:45, Patrick Menschel wrote:
> Am 21.11.22 um 17:11 schrieb Andre Naujoks:
>> Am 21.11.22 um 13:08 schrieb Marvin Ludersdorfer:
>>>
>>> In another terminal, I run echo 22 F1 95 | isotpsend -s 00000680 -d 
>>> 00000780 can0 -p 0x00
> 
> Typical error,
> 
> exchange -s and -d
> 
> isotprecv works the other way around.
> 

:-D Yes. Trapped into this myself some times.

Btw. @Marvin are you really sure with the given values for the CAN IDs?

The help text says:

Usage: isotpsend [options] <CAN interface>
Options:
          -s <can_id>  (source can_id. Use 8 digits for extended IDs)
          -d <can_id>  (destination can_id. Use 8 digits for extended IDs)

So your IDs 00000680 and 00000780 are 29 bit CAN identifiers!

Is this intentionally?

Some people mix up the nominal values with the 11/29-bit IDs and think 
every CAN ID below 0x800 is a 11 bit CAN ID.

Regards,
Oliver

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Problem receiving > 8 byte UDS response when using istpsend
  2022-11-22 12:52       ` Oliver Hartkopp
@ 2022-11-22 16:24         ` Marvin Ludersdorfer
  0 siblings, 0 replies; 5+ messages in thread
From: Marvin Ludersdorfer @ 2022-11-22 16:24 UTC (permalink / raw)
  To: Oliver Hartkopp; +Cc: Patrick Menschel, linux-can, Andre Naujoks

Thanks to all three of you for the quick reply! I think I understand the problem  now … will test it once I‘m back in the lab.

@Oliver: yes, use of 29 bit CAN IDs is intentional.

Regards,
Marvin

Von meinem iPhone gesendet

> Am 22.11.2022 um 13:58 schrieb Oliver Hartkopp <socketcan@hartkopp.net>:
> 
> 
> 
>> On 21.11.22 17:45, Patrick Menschel wrote:
>>> Am 21.11.22 um 17:11 schrieb Andre Naujoks:
>>> Am 21.11.22 um 13:08 schrieb Marvin Ludersdorfer:
>>>> 
>>>> In another terminal, I run echo 22 F1 95 | isotpsend -s 00000680 -d 00000780 can0 -p 0x00
>> Typical error,
>> exchange -s and -d
>> isotprecv works the other way around.
> 
> :-D Yes. Trapped into this myself some times.
> 
> Btw. @Marvin are you really sure with the given values for the CAN IDs?
> 
> The help text says:
> 
> Usage: isotpsend [options] <CAN interface>
> Options:
>         -s <can_id>  (source can_id. Use 8 digits for extended IDs)
>         -d <can_id>  (destination can_id. Use 8 digits for extended IDs)
> 
> So your IDs 00000680 and 00000780 are 29 bit CAN identifiers!
> 
> Is this intentionally?
> 
> Some people mix up the nominal values with the 11/29-bit IDs and think every CAN ID below 0x800 is a 11 bit CAN ID.
> 
> Regards,
> Oliver

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-11-22 16:24 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <FR2P281MB165556E4F729AC3CDB50F6F69F0A9@FR2P281MB1655.DEUP281.PROD.OUTLOOK.COM>
2022-11-21 12:08 ` AW: Problem receiving > 8 byte UDS response when using istpsend Marvin Ludersdorfer
2022-11-21 16:11   ` Andre Naujoks
2022-11-21 16:45     ` Patrick Menschel
2022-11-22 12:52       ` Oliver Hartkopp
2022-11-22 16:24         ` Marvin Ludersdorfer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).