Chapter 19 of 25·Part IX of XII
Complete Drivetrain PT-CAN Bus Architecture & Frame Bitfield Decoding Matrix
In this page
The BMW Powertrain Controller Area Network (PT-CAN) operates at 500 kbps with standard 11-bit identifiers. Interfacing standalone ECUs, data loggers, or digital dashes requires exact bit-level decoding:
┌──────────────────────────────────────────────────────────────────────────────────────────────────┐
│ BMW PT-CAN BUS (500 KBPS) MASTER ARBITRATION MATRIX │
├───────┬───────────────────┬─────────┬──────────┬─────────────────────────────────────────────────┤
│ CAN ID│ Transmitting Node │ Cycle ms│ Byte Len │ Primary Signals Decoded │
├───────┼───────────────────┼─────────┼──────────┼─────────────────────────────────────────────────┤
│ 0x0A8 │ DME (Engine) │ 10 ms │ 8 Bytes │ Engine Torque, Friction Torque, Driver Demand │
│ 0x0AA │ DME (Engine) │ 10 ms │ 8 Bytes │ Throttle Angle, Brake Status, RPM Error Status │
│ 0x153 │ DSC (Brakes/ABS) │ 20 ms │ 8 Bytes │ Individual Wheel Speeds (FL, FR, RL, RR), VSS │
│ 0x1F0 │ DSC (Brakes/ABS) │ 20 ms │ 8 Bytes │ Traction Intervention Request, Yaw Rate Error │
│ 0x316 │ DME (Engine) │ 10 ms │ 8 Bytes │ Engine Crankshaft RPM, Coolant Temp, Fuel Flow │
│ 0x329 │ DME (Engine) │ 20 ms │ 8 Bytes │ Coolant Temp, Ambient Air Temp, AC Compressor │
│ 0x438 │ EGS (Transmission)│ 10 ms │ 8 Bytes │ Gear Position, Shift in Progress, Torque Cut Req│
│ 0x439 │ EGS (Transmission)│ 10 ms │ 8 Bytes │ Target Gear, Transmission Oil Temp, Fault Bits │
│ 0x545 │ DME (Engine) │ 100 ms │ 8 Bytes │ Check Engine Light (MIL), Cruise Lamp, Oil Temp │
└───────┴───────────────────┴─────────┴──────────┴─────────────────────────────────────────────────┘ 19.1 Detailed Bitfield Layouts for Core Frames
Frame 0x316 (DME o Kombi Instrument Cluster, 10 ms Cadence)
| Byte Offset | Bit Span | Signal Name | Scaling Equation | Units | Notes |
|---|---|---|---|---|---|
| Byte 0 | Bits 0–7 | Status Bitfield | Bitmask | Flags | Bit 0: Terminal 15 On; Bit 1: Starter Active |
| Byte 1 | Bits 0–7 | Engine Temperature | T = Raw × 0.75 - 48.0 | ∘C | Drives analog cluster coolant gauge |
| Byte 2 | Bits 0–7 | Engine RPM (LSB) | RPMext = Word × 0.15625 | RPM | Combined 16-bit Big-Endian Word |
| Byte 3 | Bits 0–7 | Engine RPM (MSB) | (Word: Byte 3 less than less than 8 \ | Byte 2) | RPM |
| Byte 4 | Bits 0–7 | Fuel Consumption (LSB) | Instantaneous Fuel Injection Mass | mg/str | Drives cluster MPG / L/100km gauge |
| Byte 5 | Bits 0–7 | Fuel Consumption (MSB) | (Word: Byte 5 less than less than 8 \ | Byte 4) | mg/str |
| Byte 6–7 | Bits 0–15 | Status Flags | System Diagnostic State | Bitfield | ASC/DSC Handshake Verification |
Frame 0x153 (DSC o DME Vehicle Speed & Wheels, 20 ms Cadence)
| Byte Offset | Bit Span | Signal Name | Scaling Equation | Units | Notes |
|---|---|---|---|---|---|
| Byte 1 | Bits 0–7 | Vehicle Speed (LSB) | V = Word × 0.0625 | km/hext | Average driven wheel speed |
| Byte 2 | Bits 0–7 | Vehicle Speed (MSB) | (Word: Byte 2 less than less than 8 \ | Byte 1) | km/hext |
| Byte 3–4 | Bits 0–15 | Front Left Wheel Speed | V = Word × 0.0625 | km/hext | Raw ABS sensor pulse counter |
| Byte 5–6 | Bits 0–15 | Front Right Wheel Speed | V = Word × 0.0625 | km/hext | Cornering speed calculation |