arduinocan-busnodemcu

Toyota ECU replying 0x03 0x7F 0x01 0x11 to 02 01 00 PID query request from MCP2515 and Nodemcu-32s


i am using mcp2515 with nodemcu-32s and am able to receive the messages which have few ids like 2c4, 2c1, 340 etc on the internet i see 2c4 is for rpm and i have verified it too. My question is that no matter which library i use to request the supported pids (PID query of supported pids) i send a message like this sendmsgbuf(0x7DF, 0 (ext), 8 (len), then data with 02, 01, 00 etc) and then i get a reply like 7E8,03 ( i assume len), 7F(negative res), 01 (for request), 11 (sub function wrong). I want to know that my car dont support requesting pid’s from it? Or is there something else which i dont know. Thanks


Solution

  • So, after searching for many days i got the response for supported PIDS by requesting something like this:
    7DF, 02 21 00
    and the response back from ECU is:
    Standard ID: 0x7E8 DLC: 8 Data: 0x06 0x61 0x00 0xBF 0x9F 0xA8 0x93 0x00

    Which is matching perfectly if i convert bits to binary. To verify, i converted the supported PIDS and sent requests for not supported PIDS and it gives no reply and for supported PIDS it gives the values correctly according to Wikipedia OBD-II PIDS.

    I assume Some or might be all Toyota has mode/service 21 instead of 1. I tried on 2 cars i.e Toyota Mark x (GRX 120 2004), Toyota Vitz 2006 and 02 21 00 worked instead of 02 01 00