Navigating the SAE J2534-2/RE_0500 Resource Document for Pass-Thru API Extensions

Overview and Scope

This resource document is part of the SAE J2534-2 set and extends the SAE J2534-1_0500 API (version 05.00). It defines common data structures and constants used to implement the extension to the SAE J2534 API. This document only includes items used by the V05.00 API that are not already in SAE J2534-1_0500, ensuring compatibility and clarity. The modular design, where each feature is in a separate document, facilitates easier maintenance and extensibility.

🔍 The modular approach—separating each extended feature into its own resource document—allows for targeted updates and easier adoption of new protocols without reissuing the entire standard. This is a thoughtful design for an evolving diagnostics landscape.

Key Constants and Data Structures

The document provides extensive tables for constants such as RxStatus bit masks, TxFlags, Protocol IDs, Connect Flags, and more. These are essential for correctly configuring communication channels and interpreting message statuses. An example from Table 1 — RxStatus bit definitions — is shown below.

Name Bit Bit Mask Protocol(s)
J1939_ADDRESS_CLAIMED 16 0x00010000 J1939
WAKEUP_FLAG 16 0x00010000 SWCAN
CONNECTION_ESTABLISHED 16 0x00010000 TP2.0
J1939_ADDRESS_LOST 17 0x00020000 J1939
LINK_FAULT 17 0x00020000 FTCAN, CANFD
SW_CAN_HS_RX 17 0x00020000 SWCAN
CONNECTION_LOST 17 0x00020000 TP2.0
SW_CAN_NS_RX 18 0x00040000 SWCAN
FD_CAN_BRS 19 0x00080000 CANFD
FD_CAN_FORMAT 20 0x00100000 CANFD
FD_CAN_ESI 21 0x00200000 CANFD

Additionally, structures for IP communication (IP4_CHANNEL_DESCRIPTOR, IP6_CHANNEL_DESCRIPTOR, UDP_CHANNEL_DESCRIPTOR, TCP_CLIENT_CHANNEL_DESCRIPTOR) enable remote diagnostics over network protocols.

⚠️ Always verify that your implementation aligns with the V05.00 documentation. Using obsolete constant values can lead to erratic behavior or connection failures during pass-thru sessions.

Implementation Guidance and FAQs

When working with this API, always follow the documentation conventions: function names in bold, variables inside angle brackets, and defines in uppercase. This reduces ambiguity and aligns with the recommended practices. The standardized definitions promote interoperability across different pass-thru device implementations. 🛠️

How do I correctly initialize IP channel descriptors?

Refer to sections 5.4 through 5.10 for structure layouts. For IPv4, fill the IP4_ADDRESS_INFO with the appropriate address and port; for IPv6, use IP6_ADDR_LIST and IP6_ADDR structures accordingly.

What is the relationship between this document and the base J2534-1?

This document only defines items added in the V05.00 API that are not already defined in J2534-1_0500. It is a supplementary resource to the base API.

How do I handle the new CAN FD status bits?

Use the RxStatus bits FD_CAN_BRS (bit 19), FD_CAN_FORMAT (bit 20), and FD_CAN_ESI (bit 21) to decode CAN FD frames and handle error states.

Leave a Reply

Your email address will not be published. Required fields are marked *