I’m trying to get data from an old (1996) Chevrolet Suburban 6.5TD, and after a bit of a hiccup, it started to work. However, I’m having trouble decoding the GM-specific mode 22h data. For example, I found CSVs online that describe the fuel rate measurement as mode 22h, PID 1222h, with the fuel rate being A*0.3125 mm3.
With this goal in mind, I tried sending this command through the console:
obd.send 221222 expect_response=True
This produced the output values:
48 6B 10 7F 22 12 22 12 45
I’m not quite sure how to decode that, but to me the 7Fh seems like the error response described on the OBD-II PIDs Wikipedia page, and the result data doesn’t change with different throttle inputs so it quite obviously isn’t correct.
Should I use some other header except the default 7DFh? If so, how would I determine which one to use?
Based on https://www.fastfieros.com/tech/vpw_communication_protocol.htm I should have a header of 6C10F1h (so the whole query would be 6C 10 F1 22 12 22 01 – I don’t know what that trailing 01 is, either), but the Header field only allows 3 characters.
The Understanding CANBUS/OBD Value Output thread includes a link to the ELM327 documentation, which states that the ELM327 does support AT SH xx yy zz to output three-byte headers. So is this a limitation in the AutoPi Cloud UI (looking at elm327.py, it looks like it doesn’t care about the length of the header), and can it be worked around somehow?