Search code examples
requestresponsecan-busj1939

Timing range from request to response in J1939


Generally a request is sent via 0xEB00 and response is capured by 0xEC00 (Response more than 8 bytes) in J1939,what is the range for the response from request? Example:- 0.00 - 0xEB00 - EC FE 00 xx.xx - 0xEC00 - xx xx xx xx xx EC FE 00.

What can be the possible range of xx.xx be ?

Looked into many options but unable to find the exact range. Somewhere its mentioned as 10 - 200 => Datapackets and somewhere its mentioned as 0 - 1250


Solution

  • All devices, when required to provide a response, must do so within 0.20s (Tr). All devices expecting a response must wait at least 1.25s (T3) before giving up or retrying. These times assure that any latencies due to bus access or message forwarding across bridges do not cause unwanted timeouts. Different time values can be used for specific applications when required. For instance, for high-speed control messages, a 20 ms response may be expected. Reordering any buffered messages may be necessary to accomplish the faster response. There is no restriction on minimum response time.

    Time between packets of a multipacket message directed to a specific destination is 0 to 200 ms. This means that backto-back messages can occur and they may contain the same identifier. The CTS mechanism can be used to assure a given time spacing between packets. The required time interval between packets of a Multipacket Broadcast message is 50 to 200 ms. A minimum time of 50 ms assures the responder has time to pull the message from the CAN hardware. The responder shall use a timeout of 250 ms (provides margin allowing for the maximum spacing of 200 ms).

    a. Maximum forward delay time within a bridge is 50 ms Total number of bridges = 10 (i.e. 1 tractor + 5 trailers + 4 dollies = 10 bridges) Total network delay is 500 ms in one direction.

    b. Number of request retries = 2 (3 requests total); this includes the situation where the CTS is used to request the retransmission of data packet(s). c. 50 ms margin for timeouts