Auto Voiture FAQ
Aide pour réparation d’auto et voiture d'occasion, neuf et usagé
Trouver une réponse de mécanique
Cadres reçus de véhicules avec plusieurs puces ECU
Question
Je ne suis généralement pas un « automobiliste », alors j'espère pouvoir expliquer cela assez bien pour obtenir de l'aide ici :
Lorsque j'envoie des messages à un appareil OBD-II, je reçois une réponse dans la plupart des voitures que j'ai testé. Cependant, avec les voitures qui ont apparemment plus d'une puce ECU, je reçois une réponse de chacune d'entre elles. Par exemple, si j'envoie une 01 0C
commande PID à un véhicule avec 3 puces ECU, je reçois 3 réponses qui sont généralement très similaires mais toujours différentes.
Une commande 01 00
est censée renvoyer 4 octets qui indiquent les PID pris en charge de le véhicule, mais cela renvoie également 4 octets pour chaque ECU - l'un étant un 4 octets entièrement étoffé avec plusieurs drapeaux activés et désactivés, tandis que les autres semblent n'avoir qu'une poignée de drapeaux activés (ces drapeaux semblent jusqu'à présent toujours être des indicateurs qui sont inclus dans la réponse 'principale', mais je ne sais pas si c'est toujours le cas).
Exemple :
SENT: 01 00
RECEIVED:
00 BF BF AC D3 - This response has the most binary flags turned on
00 98 18 80 11 - 8 flags on here
00 98 18 80 13 - 9 flags on here
Les deux dernières lignes sont constituées de drapeaux qui sont également marqués dans la première ligne, mais la ligne 3 a un drapeau supplémentaire que la ligne 2 n'a pas.
Il me semble que peut-être là est un seul ECU qui se qualifie comme la puce "principale" que je devrais écouter lorsque j'envoie des commandes, un d (Je pense) Je comprends que je peux utiliser un masque/filtre CAN ID pour ne faire attention qu'à ceux dont j'ai besoin.
La question est : y a-t-il vraiment un « ECU principal » que je devrais payer attention, ou toutes ces réponses sont-elles d'égale importance ? S'il y en a un principal que je dois cibler, y a-t-il une commande que je peux envoyer pour déterminer lequel est le « plus important » ?
Véhicules testés sur :
2011 Chevy Cruze [2 ECUs]
2015 BMW M5 [3 ECUs]
2015 Range Rover Autobiography [3 ECUs]
Réponse populaire
Si votre véhicule est de 2008 ou plus récent, il utilise le protocole can, vous pouvez utiliser la
commande AT CR pour sélectionner l'ECU que vous souhaitez entendre.
Voici comment :
envoyer
AT H1
cela activera les en-têtes pour voir les adresses des ECU.
envoyer
0100
il s'agit d'une commande OBD pour montrer lesquels des pid de 1 à 20 sont pris en charge.
votre réponse devrait ressembler à :
7E8064100BE3EA813
7E906410098188013
>
cela montre que vous avez 2 ECU 7E8 (moteur) 7E9 (transmission),
J'ai vu 5 ECU retournés : 7E8,7E9,7EA,7EB,7EC.
Afin d'entendre un seul ECU que vous émettez AT CRA xxx où xxx est l'adresse ECU.
envoyez ce qui suit
AT CRA 7E8
puis
0100
retournera :
7E8064100BE3EA813
envoyer
AT H0
pour désactiver les en-têtes puis envoyez :
0100
et vous obtiendrez retour juste
4100BE3EA813
Si votre véhicule est un 29 bits peut alors le 0 100 resonse ressemblera à quelque chose comme :
18DAF11806410088180013
18DAF110064100BE5FA813
>
cela montre 2 ECU 18DAF118 (transmission) et 18DAF110 (moteur).
envoyer
AT CRA 18DAF110
pour n'entendre que du moteur.
Read more… Read less…
CAN ne fonctionne pas comme vous le pensez.
CAN n'est pas basé sur un module, mais sur un message. Aucun module ne parle directement à un autre module. Dans CAN, un module génère un message avec une adresse, cette adresse identifie les données qui seront contenues dans le message. Aussi l'adresse donne l'importance du message. Plus l'adresse est basse, plus la priorité est élevée.
Par exemple, l'ABS transmettra la vitesse du véhicule. Tout autre module qui a besoin des données les lira.
Il n'y a pas de module plus important qu'un autre, c'est la priorité du message qui est importante.