Chaque véhicule construit depuis trente ans repose sur un réseau d'ECUs qui communiquent par CAN. Mais une trame CAN brute — un en-tête, quelques octets de données — ne vous dit rien sans une base de données qui décrit ce que ces octets signifient. Cette base de données, c'est votre fichier DBC ou ARXML.
Ce que contient un fichier DBC
Le format DBC (Database CAN) a été développé à l'origine par Vector Informatik. C'est un fichier texte brut qui décrit :
- Messages (frames) : ID en décimal ou hexadécimal, DLC, nœud émetteur, cycle time
- Signaux : start bit, bit length, byte order (Intel ou Motorola), type (signé/non signé), factor, offset, unité, min/max
- Value tables (VAL_) : énumérations — par ex. 0=Off, 1=Slow, 2=Fast
- Attributs (BA_DEF_ / BA_) : métadonnées personnalisées sur la base, les messages ou les signaux
- Nœuds : ECUs présents sur le bus
- Commentaires (CM_) : descriptions attachées aux messages, signaux ou nœuds
Un message DBC simple ressemble à ceci :
BO_ 256 EngineData: 8 Engine_ECU
SG_ EngineSpeed : 0|16@1+ (0.25,0) [0|16383.75] "rpm" Vector__XXX
SG_ ThrottlePos : 16|8@1+ (0.392157,0) [0|100] "%" Vector__XXXTraduction : message ID 256 (0x100), 8 octets, émis par Engine_ECU. Le signal EngineSpeed commence au bit 0, est long de 16 bits, byte order Intel, non signé, facteur d'échelle 0.25, offset 0, plage 0–16383.75 rpm.
CAN FD et multiplexage étendu
Les fichiers DBC modernes gèrent aussi CAN FD (DLC jusqu'à 64 octets) et le multiplexage étendu via SG_MUL_VAL_. Le multiplexage standard utilise un signal mux indicator ; le multiplexage étendu permet des plages, autorisant des centaines de signaux logiques dans une seule frame.
ARXML : la réponse d'AUTOSAR
L'ARXML (AUTOSAR XML) va plus loin. Là où le DBC est une description plate du trafic bus, l'ARXML est un modèle hiérarchique de toute l'architecture de communication :
- Software components et leurs interfaces
- PDUs (Protocol Data Units) mappés aux signaux
- I-Signals avec leurs transformateurs de données
- Configuration cluster et canal pour CAN, FlexRay, Ethernet
- Instances ECU avec leurs mappings COM
AUTOSAR 4.x a ajouté la protection E2E (End-to-End, profils P01 à P07) et le SecOC (Secure Onboard Communication) avec AES-128-CMAC ou HMAC-SHA256. BusFileReader parse et affiche ces couches de protection. L'ARXML 3.x, utilisé dans les projets anciens, a un namespace et une structure différents — BusFileReader détecte automatiquement la version.
FIBEX : pour FlexRay
Le format FIBEX d'ASAM (Field Bus Exchange Format) décrit les réseaux FlexRay, CAN et LIN en XML. Il est courant dans les workflows Tier 1 pour les systèmes FlexRay. Les fichiers FIBEX peuvent être en `.fibex` ou `.xml`. BusFileReader affiche la vue FlexRay avec une timeline de 64 cycles, distinguant segments statique et dynamique.
Ce que ça signifie en pratique
Si votre outil ne parse pas CAN FD, le multiplexage étendu, ou les attributs E2E AUTOSAR, vous travaillez avec une image incomplète du bus. BusFileReader parse tout ça, l'affiche dans une interface unifiée, et ne demande jamais de clé de licence.