Quantex GmbH
DE RU EN EL
Your region: Europe

PassThru DLL functions reference — SAE J2534-1/2

Last modified:

J2534 standard versions

There are two versions of the SAE J2534 standard:

Version Windows registry path Features
v04.04 HKLM\SOFTWARE\PassThruSupport.04.04 Basic set of PassThru functions
v05.00 HKLM\SOFTWARE\PassThruSupport.05.00 Adds PassThruScanForDevices and PassThruGetNextDevice functions for dynamic device discovery

Compatibility: The versions are not compatible with each other. Diagnostic applications look up DLLs only under their own registry version:

Working with devices

v04.04: Supports only one device at a time, whose parameters are written in the registry. The application loads the DLL and calls PassThruOpen(NULL) to connect to the device specified in the registry.

v05.00: Supports dynamic device discovery. Typical workflow:

  1. The application reads the PassThruSupport.05.00 registry and shows the user a list of vendors
  2. The user selects a vendor, and the application loads the corresponding DLL
  3. Call PassThruScanForDevices to scan for connected devices (wired and wireless)
  4. Call PassThruGetNextDevice in a loop to retrieve information about each discovered device
  5. The application shows the list of devices and the user selects one
  6. Call PassThruOpen with the name of the selected device

Multithreading

Important: The J2534 API is not thread-safe. It is a request-response protocol. The next function must not be called until the current one has completed. The application must not make asynchronous DLL calls from different threads.
Version Behavior on concurrent call
v04.04 The DLL uses an internal mutex — concurrent calls block until the current one completes
v05.00 Returns the ERR_CONCURRENT_API_CALL error

PassThru API functions

PassThruScanForDevices Scan for all connected devices v5.0
PassThruGetNextDevice Retrieve the list of devices found by PassThruScanForDevices v5.0
PassThruOpen Establish communication with the adapter v4.04 v5.0
PassThruClose Terminate communication with the adapter v4.04 v5.0
PassThruConnect Create a protocol connection v4.04 v5.0
PassThruDisconnect Remove a connection v4.04 v5.0
PassThruReadMsgs Read received messages v4.04 v5.0
PassThruWriteMsgs Transmit messages v4.04
PassThruStartPeriodicMsg Start a periodic message v4.04 v5.0
PassThruStopPeriodicMsg Remove a periodic message v4.04 v5.0
PassThruStartMsgFilter Set a message filter v4.04 v5.0
PassThruStopMsgFilter Remove a message filter v4.04 v5.0
PassThruIoctl I/O control v4.04 v5.0
GET_CONFIG / SET_CONFIG Protocol parameters v4.04 v5.0
GET_DEVICE_INFO / GET_PROTOCOL_INFO Device information J2534-2
DoIP (ISO 13400) Diagnostics over Ethernet Quantex
PassThruSetProgrammingVoltage Set programming voltage v4.04 v5.0
PassThruReadVersion Read DLL and adapter information v4.04 v5.0
PassThruLogicalConnect Create a logical communication channel over a physical connection v5.0
PassThruLogicalDisconnect Close a logical communication channel v5.0
PassThruSelect Select channels for monitoring v5.0
PassThruQueueMsgs Queue messages on a channel for transmission v5.0

Additional materials

J2534 v2 log format Description of the DLL and library logging file format