How to Interpret the OBD Get Supported PIDs VI

Updated Nov 21, 2019

Reported In

Software

  • Automotive Diagnostic Command Set Toolkit

Driver

  • NI-XNET

Issue Details

I am using the OBD Get Supported PIDs.vi shipping example in the Automotive Diagnostic Command Set Toolkit. I run the VI and it returns an array of booleans that don't make sense to me. How should I be interpreting this output?

Solution

Each query to the ECU gives us a response of 32(=0x20) PIDs. The last bit in the request tells us if the next 32 PIDs are supported/query-able. If this bit is false, no more PIDs are supported/available for query, and the query ends here. The easiest way to understand what the OBD Get Supported PIDs.vi shipping example is doing is to open it up and explore it. You can double click on the ADCS subVIs to open up and explore all but the lowest-level VIs.

If your ECU is not reporting the PIDs that you desire, it's possible that they are not supported or it is reporting a false in the relevant bit location for some other reason. Contact your ECU manufacturer for more information on why certain PIDs are not supported.