Re: [CAN-ISOTP] handle broadcast

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I get your point but there are a few problems to solve.

1. If no rx canid is given, the protocol must guess what received answer
is isotp and it is very likely that there is a testcase where this
results in garbage.

2. I think switching from Broadcast 0xDF to the specific address 0x10
violates the protocol. It would be logic to use broadcast in the flow
control frame as well.

>>>> can1 6F1 [5] *DF* 03 22 F1 01
>>>>
>>>> can1 610 [8] F1 10 34 62 F1 01 01 01
>>>> can1 6F1 [8] *10* 30 0F 02 00 00 00 00
>>>> can1 610 [8] F1 21 00 04 11 01 11 8B
...

I observed something similar in a j1939 implementation of EDC17, where a
TP.CM is sent to broadcast while TP.DT is sent to the specific
destination address of the requesting device.
The j1939 conform terminal application at test subsequently dropped
every TP message as there was no data for the PGN and no PGN for the
data respectively.

Should mean, if broadcast is handled by isotp, it should not violate the
standard.

3. This change may cause problems with other programming language
implementations.
I recently moved to python3.7 that basically does isotp with a 2-liner
and build-in bytes object as I/O stream, somewhat like a serial port.
A broadcast implementation would need to change the user interface to
(rx-canid,bytes) tupples for example.

I hope this counts as a programmers point of view ;-) .

Regards,
Patrick


> Hi
> 
> My use case is because of already existing diagnostic software that
> using this functionality.
> In general - when this exist i think should be made simple to use and
> then will be used from programmers.
> Otherwise - with limited functionality everybody will make own implementation.
> 
> Regards,
> Zahari

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


[Index of Archives]     [Automotive Discussions]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]     [CAN Bus]

  Powered by Linux