Dernière modification :
La bibliothèque J2534 utilise un format de logs compact et facile à parser. Chaque ligne représente une opération ou un message avec des données. Le format est optimisé pour l'analyse automatique et permet de reconstituer entièrement la séquence des actions lors du diagnostic du véhicule.
# 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 ...
L'application peut ajouter ses propres entrées au log au moyen de la fonction PassThruWriteToLog :
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
Les entrées de l'application utilisent l'identifiant pt_lib à la place du numéro de périphérique.
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 | Champ | Description |
|---|---|---|
| 0 | DELTA | Temps delta en millisecondes depuis l'opération précédente (3 caractères, alignement à droite) |
| 1 | LEVEL | Niveau de journalisation : I (Info), E (Error), W (Warning), D (Debug) |
| 2 | DEVICE | Numéro de périphérique (j0, j1, ... j15) ou pt_lib pour les entrées de l'application |
| 3 | COMMAND | Nom de la commande |
| 4+ | PARAMS | Paramètres d'entrée (voir le tableau des commandes ci-dessous) |
| - | > | Séparateur |
| -2 | RESULT | Résultat/valeurs de sortie |
| -1 | DURATION | Durée de l'opération (Nms) |
[CAN_ID]DATA TIMESTAMP LEN FLAGS
| Position | Champ | Description |
|---|---|---|
| - | \t | Indentation par tabulation |
| 0 | [CAN_ID] | Identifiant CAN entre crochets |
| 1 | DATA | Octets de données (hex, sans espaces). Vide si LEN=0 |
| 2 | TIMESTAMP | Horodatage du périphérique en secondes.millisecondes (SSSS.mmm) |
| 3 | LEN | Longueur des données en octets |
| 4 | FLAGS | Flags séparés par le caractère | (facultatif) |
Si le protocole diffère du protocole du canal, il est ajouté aux FLAGS.
Exemples :
[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
| Résultat | Description |
|---|---|
| ok | Succès (STATUS_NOERROR) |
| N | Nombre de messages réellement lus/écrits
|
| ERR_XXX | Code d'erreur textuel ERR_XXX = erreur lors de l'exécution de l'opération (ERR_INVALID_CHANNEL_ID, ERR_DEVICE_NOT_CONNECTED, etc.) |
| "texte" | Chaîne de texte entre guillemets (par exemple, la description de la dernière erreur lors de l'appel de la commande PassThruGetLastError) |
| Commande | Paramètres (positions 3+) | Résultat | Description |
|---|---|---|---|
| open | address | ok/ERR | Ouvrir la connexion avec le périphérique |
| close | - | ok/ERR | Fermer la connexion |
| conn | protocol baud | channel | Connecter le canal selon le protocole |
| disc | channel | ok/ERR | Déconnecter le canal |
Types de connexion :
| Commande | Paramètres | Résultat | Description |
|---|---|---|---|
| rd | channel timeout num | num ou ERR | Lire les messages |
| wr | channel timeout num | num ou ERR | Écrire les messages |
Paramètres :
Résultat :
Niveau de journalisation pour 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
| Commande | Paramètres | Résultat | Description |
|---|---|---|---|
| flt+ | channel [protocol] type mask pattern [flow] | filter_id | Définir un filtre |
| flt- | channel filter_id | ok/ERR | Supprimer un filtre |
Paramètres :
Types de filtres :
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
| Commande | Paramètres | Résultat | Description |
|---|---|---|---|
| per+ | channel interval | msg_id | Démarrer un message périodique |
| per- | channel msg_id | ok/ERR | Arrêter un message périodique |
Paramètres :
50 I j0 per+ 1 100 > 0 5ms [6A8]3E00 0.000 2 150 I j0 per- 1 0 > ok 3ms
La ligne de données après per+ affiche le contenu du message périodique (le même format que pour wr).
| Commande | Paramètres | Résultat | Description |
|---|---|---|---|
| io | channel ioctl_id [params] | [result] | Opération IOCTL |
DELTA LEVEL DEVICE io channel GET_CONFIG > PARAM:value|PARAM:value|... Nms
Exemple :
200 I j0 io 1 GET_CONFIG > P2_CAN:2000|P3_MIN:45|ISO15765_BS:8 8ms
DELTA LEVEL DEVICE io channel SET_CONFIG PARAM:value|PARAM:value|... > ok Nms
Exemple :
10 I j0 io 1 SET_CONFIG P2_CAN:2000|P3_MIN:45|ISO15765_WFT_MAX:0 > ok 10ms
Paramètres généraux : 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, etc.
DELTA LEVEL DEVICE io 0 READ_VBATT > voltage Nms
Résultat : Tension au format X.X (volts avec une décimale).
Exemple :
10 I j0 io 0 READ_VBATT > 12.3 5ms
DELTA LEVEL DEVICE io 0 READ_PIN_V pin > voltage Nms
Paramètres :
Exemples :
10 I j0 io 0 READ_PIN_V 16 > 12.3 5ms
DELTA LEVEL DEVICE io channel 5BAUD_INIT in_addr > out_keybytes Nms
Paramètres :
Exemple :
30 I j0 io 1 5BAUD_INIT 33 > 8F6F 2850ms
DELTA LEVEL DEVICE io channel FAST_INIT [tx_msg] > [rx_msg] Nms
Paramètres (facultatif) :
Exemples :
10 I j0 io 1 FAST_INIT 8121F181 > 83F11061 85ms 10 I j0 io 1 FAST_INIT > ok 75ms
DELTA LEVEL DEVICE io channel IOCTL_NAME > ok Nms
| Commande | Description |
|---|---|
| CLEAR_TX_BUFFER | Vider le tampon TX |
| CLEAR_RX_BUFFER | Vider le tampon RX |
| CLEAR_PERIODIC_MSGS | Vider les messages périodiques |
| CLEAR_MSG_FILTERS | Vider les filtres de messages |
| CLEAR_FUNCT_MSG_LOOKUP_TABLE | Vider la table des messages fonctionnels |
Exemple :
10 I j0 io 1 CLEAR_RX_BUFFER > ok 2ms 10 I j0 io 1 CLEAR_MSG_FILTERS > ok 3ms
DELTA LEVEL DEVICE io channel REQ_CONN addr > ok Nms
Paramètres : addr - Adresse logique (hex)
Exemple :
10 I j0 io 1 REQ_CONN 01 > ok 150ms
| Commande | Paramètres | Résultat | Description |
|---|---|---|---|
| ver | - | fw dll api | Lire la version de la DLL |
| rd_ver | - | ver:FW:XX;HW:XXXXXXXX;SN:X | Lire la version du firmware du périphérique |
| volt | pin voltage | ok/ERR | Définir la tension de programmation |
| err | - | error_text | Obtenir la description de la dernière erreur |
Exemples :
0 I j0 rd_ver > ver:FW:81;HW:0000FF05;SN:0 16ms 300 I j0 err > "Channel not connected" 0ms
| Type | Format | Exemple |
|---|---|---|
| 11 bits standard | [XXX] | [612] |
| 29 bits étendu | [XXXXXXXX] | [18DA00F1] |
| 11 bits + adresse étendue | [XXX:XX] | [612:F1] |
| 29 bits + adresse étendue | [XXXXXXXX:XX] | [18DA00F1:F1] |
L'adresse étendue s'affiche lorsque le flag EXT_ADDR est présent.
| Flag | Bit | Description |
|---|---|---|
| INT | 0 | Interne/loopback (TX_MSG_TYPE). 1=écho de l'adaptateur, 0=du bus |
| RX_START | 1 | Début d'un message segmenté (START_OF_MESSAGE) |
| RX_BREAK | 2 | Interruption de la liaison détectée (RX_BREAK) |
| TX_DONE | 3 | Transmission terminée avec succès (TX_SUCCESS) |
| TX_FAIL | 9 | Erreur de transmission (TX_FAILED) |
| PAD_ERR | 4 | Erreur de remplissage ISO15765 (ISO15765_PADDING_ERROR) |
| EXT_ADDR | 7 | Mode d'adressage étendu (ISO15765_ADDR_TYPE) |
| EXT29 | 8 | CAN ID de 29 bits (CAN_29BIT_ID) |
| FD | 20 | Trame CAN FD (FD_CAN_FORMAT) |
| BRS | 19 | CAN FD commutation du débit binaire (FD_CAN_BRS) |
| ESI | 21 | CAN FD indicateur d'état d'erreur (FD_CAN_ESI) |
| Flag | Bit | Description |
|---|---|---|
| NO_DONE | 0 | Ne pas attendre la confirmation de TX (ISO15765_NO_TXDONE) |
| NO_RESP | 1 | Ne pas attendre de réponse (ISO15765_NO_RESP) |
| PAD | 6 | Utiliser le remplissage ISO15765 (ISO15765_FRAME_PAD) |
| EXT_ADDR | 7 | Mode d'adressage étendu (ISO15765_ADDR_TYPE) |
| EXT29 | 8 | Utiliser un CAN ID de 29 bits (CAN_29BIT_ID) |
| P3_ONLY | 9 | Attendre uniquement P3 min (WAIT_P3_MIN_ONLY) |
| SW_HV | 10 | SW-CAN transmission haute tension (SW_CAN_HV_TX) |
| FD | 20 | Trame CAN FD (FD_CAN_FORMAT) |
| BRS | 19 | CAN FD commutation du débit binaire (FD_CAN_BRS) |
| Nom | ID du protocole | Description |
|---|---|---|
| CAN | 5 | Raw CAN |
| ISO15765 | 6 | ISO 15765-2 (transport CAN) |
| 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 via CAN FD |
# 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