Quantex GmbH
DE RU EN EL
Your region: Europe

J2534 log format v2

Last modified:

Overview

The J2534 library uses a compact, easily parseable log format. Each line represents a single operation or data message. The format is optimized for automated analysis and allows the full sequence of actions during vehicle diagnostics to be reconstructed.

Log file structure

# v2 2026-01-10 02:00:18
  0 I j0 open 192.168.12.3 > ok 4ms
 10 I j0 conn ISO15765 500000 > 1 9ms
  6 I j0 wr 1 100 1 > 1 5ms
	[6A8]10C0 0.000 2
  5 I j0 rd 1 2000 10 > 1 4ms
	[688]61C0 2240.300 2
...

Application entries

The application can add its own entries to the log via the PassThruWriteToLog function:

  0 I pt_lib open param: 192.168.12.3, type:1
  0 I pt_lib open param: 192.168.12.3, name:sd0;n192.168.12.3

Application entries use the identifier pt_lib instead of a device number.

Operation line format

DELTA LEVEL DEVICE COMMAND PARAMS > RESULT DURATION
  0 I j0 open 192.168.12.3 > ok 4ms
 10 I j0 conn ISO15765 500000 > 1 9ms
  5 I j0 disc 1 > ok 4ms
  4 I j0 close > ok 3ms
Position Field Description
0 DELTA Delta time in milliseconds from the previous operation (3 characters, right-aligned)
1 LEVEL Log level: I (Info), E (Error), W (Warning), D (Debug)
2 DEVICE Device number (j0, j1, ... j15) or pt_lib for application entries
3 COMMAND Command name
4+ PARAMS Input parameters (see command table below)
- > Separator
-2 RESULT Result / output values
-1 DURATION Operation duration (Nms)

Data line format

  [CAN_ID]DATA TIMESTAMP LEN FLAGS
Position Field Description
- \t Tab indentation
0 [CAN_ID] CAN identifier in square brackets
1 DATA Data bytes (hex, no spaces). Empty if LEN=0
2 TIMESTAMP Device timestamp in seconds.milliseconds (SSSS.mmm)
3 LEN Data length in bytes
4 FLAGS Flags separated by the | character (optional)

If the protocol differs from the channel protocol, it is added to FLAGS.

Examples:

  [688]61B05646375244 2240.300 8
  [688]61B05646375244 2240.300 8 RX_START
  [6A8] 2240.281 0 INT|TX_DONE
  [612:F1]037F2212 2240.300 4 CAN
  [612:F1]037F2212 2240.300 4 INT|CAN

Result codes

Result Description
ok Success (STATUS_NOERROR)
N Actual number of messages read/written
  • 0 = buffer empty (instead of the text error code ERR_BUFFER_EMPTY; not an error)
  • Less than requested = timeout elapsed (instead of the text error code ERR_TIMEOUT; not an error)
ERR_XXX Text error code ERR_XXX = operation failed (ERR_INVALID_CHANNEL_ID, ERR_DEVICE_NOT_CONNECTED, etc.)
"text" Quoted text string (e.g., the description of the last error returned by the PassThruGetLastError call)

Command reference

Connection and session management

Command Parameters (positions 3+) Result Description
open address ok/ERR Open connection to device
close - ok/ERR Close connection
conn protocol baud channel Connect a channel using the specified protocol
disc channel ok/ERR Disconnect a channel

Connection types:

Reading and writing messages

Command Parameters Result Description
rd channel timeout num num or ERR Read messages
wr channel timeout num num or ERR Write messages

Parameters:

Result:

Log level for rd:

 26 I j0 wr 1 100 1 > 1 6ms
	[6A8]10C0 0.000 2
  6 I j0 rd 1 2000 10 > 10 5ms
	[6A8] 2240.281 0 INT|TX_DONE
	[688] 2240.294 0 RX_START
 15 W j0 rd 1 0 10 > 0 2ms
 62 W j0 rd 1 50 10 > 2 62ms
	[7DF] 2.489 0 INT|TX_DONE
	[7E8]4100BE1FA813 2.489 6
 41 E j0 rd 1 2000 10 > ERR_INVALID_CHANNEL_ID 0ms

Filters

Command Parameters Result Description
flt+ channel [protocol] type mask pattern [flow] filter_id Set a filter
flt- channel filter_id ok/ERR Remove a filter

Parameters:

Filter types:

 13 I j0 flt+ 1 FLOW FFFFFFFF 688 6A8 > 0 3ms
  3 I j0 flt+ 1 ISO15765 FLOW FFFFFFFF 000007E8 000007E0 > 0 0ms
139 I j0 flt- 1 0 > ok 3ms

