MODE 01 · PID 0C
Engine speed
The two data bytes form an unsigned big-endian value before division by four. A and B are not hexadecimal digits of the physical RPM.
- Formula
(256 × A + B) / 4- Data bytes
- 2
- Units
- rpm
A worked decoding example
Request: 01 0C
Response: 41 0C 1A F8
Data: 1A F8 → 1726 rpm
The example shows service, PID and data only. It omits adapter headers, CAN identifier, length and padding. It is not a live vehicle reading.
Reading context
Read both bytes from the same ECU response. Record sample timing when comparing RPM with another channel or the dashboard tachometer.
A decoded value is a measurement, not a diagnosis. Encoding limits are not normal operating limits. Confirm vehicle support and the manufacturer’s procedure.
Byte decoder
Formula(256 × A + B) / 4 → rpm
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
- python-OBD: Mode 01 command table ↗
- python-OBD: byte decoding implementation ↗
- CSS Electronics: OBD-II PID and response frames ↗
- California BAR: OBD test reference ↗
Independent reference; no affiliation with SAE, vehicle manufacturers or regulators. Sources checked 28 October 2026.