OBD-DATA / READING GUIDE

Read a supported-PID bitmap one bit at a time

Mode 01 PID 00 reports support for PIDs 01 through 20 hexadecimal. Its four data bytes form a 32-bit bitmap, with the most significant bit representing the first PID after the queried base.

Start with four data bytes

In a response beginning 41 00 BE 1F A8 13, decode BE 1F A8 13. Bit 31 maps to PID 01, bit 30 to PID 02, and bit 0 to PID 20. In this example PID 01 is advertised and PID 02 is not.

Move through supported ranges

PID 20 is also the continuation indicator for the next support range. Query PID 20 to describe 21–40, PID 40 for 41–60, and so on when supported. Do not use a base-00 interpretation for a base-20 response.

Keep ECU identity and service separate

Different responding modules can advertise different support. Do not combine their bitmap bytes. These tools cover generic Mode 01 PIDs; manufacturer-enhanced identifiers and Mode 02 or UDS messages need their own definitions.

A decoded value is a measurement, not a diagnosis. Encoding limits are not normal operating limits. Confirm vehicle support and the manufacturer’s procedure.

Sources

  1. python-OBD: Mode 01 command table ↗
  2. python-OBD: byte decoding implementation ↗
  3. CSS Electronics: OBD-II PID and response frames ↗
  4. California BAR: OBD test reference ↗

Independent reference; no affiliation with SAE, vehicle manufacturers or regulators. Sources checked 28 October 2026.