Periodic messages

Command Parameters Result Description
per+ channel interval msg_id Start a periodic message
per- channel msg_id ok/ERR Stop a periodic message

Parameters:

 50 I j0 per+ 1 100 > 0 5ms
	[6A8]3E00 0.000 2
150 I j0 per- 1 0 > ok 3ms

The data line after per+ shows the content of the periodic message (same format as for wr).

IOCTL commands

Command Parameters Result Description
io channel ioctl_id [params] [result] IOCTL operation

GET_CONFIG - Read protocol configuration parameters

DELTA LEVEL DEVICE io channel GET_CONFIG > PARAM:value|PARAM:value|... Nms

Example:

200 I j0 io 1 GET_CONFIG > P2_CAN:2000|P3_MIN:45|ISO15765_BS:8 8ms

SET_CONFIG - Set protocol configuration parameters

DELTA LEVEL DEVICE io channel SET_CONFIG PARAM:value|PARAM:value|... > ok Nms

Example:

 10 I j0 io 1 SET_CONFIG P2_CAN:2000|P3_MIN:45|ISO15765_WFT_MAX:0 > ok 10ms

Common parameters: DATA_RATE, LOOPBACK, P1_MAX, P3_MIN, P4_MIN, W0-W5, TIDLE, TWUP, PARITY, ISO15765_BS, ISO15765_STMIN, BS_TX, STMIN_TX, ISO15765_WFT_MAX, ISO15765_PAD_VALUE, J1962_PINS, CAN_MIXED_FORMAT, FD_CAN_DATA_PHASE_RATE, HS_CAN_TERMINATION, N_CR_MAX and others.

READ_VBATT - Read battery voltage (pin 16)

DELTA LEVEL DEVICE io 0 READ_VBATT > voltage Nms

Result: Voltage in X.X format (volts with one decimal place).

Example:

 10 I j0 io 0 READ_VBATT > 12.3 5ms

READ_PIN_V - Read voltage on a specific pin of the J1962 connector

DELTA LEVEL DEVICE io 0 READ_PIN_V pin > voltage Nms

Parameters:

Examples:

 10 I j0 io 0 READ_PIN_V 16 > 12.3 5ms

5BAUD_INIT - 5-baud initialization for ISO9141/ISO14230

DELTA LEVEL DEVICE io channel 5BAUD_INIT in_addr > out_keybytes Nms

Parameters:

Example:

 30 I j0 io 1 5BAUD_INIT 33 > 8F6F 2850ms

FAST_INIT - Fast initialization for ISO14230 (KWP2000)

DELTA LEVEL DEVICE io channel FAST_INIT [tx_msg] > [rx_msg] Nms

Parameters (optional):

Examples:

 10 I j0 io 1 FAST_INIT 8121F181 > 83F11061 85ms
 10 I j0 io 1 FAST_INIT > ok 75ms

Buffer clear commands

DELTA LEVEL DEVICE io channel IOCTL_NAME > ok Nms
Command Description
CLEAR_TX_BUFFER Clear TX buffer
CLEAR_RX_BUFFER Clear RX buffer
CLEAR_PERIODIC_MSGS Clear periodic messages
CLEAR_MSG_FILTERS Clear message filters
CLEAR_FUNCT_MSG_LOOKUP_TABLE Clear the functional message lookup table

Example:

 10 I j0 io 1 CLEAR_RX_BUFFER > ok 2ms
 10 I j0 io 1 CLEAR_MSG_FILTERS > ok 3ms

REQ_CONN - TP2.0 connection request

DELTA LEVEL DEVICE io channel REQ_CONN addr > ok Nms

Parameters: addr - Logical address (hex)

Example:

 10 I j0 io 1 REQ_CONN 01 > ok 150ms

Other commands

Command Parameters Result Description
ver - fw dll api Read DLL version
rd_ver - ver:FW:XX;HW:XXXXXXXX;SN:X Read device firmware version
volt pin voltage ok/ERR Set programming voltage
err - error_text Get the description of the last error

Examples:

  0 I j0 rd_ver > ver:FW:81;HW:0000FF05;SN:0 16ms
300 I j0 err > "Channel not connected" 0ms

CAN ID format

Type Format Example
11-bit standard [XXX] [612]
29-bit extended [XXXXXXXX] [18DA00F1]
11-bit + extended address [XXX:XX] [612:F1]
29-bit + extended address [XXXXXXXX:XX] [18DA00F1:F1]

The extended address is shown when the EXT_ADDR flag is set.

Flags reference

Receive (RX) flags

