Domanda:
Cosa significa quando il lettore OBD2 ELM327 fornisce due righe di informazioni per la richiesta 0100?
Ana
2016-03-28 11:49:49 UTC
view on stackexchange narkive permalink

Ho un lettore OBD2 basato su ELM327 a cui posso impartire comandi quando connesso a un'auto. Lo sto eseguendo su un Acura RDX 2015.

Quando invio la richiesta 0100 per ottenere PID modalità 1 supportati, ricevo le seguenti due risposte:

  41 00 98 3A 80 0341 00 BF BF A8 93  

La mia comprensione è che se ci sono più ECU in grado di rispondere a una richiesta risponderanno entrambi, quindi questo potrebbe essere il motivo per cui ci sono due risposte. Ciò significa che se ora emetto una richiesta che entrambi supportano, dovrei ricevere due risposte? E se faccio una richiesta che solo l'uno o l'altro supporta, dovrei riaverne solo uno?

Forse il lettore restituisce più righe di PID supportati? Se decodifichi la risposta ha senso? OBD2 è limitato al computer del motore e penso che quando impostano i moduli rimarrebbero lontani da risposte multiple allo stesso PID.
No, proviene da più ECU. Questo è un comportamento ben noto. Ciò che non è chiaro è cosa succede quando vengono emesse richieste a cui più ECU sanno come rispondere.
Una risposta:
godzilla
2016-04-02 10:06:22 UTC
view on stackexchange narkive permalink

prova questo

  AT H1  

questo attiverà le intestazioni, quindi esegui

  0100  

otterrai qualcosa come

  7E8 06 41 00 BE 3E A8 137E9 06 41 00 98 18 80 13  

che dice che stai ottenendo risultati dalle ECU 7E8 (motore) e 7E9 (trasmissione)

se utilizzi un CAN a 11 bit. Se ottieni

  18 DA F1 18 06 41 00 88 18 00 1318 DA F1 10 06 41 00 BE 5F A8 13  

allora i suoi risultati da ECU 18DAF110 (motore) e 18DAF118 (trasmissione) da 29 bit CAN.

Se vuoi solo ascoltare solo dal motore, emetti

  AT CRA 7E8  

per CAN a 11 bit o

  AT CRA 18DAF110  

per CAN a 29 bit
non dimenticare di emettere

  AT H0  

per disattivare nuovamente le intestazioni

Vorrei sapere cosa ci sono le ECU sull'autobus. Qual è il modo più elegante per scoprirlo. Potrei impostare "AT CRA 18DAF10 su 1F" e vedere se qualcuno sta rispondendo e poi filtrare in base alle risposte. Ma quale sarebbe il comando per eseguire il ping dell'Unità? (per CAN 29 bit)
Qualche idea su cosa fare nel caso in cui non sia CAN?


Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...