Skip to content
Jeff Verkoeyen edited this page Apr 1, 2025 · 1 revision

ECUs

Naming conventions

From leothelion:

Using 3 series as an example, model codes are indicative of the car's body (independent on what the engine is :devastation:)...

F30 - 328i, 335i, 330i, 340i, 320i, 318d, 316d, 320i and 316i F31 - 328i, 320d, 330d, 320i, 316d, 318d F34 - ? F35 - 316Li, 320Li, 328Li, 335Li

the next G-generation is a bit easier(?) in that every model is available as the other body except for the Ls

G20 - (petrol) 318i, 320i, 320e, 330e, 330i, M340i, and B3 (diesel) 318d, 320d, 330d, M340d, D3 G21 - same as above, but wagon G28 - 320Li, 325Li, 330Li, 320Ld + electric versions go here

ECU communication patterns

The BMW lineup has a unique way of being spoken to. Instead of the standard 7E0, 7E1, etc... pattern of three character ECU header designations used with most other 11-bit CAN-ID systems, BMW uses the extended addressing mode to set the target ECU, which is designated using a two character identifier. Most messages are sent with a header of 6F1.

So for example, to talk to ECU 40, we'd use the following configuration:

ATSH6F1
ATCRA640
ATCEA40

And to talk to ECU 12 we'd do:

ATSH6F1
ATCRA612
ATCEA12

BMW TPMS references

Clone this wiki locally