Flag Bit Description
INT 0 Internal/loopback (TX_MSG_TYPE). 1 = echo from adapter, 0 = from the bus
RX_START 1 Start of a segmented message (START_OF_MESSAGE)
RX_BREAK 2 Link break detected (RX_BREAK)
TX_DONE 3 Transmission completed successfully (TX_SUCCESS)
TX_FAIL 9 Transmission error (TX_FAILED)
PAD_ERR 4 ISO15765 padding error (ISO15765_PADDING_ERROR)
EXT_ADDR 7 Extended addressing mode (ISO15765_ADDR_TYPE)
EXT29 8 29-bit CAN ID (CAN_29BIT_ID)
FD 20 CAN FD frame (FD_CAN_FORMAT)
BRS 19 CAN FD bit rate switch (FD_CAN_BRS)
ESI 21 CAN FD error state indicator (FD_CAN_ESI)

Transmit (TX) flags

Flag Bit Description
NO_DONE 0 Do not wait for TX acknowledgment (ISO15765_NO_TXDONE)
NO_RESP 1 Do not wait for a response (ISO15765_NO_RESP)
PAD 6 Use ISO15765 padding (ISO15765_FRAME_PAD)
EXT_ADDR 7 Extended addressing mode (ISO15765_ADDR_TYPE)
EXT29 8 Use 29-bit CAN ID (CAN_29BIT_ID)
P3_ONLY 9 Wait only for P3 min (WAIT_P3_MIN_ONLY)
SW_HV 10 SW-CAN high-voltage transmission (SW_CAN_HV_TX)
FD 20 CAN FD frame (FD_CAN_FORMAT)
BRS 19 CAN FD bit rate switch (FD_CAN_BRS)

Supported protocols

Name Protocol ID Description
CAN 5 Raw CAN
ISO15765 6 ISO 15765-2 (CAN transport)
ISO9141 3 ISO 9141-2 (K-Line)
ISO14230 4 ISO 14230 (KWP2000)
J1850VPW 1 J1850 VPW
J1850PWM 2 J1850 PWM
FD_CAN 0x8011 CAN FD
FD_ISO15765 0x8012 ISO 15765 over CAN FD
For the full list of protocols, see the SAE J2534-1 and J2534-2 specifications.

Full log example

# v2 2026-01-10 02:00:18
  0 I j0 open 192.168.12.3 > ok 4ms
  7 I j0 conn ISO15765_PS 500000 > 1 6ms
  6 I j0 flt+ 1 FLOW FFFFFFFF 688 6A8 > 0 3ms
  4 I j0 io 1 SET_CONFIG J1962_PINS:0308 > ok 8ms
  9 I j0 wr 1 100 1 > 1 6ms
	[6A8]21B0 0.000 2
  6 I j0 rd 1 2000 10 > 2 5ms
	[6A8] 2240.281 0 INT|TX_DONE
	[688] 2240.294 0 RX_START
  5 I j0 rd 1 2000 10 > 1 12ms
	[688]61B0564637524452464A46394C353632303836 2240.300 23
 20 I j0 wr 1 0 1 > 1 2ms
	[6A8]1081 0.000 2
 50 I j0 rd 1 2000 10 > 2 48ms
	[6A8] 2240.350 0 INT|TX_DONE
	[688]5081 2240.355 2
 40 I j0 io 1 CLEAR_RX_BUFFER > ok 2ms
  8 I j0 flt- 1 0 > ok 3ms
  9 I j0 disc 1 > ok 4ms
  4 I j0 close > ok 3ms

Reading the log

  1. j0 open 192.168.12.3 - Open a LAN connection
  2. j0 conn ISO15765_PS 500000 > 1 - Connect an ISO15765_PS channel, channel_id=1 obtained
  3. j0 flt+ 1 FLOW ... - Set a flow control filter
  4. j0 io 1 SET_CONFIG - Set protocol parameters (connect to pins 3 and 8)
  5. j0 wr 1 100 1 - Write 1 message, 100 ms timeout, on channel 1
    • [6A8]21B0 - CAN ID 6A8, request identification data with command 21B0
  6. j0 rd 1 2000 10 > 2 - Read up to 10 messages, 2 received (ERR_TIMEOUT occurred but is not shown)
    • [6A8] ... INT|TX_DONE - adapter response | transmission completed (successful transmission notifications arrive with no data, len=0)
    • [688] ... RX_START - Start of a segmented response
  7. j0 rd ... > 1 - Read, 1 message received
    • [688]61B0... - Response data, 23 bytes
  8. j0 io 1 CLEAR_RX_BUFFER - Clear the RX buffer
  9. Continue with flt-, disc, close

Developer tips

Note: The v2 format is not backward-compatible with v1. Check the log header to determine the version.