La somme de contrôle est une valeur mathématique calculée sur le contenu du fichier Calculateur que l'unité de contrôle vérifie au démarrage. Si le fichier modifié ne correspond pas à la somme de contrôle, l'ECU rejette le firmware et la voiture passe en mode boiteux ou ne démarre pas du tout.
genres de sommes de contrôle dans les fichiers ECU
- CRC16/CRC32 : sommes de contrôle polynomiales standard
- Sommes de contrôle propriétaires Bosch : algorithmes spécifiques à la famille (EDC17, MED17, ME9, MD1)
- SHA/signature numérique : les calculateurs récents (après 2018) utilisent des signatures cryptographiques
Comment le gérer
Les outils professionnels tels que WinOLS ont des plugins de somme de contrôle spécifiques pour chaque famille de calculateurs. Après avoir édité les cartes, le plugin recalcule automatiquement la somme de contrôle correcte. Sans cette étape, le fichier modifié est inutilisable.
Erreurs courantes
Le Message "ne fonctionne pas après le flash" est presque toujours dû à une somme de contrôle incorrecte. Avant d'accuser les cartes, vérifiez toujours la somme de contrôle.
Pourquoi existe-t-elle
La somme de contrôle protège l'intégrité du firmware : elle garantit que le contenu n'est pas corrompu et, sur les calculateurs récents, qu'il n'a pas été altéré. Souvent, il ne s'agit pas d'une valeur unique mais d'une série de sommes de contrôle pour différentes zones de mémoire (programme, calibrage, données), chacune avec son propre algorithme.
Flux de travail correct
Après avoir modifié les cartes, le fichier doit être transmis pour correction de la somme de contrôle avant l'écriture : des outils comme WinOLS ont des plugins dédiés pour la famille Calculateur qui recalculent automatiquement les valeurs. Sur les unités de contrôle les plus récentes, les sommes de contrôle simples sont accompagnées de signatures cryptographiques (RSA/ECDSA) : dans ces cas, il n'est pas possible de "recalculer" la signature et cela se fait via des procédures ou protocoles spécifiques de l'outil. Presque tous les rapports "ça ne démarre pas après le flash" proviennent de sommes de contrôle incorrectes.
Question fréquemment posée
"Je n'ai changé qu'une seule carte et la voiture ne démarre pas" : dans presque tous les cas, le problème est la somme de contrôle obsolète, pas la carte. La vérification et la correction de la somme de contrôle doivent être effectuées systématiquement avant chaque écriture. Cependant, sur les unités de contrôle avec signature cryptographique du firmware, il ne suffit pas de recalculer : il faut un protocole d'outil qui gère la procédure, sinon l'écriture est rejetée quel que soit le contenu.
