Reputation: 6568
I'm trying to retrieve data from my Honda C-RV through OBD-II interface and ELM327 dongle.
I can successfully exchange AT commands and PID command. I have only a doubt for the Service 9 0x0A command (ECU names).
My car has 4 ECU so i expect 4 ECU coded in ascii (four lines on RX for each one) but, instead, this is what i receive:
TX: 090A
RX: 18DAF1011017490A01424543 <- first line of ECU1
RX: 18DAF1021017490A01444D43 <- first line of ECU2
RX: 18DAF1061017490A01534743 <- first line of ECU3
RX: 18DAF10E1017490A0150434D <- first line of ECU4
RX: 18DAF10E21002D506F776572 <- second line of ECU4
RX: 18DAF10E22747261696E4374 <- third line of ECU4
RX: 18DAF10E23726C0055555555 <- fourth line of ECU4
Any idea why only one ECU replies with the full name and the others just with the first chars?
Moreover, every time i query their name, the ECU that replies with full name changes. Sometimes is PowerCtrl ECU, sometimes is Engine ECU, sometimes the others....
What i'm doing wrong?
Upvotes: 0
Views: 78
Reputation: 4674
Chances are you have a cheap ELM327 clone. These ones are full of bugs. Some of them don't know about ISOTP flow control. In your case it looks like the adapter can't handle more than one ECU answering with an ISOTP payload and only sends the necessary flow control for the last ECU.
I'd advise trying with another adapter.
Upvotes: 1